<img src="https://badge.mcpx.dev" title="MCP"/>
使用FastMCP构建,支持TypeScript。
.env文件,使用{API_NAME}_API_KEY模式petstore_getPet,github_getUser)npm install -g specbridge
mkdir ~/mcp-apis
将任何.json、.yaml或.yml的OpenAPI规范文件放入您的规范文件夹中:
# 示例:下载Petstore规范
curl -o ~/mcp-apis/petstore.json https://petstore3.swagger.io/api/v3/openapi.json
在您的规范文件夹中创建一个.env文件:
# ~/mcp-apis/.env
PETSTORE_API_KEY=your_api_key_here
GITHUB_TOKEN=ghp_your_github_token
OPENAI_API_KEY=sk-your_openai_key
对于Claude Desktop或Cursor,添加到您的MCP配置中:
如果安装在您的机器上:
{
"mcpServers": {
"specbridge": {
"command": "specbridge",
"args": ["--specs", "/path/to/your/specs/folder"]
}
}
}
否则:
{
"mcpServers": {
"specbridge": {
"command": "npx",
"args": ["-y", "specbridge", "--specs", "/absolute/path/to/your/specs"]
}
}
}
# 默认:stdio传输,当前目录
specbridge
# 自定义规范文件夹
specbridge --specs ~/my-api-specs
# HTTP传输模式
specbridge --transport httpStream --port 8080
# 列出所有已加载的规范及其工具
specbridge list
# 列出自定义文件夹中的规范
specbridge list --specs ~/my-api-specs
服务器通过环境变量自动检测认证,使用以下模式:
| 模式 | 认证类型 | 使用 |
|---|---|---|
{API_NAME}_API_KEY | 🗝️ API密钥 | X-API-Key头部 |
{API_NAME}_TOKEN | 🎫 承载令牌 | Authorization: Bearer {token} |
{API_NAME}_BEARER_TOKEN | 🎫 承载令牌 | Authorization: Bearer {token} |
{API_NAME}_USERNAME + {API_NAME}_PASSWORD | 👤 基本认证 | Authorization: Basic {base64} |
{API_NAME}是从您的OpenAPI规范文件名派生出来的:
petstore.json → PETSTORE_API_KEYgithub-api.yaml → GITHUB_TOKENmy_custom_api.yml → MYCUSTOMAPI_API_KEY工具会根据以下模式自动命名:
{api_name}_{operationId}{api_name}_{method}_{path_segments}示例:
petstore_getPetById(来自operationId)github_get_user_repos(从GET /user/repos生成)your-project/
├── api-specs/ # 您的OpenAPI规范文件夹
│ ├── .env # 认证凭证
│ ├── petstore.json # OpenAPI规范文件
│ ├── github.yaml #
│ └── custom-api.yml #
└── mcp-config.json # MCP客户端配置
这是一个最小示例,创建了两个工具:
# ~/mcp-apis/example.yaml
openapi: 3.0.0
info:
title: 示例API
version: 1.0.0
servers:
- url: https://api.example.com
paths:
/users/{id}:
get:
operationId: getUser
summary: 根据ID获取用户
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: 用户找到
/users:
post:
operationId: createUser
summary: 创建新用户
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
email:
type: string
responses:
'201':
description: 用户创建
这将创建名为:
example_getUserexample_createUser确认您的OpenAPI规范有效:
specbridge list --specs /path/to/specs
确保文件具有正确的扩展名(.json,.yaml,.yml)
检查服务器日志中的解析错误
⚠️ 注意:Specbridge在您使用绝对路径(不含空格)作为
--specs参数和其他文件路径时效果最佳。相对路径或包含空格的路径可能在某些平台或某些MCP客户端上引起问题。
.env文件是否位于规范目录中specbridge list
# 克隆并安装
git clone https://github.com/TBosak/specbridge.git
cd specbridge
npm install
# 构建
npm run build
# 在本地测试
npm run dev -- --specs ./examples
欢迎贡献!请随时提交问题和拉取请求。
<p> <a href="https://glama.ai/mcp/servers/@TBosak/specbridge"> <img width="380" height="200" src="https://gips1.baidu.com/it/u=2676256198,4228932645&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Specbridge MCP服务器" /> </a> <a href="https://mseep.ai/app/tbosak-specbridge"> <img src="https://gips1.baidu.com/it/u=3409904541,466746344&fm=3081&app=3081&f=PNG?w=403&h=180"> </a> </p>