Token导航 LogoToken导航TokenDH.com
And Prompts logo
开发工具stdio官方级别未说明来源级核验

And Prompts

MCP Server

提供Azure DevOps、Playwright测试和MySQL查询的模型上下文协议(MCP)提示定义,用于自动化开发工作流。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
PowerShell测试自动化PythonVS Code工作流管理VS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

cgjdparashar

提供方

cgjdparashar

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python src/app.py

详细介绍

MCP服务器和提示

此存储库提供 MCP(模型上下文协议)提示定义 用于编排三个MCP服务器生态系统:Azure DevOps、Playwright测试和MySQL查询。这些提示实现了常见开发工作流的自动化,包括工作项管理、端到端测试和数据库操作。

📋 目录

______________________________________________________________________

架构概述

此存储库使用 模型上下文协议(MCP) 通过三个MCP服务器将AI助手(如GitHub Copilot)与外部服务连接起来:

┌─────────────────────────────────────────────────────┐
│          AI Assistant (VS Code + MCP Client)        │
└────────────┬────────────────────────────────────────┘
             │
             ├──► Azure DevOps MCP Server
             │    (Work items, sprints, assignments)
             │
             ├──► Playwright MCP Server
             │    (Browser automation, testing)
             │
             └──► MySQL MCP Server
                  (Database queries, CRUD operations)

关键概念:

  • MCP服务器:公开工具/功能的后端服务
  • 提示:中的可重用自动化脚本 .github/prompts/
  • 参数:配置行为的环境变量或提示参数
  • 工具:MCP服务器暴露的单个操作

______________________________________________________________________

先决条件

1.启用MCP的客户端

您需要一个支持MCP的AI助手或IDE:

  • VS Code 带有GitHub Copilot和MCP扩展
  • 其他MCP兼容客户端(克劳德桌面等)

2.MCP服务器配置

.vscode/mcp.json 该文件配置了三个服务器(Azure DevOps、Playwright、MySQL)。

3.环境变量(Azure DevOps)

Azure DevOps提示所必需的:

  • AZDO_ORG_URL例如。, https://dev.azure.com/your-org
  • AZDO_PROJECT:项目名称
  • AZDO_TEAM:团队名称
  • AZDO_USER_EMAIL:您的电子邮件

可选:

  • AZDO_AREA_PATH, AZDO_WORK_ITEM_TYPES, AZDO_PRIORITY_MIN/MAX, CONFIRM_ASSIGN

4.应用程序结构(Playwright/MySQL)

对于Playwright和MySQL提示:

  • 应用程序必须在 /project/ 文件夹
  • 测试申请代码: /project/src/
  • 工件(截图、痕迹): /project/traces/, /project/screenshots/

______________________________________________________________________

初始设置

步骤1:配置MCP服务器

  1. 打开VS代码 在此存储库中
  2. 安装MCP扩展 如果尚未安装
  3. 验证 .vscode/mcp.json 存在并且配置正确
  4. 重新启动VS代码 加载MCP服务器

出现提示时,提供:

  • Azure DevOps组织:您的组织名称(例如。, contoso)
  • Azure DevOps域:空间分隔域以实现(例如。, core work repositories)

步骤2:设置Azure DevOps环境变量(PowerShell)

使用提供的安装脚本:

# Navigate to repository root
cd "c:\VickyJD\CG\Project\SWE-Project Gen AI\repo\mcp-server-and-prompts"

# Run the setup script
. .\scripts\prompts\set-azure-devops-env.ps1

或手动设置:

$env:AZDO_ORG_URL = "https://dev.azure.com/your-org"
$env:AZDO_PROJECT = "YourProject"
$env:AZDO_TEAM = "YourTeam"
$env:AZDO_USER_EMAIL = "you@example.com"
$env:CONFIRM_ASSIGN = "false"  # Dry-run mode

步骤3:验证应用程序结构(Playwright/MySQL)

确保您的测试应用程序存在:

