MCP 服务器
该项目是针对给定 OpenAPI URL 的 MCP(多代理对话协议)服务器 - https://api.apis.guru/v2/specs/sportsdata.io/golf-v2/1.0/openapi.json ,使用 AG2 的MCP 构建器自动生成。
先决条件
- Python 3.9+
- pip 和 uv
安装
- 克隆存储库:
- 安装依赖项: .devcontainer/setup.sh脚本使用
pip install -e ".[dev]"
来安装依赖项。如果您没有使用 dev 容器,则可以手动运行此命令。或者,您可以使用uv
:
发展
该项目使用ruff
进行 linting 和格式化,使用mypy
进行静态类型检查,使用pytest
进行测试。
代码检查和格式化
要检查 linting 问题:
格式化代码:
这些命令也可以通过scripts/lint.sh脚本获得。
静态分析
运行静态分析(mypy、bandit、semgrep):
该脚本还在.pre-commit-config.yaml中配置为预提交钩子。
运行测试
要运行覆盖测试:
这将运行 pytest 并生成覆盖率报告。如果需要合并报告和清理,可以使用:
预提交钩子
该项目使用.pre-commit-config.yaml中定义的预提交钩子。要安装钩子:
每次提交之前钩子都会自动运行。
运行服务器
MCP 服务器可以通过mcp_server/main.py脚本启动。它支持多种传输模式(例如stdio
、 sse
)。
启动服务器(例如,在 stdio 模式下):
可以使用环境变量来配置服务器:
CONFIG_PATH
:JSON 配置文件的路径(例如mcp_server/mcp_config.json )。CONFIG
:包含配置的 JSON 字符串。SECURITY
:安全参数的环境变量(例如 API 密钥)。
有关如何加载这些内容的详细信息,请参阅mcp_server/main.py中的if __name__ == "__main__":
块。
tests/test_mcp_server.py文件演示了如何以编程方式启动服务器并与之交互以进行测试。
构建和发布
该项目使用 Hatch 进行构建和发布。要构建项目,请执行以下操作:
发布项目:
这些命令也可以通过scripts/publish.sh脚本获得。
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
自动生成的多代理对话协议服务器,可通过 SportsData.io Golf v2 API 与专业高尔夫数据进行交互。
Related MCP Servers
- -securityFlicense-qualityA Multi-Agent Conversation Protocol server that enables interaction with Google Cloud Datastream API for managing data replication services between various source and destination systems through natural language commands.Last updated -Python
- -securityFlicense-qualityA Multi-Agent Conversation Protocol server for interacting with Google Play Game Services Configuration API, allowing management of game configurations through natural language commands.Last updated -Python
- -securityFlicense-qualityA Multi-Agent Conversation Protocol server that enables users to interact with the Redeal.io analytics API through natural language, automatically generated using AG2's MCP builder.Last updated -Python
- -securityFlicense-qualityA Multi-Agent Conversation Protocol server that provides an interface to Google's Cloud IoT API, allowing agents to interact with and manage IoT devices and registries through natural language.Last updated -Python