MCP 服务器
该项目是针对给定 OpenAPI URL 的 MCP(多代理对话协议)服务器 - https://api.apis.guru/v2/specs/nexmo.com/messages-olympus/1.4.0/openapi.json ,使用 AG2 的MCP 构建器自动生成。
先决条件
- Python 3.9+
- pip 和 uv
安装
- 克隆存储库:Copy
- 安装依赖项: .devcontainer/setup.sh脚本使用
pip install -e ".[dev]"
来安装依赖项。如果您没有使用 dev 容器,则可以手动运行此命令。或者,您可以使用Copyuv
:Copy
发展
该项目使用ruff
进行 linting 和格式化,使用mypy
进行静态类型检查,使用pytest
进行测试。
代码检查和格式化
要检查 linting 问题:
Copy
格式化代码:
Copy
这些命令也可以通过scripts/lint.sh脚本获得。
静态分析
运行静态分析(mypy、bandit、semgrep):
Copy
该脚本还在.pre-commit-config.yaml中配置为预提交钩子。
运行测试
要运行覆盖测试:
Copy
这将运行 pytest 并生成覆盖率报告。如果需要合并报告和清理,可以使用:
Copy
预提交钩子
该项目使用.pre-commit-config.yaml中定义的预提交钩子。要安装钩子:
Copy
每次提交之前钩子都会自动运行。
运行服务器
MCP 服务器可以通过mcp_server/main.py脚本启动。它支持多种传输模式(例如stdio
、 sse
)。
启动服务器(例如,在 stdio 模式下):
Copy
可以使用环境变量来配置服务器:
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 进行构建和发布。要构建项目,请执行以下操作:
Copy
发布项目:
Copy
这些命令也可以通过scripts/publish.sh脚本获得。
Related MCP Servers
- -securityAlicense-qualityA lightweight MCP server allowing agents to interact with the WorkOS API for streamlined WorkOS operations through natural language commands.Last updated -3TypeScriptMIT License
- -security-license-qualityA specialized MCP server that enables AI agents to interact with Reddit, including reading posts, creating content, and managing subreddit configurations.Last updated -311TypeScript
- -securityAlicense-qualityAn MCP server that provides integration with Microsoft's AutoGen framework, enabling multi-agent conversations through a standardized interface.Last updated -1PythonMIT License
- AsecurityFlicenseAqualityAn MCP server that enables interaction with Telegram messaging platform, allowing users to retrieve unread messages, fetch entity information, and send messages through natural language interfaces.Last updated -68Python