/project/
├── src/              # Application source code (REQUIRED)
│   ├── app.py        # Example: Flask application
│   ├── templates/    # HTML templates
│   └── README.md     # Application documentation
├── traces/           # Playwright traces (auto-created)
├── screenshots/      # Test screenshots (auto-created)
└── requirements.txt  # Dependencies

______________________________________________________________________

可用提示

Azure DevOps提示

位于 .github/prompts/,这些提示将自动化Azure DevOps工作项管理:

提示文件目的用例
azure-devops-assign-current-sprint-task.prompt.md查找并分配未分配的冲刺工作项自动为自己分配下一个任务
azure-devops-get-task-details.prompt.md获取工作项的详细信息开始工作前查看任务详细信息
azure-devops-update-work-item.prompt.md更新工作项字段(状态、优先级等)更改任务状态,添加注释
implement-work-azure-devops-assign-by-id.prompt.md按ID分配特定工作项直接分配已知任务

剧作家测试提示

提示文件目的用例
playwright-run-flow.prompt.md执行临时测试流而不保存测试文件快速验证用户流
playwright-diagnose-fix-retest.prompt.md分析测试失败,提出修复方案,然后重新运行调试并修复失败的测试

MySQL数据库提示

提示文件目的用例
mysql-run-query.prompt.md执行SQL查询(SELECT、INSERT、UPDATE、DELETE、DDL)查询数据库,修改数据

______________________________________________________________________

如何使用提示-一步一步

🎯 场景1:分配下一个Sprint任务(Azure DevOps)

目标:从当前冲刺中查找并分配优先级最高的未分配任务。

步骤1:设置环境变量

# Run the setup script
. .\scripts\prompts\set-azure-devops-env.ps1

# Or set manually
$env:AZDO_ORG_URL = "https://dev.azure.com/your-org"
$env:AZDO_PROJECT = "MyProject"
$env:AZDO_TEAM = "MyTeam"
$env:AZDO_USER_EMAIL = "you@example.com"
$env:CONFIRM_ASSIGN = "false"  # Start with dry-run

第二步:打开提示

  1. 在VS Code中,打开 .github/prompts/azure-devops-assign-current-sprint-task.prompt.md
  2. 或者通过GitHub Copilot调用:键入 @workspace 并参考提示

步骤3:执行提示

  • 在VS代码聊天:询问“使用azure devops分配当前sprint任务提示符来查找我的下一个任务”
  • AI将:

1. 查询当前冲刺迭代 1. 查找未分配的工作项 1. 按优先级、最近更新和剩余工作排序 1. 返回最佳候选人

第4步:查看模拟运行结果

输出将显示:

{
  "workItem": {
    "id": 12345,
    "title": "Implement login feature",
    "type": "Task",
    "priority": 1,
    "remainingWork": 4,
    "url": "https://dev.azure.com/..."
  },
  "action": "DRY_RUN - Would assign to you@example.com"
}

步骤5:确认分配

如果任务看起来不错:

$env:CONFIRM_ASSIGN = "true"

然后重新运行提示以实际分配任务。

步骤6:验证

查看Azure DevOps以确认:

  • 任务已分配给您
  • 添加了一条评论:“通过MCP提示自动分配”

______________________________________________________________________

🎭 场景2:测试应用程序流(剧作家)

目标:验证仪表板应用程序中的订单创建流程。

步骤1:确保应用程序正在运行

# Navigate to project folder
cd project

# Start the application
python src/app.py
# Application runs at http://localhost:5000

步骤2:验证文件夹结构

确认 /project/src/ 与您的应用程序代码一起存在:

/project/src/
├── app.py
├── templates/
│   └── index.html
└── database.py

步骤3:打开提示

打开 .github/prompts/playwright-run-flow.prompt.md

步骤4:定义测试步骤

在VS Code Chat中,提供参数:

Use playwright-run-flow prompt with these parameters:

BASE_URL: http://localhost:5000
HEADLESS: false
TRACE: true
STEPS:
[
  { "action": "goto", "waitUntil": "networkidle" },
  { "action": "fill", "selector": "#customer_name", "value": "John Doe" },
  { "action": "fill", "selector": "#product", "value": "Laptop" },
  { "action": "fill", "selector": "#quantity", "value": "2" },
  { "action": "click", "selector": "button[type=submit]" },
  { "action": "assert", "assert": { "type": "textContains", "selector": "body", "value": "Order created successfully" } }
]

