使用说明
项目简介
本项目 'mcp-server-sandbox' 是一个基于 Model Context Protocol (MCP) 的服务器实现示例。它演示了如何构建一个 MCP 服务器,并通过工具 (Tool) 的形式向 LLM 客户端提供特定的外部功能。本示例中,服务器提供了一个名为 'create_project' 的工具,允许 LLM 客户端通过调用该工具在 Azure DevOps 中创建新的项目。
主要功能点
- MCP 服务器实现: 使用 'fastmcp' 框架搭建 MCP 服务器,处理客户端请求。
- 工具注册与执行: 注册 'create_project' 工具,LLM 客户端可以调用此工具来创建 Azure DevOps 项目。
- Azure DevOps 集成: 通过 'azure-devops-python-api' 库与 Azure DevOps 服务进行交互。
- 环境变量配置: 使用 '.env' 文件加载 Azure DevOps 凭据,保证敏感信息安全。
- 标准输入/输出 (stdio) 传输: 使用 stdio 作为 MCP 服务器与客户端之间的通信方式。
安装步骤
- 克隆仓库
git clone https://github.com/imghosty17/mcp-server-sandbox.git cd mcp-server-sandbox - 安装依赖
确保你的 Python 环境中安装了以下库(如果尚未安装,请使用 'pip' 安装):
pip install fastmcp fastapi uvicorn python-dotenv azure-devops-python-api - 配置环境变量
在项目根目录下创建 '.env' 文件,并填入你的 Azure DevOps 凭据:
请替换 '<你的 Azure DevOps PAT 令牌>' 和 '<你的 Azure DevOps 组织名称>' 为你实际的 Azure DevOps 个人访问令牌和组织名称。AZURE_DEVOPS_DESTINATION_PAT_TOKEN=<你的 Azure DevOps PAT 令牌> AZURE_DEVOPS_DESTINATION_ORGANIZATION=<你的 Azure DevOps 组织名称>
服务器配置
MCP 客户端需要配置以下 JSON 信息以连接到此 MCP 服务器。请注意,这里的配置信息是提供给 MCP 客户端使用的,不是直接在服务器端配置。
{ "server_name": "azure_devops_project_creator", "command": "python", "args": ["main.py"], "transport": "stdio" }
- 'server_name': 服务器的名称,可以自定义,用于在客户端识别不同的 MCP 服务器。
- 'command': 启动 MCP 服务器的命令。这里假设 'python' 命令可以执行,并且 'main.py' 文件位于当前工作目录。
- 'args': 传递给启动命令的参数,这里指定了要运行的 Python 脚本为 'main.py'。
- 'transport': 指定 MCP 服务器使用的传输协议,这里配置为 'stdio',表示使用标准输入输出进行通信。
基本使用方法
-
启动 MCP 服务器 当 MCP 客户端连接并尝试与服务器通信时,服务器将通过 'python main.py' 命令启动。由于配置了 'stdio' 传输,服务器的输入和输出将通过标准输入输出流与客户端进行交互。 用户无需手动单独启动服务器,MCP 客户端会在需要时自动启动。
-
调用 'create_project' 工具 在 MCP 客户端中,可以使用类似以下的 JSON-RPC 请求来调用 'create_project' 工具,以创建一个新的 Azure DevOps 项目:
{ "jsonrpc": "2.0", "method": "call", "params": { "tool": "create_project", "arguments": { "project_name": "your-new-project-name" } }, "id": "1" }请将 '"your-new-project-name"' 替换为你想要创建的项目名称。服务器将执行该工具,并在 Azure DevOps 中创建项目。执行结果将通过 JSON-RPC 响应返回给客户端。
注意: 本示例假设您已安装 Python 环境,并配置了正确的 Azure DevOps 凭据。实际使用时,请根据你的 MCP 客户端的具体使用方式进行操作。
信息
分类
开发者工具