使用说明
鸢尾
Iris是一个模型上下文协议(MCP)服务器,它动态地将OpenAPI规范转换为可执行的MCP工具。这允许AI代理(如Claude或Gemini)与任何提供OpenAPI定义的REST API交互。
特性
- OpenAPI到MCP:自动从指定的URL获取OpenAPI文档,并将端点转换为MCP工具。
- 多种服务:支持同时连接多个OpenAPI服务。
- 柔性运输:支持HTTP(流式传输)、SSE和Stdio传输。
入门指南
先决条件
- 紫外线 (Python包管理器)安装在您的系统上。
安装
- 同步依赖关系:
uv sync
用法
运行服务器
服务器需要 SERVERS_COUNT 和相应 SERVERS{i}_OPENAPI_URL 设置环境变量以指向一个或多个OpenAPI JSON定义。
快速启动(开发模式)
使用示例Petstore API(定义于 pyproject.toml):
uv run dev
手动执行
您可以指定自己的OpenAPI模式:
SERVERS_COUNT=1 SERVERS0_OPENAPI_URL=https://petstore3.swagger.io/api/v3/openapi.json uv run server.py
配置
您可以使用环境变量配置服务器:
SERVERS_COUNT:(必填)您要连接的OpenAPI服务器的数量(例如。,2).SERVERS{i}_OPENAPI_URL:(必填)索引的OpenAPI JSON定义的URLi,从0(例如。,SERVERS0_OPENAPI_URL=https://api.example.com/openapi.json).URL_MATCH_FOR_NON_AUTH:(可选)路径段(例如。,/auth)如果适用,这应该绕过全局身份验证标头。PORT:运行服务器的端口(默认值:8000).mcp.transport:运输方式。选项:streamable-http(默认),sse,stdio.
检查工具
您可以使用MCP检查器来测试这些工具。
使用便利脚本:
uv run inspector-streamable-http
或手动:
npx @modelcontextprotocol/inspector http://localhost:8000/mcp
项目结构
server.py:MCP服务器的入口点。src/:包括OpenAPI处理逻辑的源代码。pyproject.toml:项目依赖关系和脚本。