步骤5:执行测试

AI将:

  1. 分析 /project/src/ 了解应用程序结构
  2. 根据实际的HTML模板验证选择器
  3. 启动浏览器并执行每个步骤
  4. 如果出现以下情况,请截图 TRACE: true
  5. 返回详细结果

第6步:查看结果

{
  "summary": { "totalSteps": 6, "passed": 6, "failed": 0, "elapsedMs": 3245 },
  "results": [
    { "index": 0, "action": "goto", "status": "passed", "durationMs": 1200 },
    { "index": 1, "action": "fill", "status": "passed", "durationMs": 150 }
  ],
  "artifacts": {
    "screenshots": ["/project/screenshots/step-0.png"]
  },
  "finalUrl": "http://localhost:5000/"
}

步骤7:检查工件

如果 TRACE: true,屏幕截图保存到 /project/screenshots/

______________________________________________________________________

🎭 场景3:诊断并修复失败的测试(剧作家)

目标:测试失败,找到根本原因并修复它。

步骤1:运行初始测试

首先使用以下命令运行测试流程 playwright-run-flow.prompt.md (见场景2)

步骤2:捕获故障详细信息

注意故障:

{
  "index": 4,
  "action": "click",
  "selector": "button[type=submit]",
  "status": "failed",
  "message": "Element not found: button[type=submit]"
}

步骤3:打开诊断提示

打开 .github/prompts/playwright-diagnose-fix-retest.prompt.md

步骤4:提供故障上下文

在VS代码聊天中:

Use playwright-diagnose-fix-retest prompt to analyze this failure:

FAILED_STEP: { "action": "click", "selector": "button[type=submit]" }
ERROR: "Element not found: button[type=submit]"
BASE_URL: http://localhost:5000

第五步:人工智能分析

AI将:

  1. 分析 /project/src/templates/ 用于表单结构
  2. 识别正确的选择器
  3. 建议修复:“使用 button.btn-primary 相反,“
  4. 使用正确的选择器自动重新运行测试

步骤6:应用修复

如果使用正确的选择器通过测试:

  • 更新测试定义
  • 或者更新应用程序HTML以保持一致性

______________________________________________________________________

🗄️ 场景4:查询数据库(MySQL)

目标:使用分页从数据库中检索订单。

步骤1:验证MySQL MCP服务器

确认 .vscode/mcp.json 具有MySQL配置和正确的凭据。

第二步:打开提示

打开 .github/prompts/mysql-run-query.prompt.md

步骤3:定义查询

在VS代码聊天中:

Use mysql-run-query prompt to execute:

SQL: SELECT id, customer_name, product, quantity, status, order_date FROM orders WHERE status = 'pending' ORDER BY order_date DESC
LIMIT: 20
OFFSET: 0
READ_ONLY: true

步骤4:执行查询

AI将:

  1. 验证查询是否为只读(SELECT)
  2. 通过MySQL MCP服务器执行
  3. 应用分页
  4. 返回结构化结果

步骤5:查看结果

{
  "meta": {
    "columns": ["id", "customer_name", "product", "quantity", "status", "order_date"],
    "rowCount": 15,
    "limit": 20,
    "offset": 0,
    "elapsedMs": 45
  },
  "rows": [
    [1, "John Doe", "Laptop", 2, "pending", "2025-12-02T10:30:00Z"],
    [2, "Jane Smith", "Mouse", 5, "pending", "2025-12-02T09:15:00Z"]
  ]
}

步骤6:执行写入操作(可选)

对于插入/更新/删除:

Use mysql-run-query prompt:

SQL: UPDATE orders SET status = 'processing' WHERE id = 1
READ_ONLY: false

______________________________________________________________________

🔧 场景5:更新工作项状态(Azure DevOps)

目标:将任务标记为“进行中”并添加注释。

步骤1:获取工作项ID

