
Api Test Mcp
io.github.thisis-najeeb由 GitHub 账号 thisis-najeeb 发布v1.0.2更新于 Oct 24, 2026
Call the real API and check the response against your OpenAPI spec.
概览
让助手调用真实 API 端点,并按 OpenAPI/Swagger 规范校验响应。
- 可以做什么
- 可从 URL 或本地文件加载并解引用 OpenAPI/Swagger 3.x 规范,列出其中记录的端点。工具会发起真实调用并返回实际状态码、响应头和响应体,按文档中的 JSON schema 校验响应,也可将调用与校验合并为一步测试。还支持对无需参数的 GET 端点做尽力而为的契约测试、探测端点可达性与延迟,以及对比两个规范版本以标记可能的破坏性变更。
- 适用场景
- 适合让助手验证线上或预发 API 是否真的符合规范描述,而不只是阅读文档。也适用于演示前的健康检查、CI 契约检查,以及发布前比较规范版本。
- 运行要求
- 以本地 Node.js 进程运行,通过 npm 包 api-test-mcp 安装(或克隆后用 npm 安装)。未声明需要 API 密钥或环境变量。需要网络访问目标 API 及规范 URL;需要认证的 API 可在每次调用时提供可选的认证预设(bearer、请求头或查询参数中的 apiKey、basic)。
安装
在 SourceWeft 中
- 打开 控制台中的 Api Test Mcp,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
api-test-mcp
[api-test-mcp — call the real API, check it against what the spec promises][CI] [npm version] [npm downloads] [License: MIT]
An MCP server that gives Claude Code, Cursor, Windsurf, or any MCP-compatible AI agent the ability to actually call your API and check the response against what your OpenAPI spec promises — not just read the docs and guess.
No API keys, no config, no cost. Works with any OpenAPI/Swagger 3.x spec (URL or local file).
Why this exists
AI agents are great at reading an OpenAPI spec and writing code against it — but they're guessing about whether the real API actually behaves the way the spec says. This gives an agent (or you, in a normal chat) a way to find out for real: call the live endpoint, and check whether the response actually matches the documented schema.
Install
Add it to your MCP client config, e.g. for Claude Code:
Or in claude_desktop_config.json / Cursor's MCP settings:
Tools
All of the above accept an optional auth preset (bearer, apiKey in a header or query param, or basic) so authenticated APIs aren't limited to hand-building raw headers, and an optional timeoutMs.
Example (what an agent conversation looks like)
You: Load my API spec at
https://api.example.com/openapi.jsonand check whether/users/{id}actually returns what it documents.Agent: (calls
load_api_spec, thentest_endpointwith a real user id) → "Called it — got a 200, but the response is missing thecreated_atfield your spec marks as required, androleis documented as an enum of 3 values but the API returned"superadmin", which isn't one of them."
For an authenticated API:
You: Run a full contract-test pass against my staging API using this bearer token, and include the write endpoints.
Agent: (calls
run_all_testswith{ auth: { type: "bearer", token: "..." }, includeMutating: true }) → "12 passed, 2 failed, 3 skipped.POST /ordersfailed schema validation —total_centscame back as a string, not the integer your spec documents."
Tested against real live traffic
npm test runs three real, unmocked checks, no canned fixtures pretending to be a server:
test/smoke-test.js— loads a spec, makes real HTTPS calls to a live public API, validates the real response, and deliberately feeds in a broken response to confirm validation actually catches mismatches (not just a happy-path check).test/new-features-test.js— auth presets applied to a real outgoing request URL, a real network timeout/abort, a real health-check call, and deterministic offline tests for the spec-diff logic.test/mcp-protocol-test.js— spawns the actual MCP server as a subprocess and talks to it over the real MCP protocol, the same way Claude Code or Cursor would.
CI runs the full suite on every push/PR against Node 18, 20, and 22.
Roadmap
v1.0 shipped contract testing, auth presets, auto-generated example data for mutating endpoints, spec diffing, and health checks. Ideas for what's next:
- YAML output mode / a small CLI wrapper for non-MCP use
- Configurable retry/backoff for flaky endpoints in
run_all_testsandcheck_health - Pattern-aware example generation (respect JSON Schema
patterninstead of a placeholder string) - Persisted health-check history (currently one-shot only)
Contributions welcome — see CONTRIBUTING.md. See an endpoint type or spec quirk this doesn't handle well? Open an issue.
License
MIT
来源:README.md,提交 385e47f
工具
0版本历史
1- v1.0.2最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分