首先,使用以下命令查找工作项 azure-devops-assign-current-sprint-task.prompt.md 或者从Azure DevOps手动获取。

步骤2:打开更新提示

打开 .github/prompts/azure-devops-update-work-item.prompt.md

步骤3:定义更新

在VS代码聊天中:

Use azure-devops-update-work-item prompt:

WORK_ITEM_ID: 12345
FIELDS: {
  "System.State": "Active",
  "Microsoft.VSTS.Scheduling.RemainingWork": "6"
}
COMMENT: "Started implementation. Estimating 6 hours remaining."

步骤4:执行更新

AI将:

  1. 验证字段名称和值
  2. 通过Azure DevOps MCP服务器更新工作项
  3. 添加评论
  4. 返回更新的工作项详细信息

步骤5:验证

查看Azure DevOps:

  • 状态更改为“活动”
  • 剩余工作更新为6
  • 添加了带有时间戳的评论

______________________________________________________________________

故障排除

Azure DevOps问题

问题:“当前sprint中找不到工作项”

  • 解决方案:

- 验证 AZDO_TEAM 与您的Azure DevOps团队名称完全匹配 - 检查冲刺日期(是否有活动的冲刺?) - 确认迭代路径:运行 set-azure-devops-env.ps1 并验证设置

问题:“身份验证失败”

  • 解决方案:

- 重新运行 .vscode/mcp.json 设置 - 在提示时提供正确的组织名称 - 确保您拥有Azure DevOps访问权限

问题:“分配失败-工作项已分配”

  • 解决方案:该项目已分配给其他人。使用 azure-devops-update-work-item 如果需要,可以重新分配。

剧作家问题

问题:“应用程序代码必须位于/project/src/文件夹中”

  • 解决方案:

- 将您的应用程序移动到 /project/src/ - 确保 /project/src/app.py 或存在等效物 - 检查文件夹结构是否符合要求

问题:“找不到元素”错误

  • 解决方案:

- 使用 playwright-diagnose-fix-retest 提示自动修复 - 验证选择器是否与HTML结构匹配 - 检查应用程序是否在正确的URL上运行

问题:“屏幕截图未保存”

  • 解决方案:

- 确保 /project/screenshots/ 目录存在(必要时创建) - 检查 TRACE: true 在参数中设置 - 验证写入权限

MySQL问题

问题:“连接被拒绝”

  • 解决方案:

- 检查 .vscode/mcp.json MySQL凭据 - 验证数据库服务器是否可访问 - 测试连接: mysql -h HOST -u USER -p

问题:“查询被拒绝-不允许突变”

  • 解决方案:

- 集 READ_ONLY: false 用于插入/更新/删除 - 验证MySQL MCP服务器是否允许写操作 - 检查 ALLOW_INSERT_OPERATION, ALLOW_UPDATE_OPERATION 旗帜在 mcp.json

MCP一般问题

问题:“MCP服务器没有响应”

  • 解决方案:

- 重新启动VS代码 - 检查终端输出是否有MCP服务器错误 - 验证 npx 已安装Node.js

问题:“未找到提示”

  • 解决方案:

- 确保提示文件存在于 .github/prompts/ - 引用时使用完整提示名称 - 重新加载VS代码窗口

______________________________________________________________________

额外资源

  • MCP文件: https://modelcontextprotocol.io
  • Azure DevOps MCP服务器: https://github.com/microsoft/azure-devops-mcp
  • 剧作家MCP服务器: https://github.com/microsoft/playwright-mcp
  • MySQL MCP服务器: https://github.com/benborla29/mcp-server-mysql

______________________________________________________________________

贡献

要添加新提示,请执行以下操作:

  1. 创建 .github/prompts/-.prompt.md
  2. 遵循现有的提示结构(标题、目标、先决条件、说明等)
  3. 记录所有参数和预期输出
  4. 使用MCP客户端进行彻底测试
  5. 用使用说明更新此README

______________________________________________________________________

许可证

有关详细信息,请参阅LICENSE文件。

目录标签

目录标签

PowerShell测试自动化PythonVS Code工作流管理本地部署开发自动化AI辅助开发数据库操作

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP