MCP API Translator
概要
作者による説明(英語の原文)
Turn OpenAPI / Postman specs into runnable MCP servers, or serve any API as live MCP tools.
PopNx MCPの3つの柱
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
- 利用者の声iレビューはまだありませんレビューは今後のステップで、アカウント機能と一緒に始まります
- 私たちの基本チェックi2項目中2項目に合格公開情報からチェック。コードはまだスキャンしていません
- 利用状況iとても新しい↓ 61/週 · ★ 1
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: パソコンで動く
- トランスポート: stdio
- カテゴリ: 開発者ツール
インストール
使っているAIアプリを選んで、設定をコピーしてください。
インストールの前に
- 基本チェック:2項目中2項目に合格
- あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
- レジストリには、入力が必要なキーは載っていません。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"api-translator": {
"command": "npx",
"args": [
"-y",
"mcp-api-translator"
]
}
}
}ターミナルでこれを実行します
claude mcp add api-translator -- npx -y mcp-api-translatorまたは、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"api-translator": {
"command": "npx",
"args": [
"-y",
"mcp-api-translator"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"api-translator": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-api-translator"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
使えるアプリ
このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。
パソコン上で動かせるアプリ
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
できること
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月11日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名は、リポジトリを所有するGitHubアカウント krishgok で確認済みです
- ✓ 合格
今もメンテナンスされている
コードの最終更新:24 日前
- … 未チェック
ライセンスがある
このリポジトリはまだGitHubから読み取っていません
- – 対象外
エンドポイントが応答する
これはパソコンで動くため、インターネット上のエンドポイントはありません
- – 対象外
OAuthでサインイン
パソコンで動き、代わりにローカルの設定を使います
- … 未チェック
ツールの説明に隠れた指示がない
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
開発者ツールのほかのサーバーとの比較i
- このカテゴリのほかの5739件のうち65%よりスターが多い
- このカテゴリのほかの5739件のうち50%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの5739件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
MCP API Translatorは安全ですか?
当てはまる基本チェック2項目のうち2項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は24 日前、最新バージョン(0.4.1)がレジストリに届いたのは31 日前です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
代わりに使えるものは?
同じカテゴリには:REA, Netdata, Front-End Checklist
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Netdata
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Front-End Checklist
Review frontend code and live pages against 386 quality-gated web development rules.
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
mcp-api-translator
An MCP server that generates MCP servers. Give it an API definition — OpenAPI 3.0/3.1 or a Postman collection — and it scaffolds a complete, runnable, _ownable_ TypeScript or Python MCP server for that API.
_Above: curating Firecrawl's 20 operations down to 6, appending the Gmail API to the same server, then an agent calling the self-hosted result. Counts, tool names and paths come from real runs against the published Firecrawl and Gmail descriptions; the API responses are illustrative — the recording runs against a local stub, not live Firecrawl or Gmail accounts._
Why this and not a 1:1 generator
Turning an OpenAPI spec into MCP "tool stubs" is not novel — FastMCP's from_openapi, Speakeasy/Gram, and several openapi-mcp-generator projects already do the mechanical part. A naive endpoint→tool generator has no real advantage. This project focuses on the parts those tools skip:
1. Curation, not just generation. A 200-endpoint API naively becomes 200 tools, which wrecks a model's tool-selection accuracy and blows out context. analyze_spec previews the tool list before anything is written, every command takes includeTags / methods / pathGlob / excludeOperations, and you get a warning when a server grows past 40 tools.
2. Aggregation via append. extend_mcp_server adds another API's tools to an existing project, so you can build one MCP server spanning Firecrawl + Gmail + your internal API. Credentials stay separate: each API also reads namespaced env vars derived from its title.
3. An artifact you own. Output is a normal project, not a hosted black box — readable per-tool files, env-based auth, a Dockerfile, and a server.json plus client snippets for publishing to the official MCP Registry.
If you only need throwaway, in-memory exposure of one API and don't care about owning the code, FastMCP's runtime mode may suit you better — that's a deliberate non-goal here.
Install
No install step. npx fetches and runs the latest published version — cross-platform, Node 20+.
Claude Code
Claude Code does not read claude_desktop_config.json — it keeps its own MCP config:
claude mcp add api-translator -- npx -y mcp-api-translator
That registers it at local scope. Use -s user for all your projects, or commit a project-scoped .mcp.json to share it. Verify with claude mcp list.
Claude Desktop
Add to claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": { "api-translator": { "command": "npx", "args": ["-y", "mcp-api-translator"] } } }
Cursor, Cline, Continue.dev, Docker
Cursor — ~/.cursor/mcp.json (or project-scoped .cursor/mcp.json), same mcpServers shape as Claude Desktop above.
Cline (VS Code) — sidebar → MCP Servers → Configure, same shape plus "disabled": false.
Continue.dev — ~/.continue/config.json, under experimental.modelContextProtocolServers, as a { transport: { type: "stdio", command, args } } entry.
Docker (no Node required):
{
"mcpServers": { "api-translator": { "command": "docker", "args": ["run", "--rm", "-i", "ghcr.io/krishgok/mcp-api-translator:latest"] } } }
To read specs from disk or write projects to a host path, mount the directory with -v ${PWD}:/workspace and pass /workspace/... as specPath / outputDir.
MCP config is read at startup, so restart your client — quit and reopen Claude Desktop, Cursor, …, or start a new session in Claude Code.
The four tools
| Tool | What it does |
|---|---|
analyze_spec | Parse a spec and preview the tools that would be generated — no files written. |
generate_mcp_server | Generate a complete MCP-server project into outputDir. |
extend_mcp_server | Append another spec's tools to an existing project (idempotent). |
list_supported_features | Report supported formats, auth schemes, transports, and limits. |
All spec inputs accept inline text (spec) or a local path (specPath), JSON or YAML.
Usage
You don't call the tools by hand — you ask your agent, and it drives them.
1. Preview, then curate. See what a spec becomes before writing anything:
_"Analyze ./petstore.yaml and show me the proposed tools."_
_"Only the GET endpoints under /pets."_
analyze_spec({ specPath: "./petstore.yaml" });
// → proposed tool list, auth scheme, and the env vars the server will need
analyze_spec({ specPath: "./petstore.yaml", methods: ["GET"], pathGlob: "/pets/**" }); // also: includeTags: ["pets"], excludeOperations: ["deletePet"]
2. Generate, with the same filters plus an output directory:
generate_mcp_server({ specPath: "./petstore.yaml", outputDir: "./petstore-mcp" });
// options: language: "python", transport: "http", auth: {...}, force: true
3. Aggregate — add more APIs to the same server:
// any second API — the sources don't have to share a format or a vendor
extend_mcp_server({ projectDir: "./petstore-mcp", specPath: "./billing.postman.json", includeTags: ["invoices"], }); // idempotent; hand-edited tool files are preserved
Aggregated APIs don't share credentials: each also reads namespaced env vars ( _API_BASE_URL, _API_KEY, … — namespace derived from the API title) before falling back to the bare ones. The extend summary and .env.example list the exact names.
4. Run it. The output is a normal project you own:
cd petstore-mcp && npm install && npm run build
cp .env.example .env # set API_BASE_URL + credentials (never embedded in code) npm start
Register it with your client using the generated client-config.md, and your agent can call the APIs directly.
Full walkthrough with sample outputs and troubleshooting: [docs/usage-workflow.md](docs/usage-workflow.md).
Generate, or serve
- Generate ownable code when you want a project you can hand-edit, self-host, and own — in TypeScript (default) or Python (
language: "python"). - Serve a live runtime proxy when you just want an API exposed to an agent now, with no generated files to build or maintain:
mcp-api-translator serve --spec ./api.yaml
mcp-api-translator serve --spec ./a.yaml --spec ./b.yaml --methods GET,POST # aggregate
serve runs the same request plan and env-based auth the generator emits, so behavior matches generated output exactly — it just skips the codegen step. It speaks stdio by default, or stateless Streamable HTTP with --transport http --port 3000. Logs are structured JSON lines on stderr in containers, readable text on a TTY (LOG_LEVEL, LOG_FORMAT).
Documentation
| Doc | What's in it |
|---|---|
| usage-workflow.md | End-to-end walkthrough, curation loop, auth setup, troubleshooting. |
| design.md | Tech stack, generated project layout, limitations, security model. |
| deploy-serve.md | Docker/compose recipes for serve, logging and observability. |
| serve-api-proposal.md | Design of the runtime proxy and the roadmap. |
| market-analysis.md | Why both generate and serve models exist. |
| CONTRIBUTING.md | Dev setup, PR conventions, DCO sign-off. |
Known limits at a glance:
- Inputs: OpenAPI 3.0/3.1 and Postman v2.1 (Swagger 2.0 best-effort). GraphQL and gRPC aren't supported.
- Auth: no interactive OAuth consent flow yet for the OpenAPI/Postman APIs it does support; planned as R6.
- Responses: no upstream streaming or auto-pagination.
- Output quality tracks spec quality.
Details and the security model: docs/design.md.
Development
npm install
npm test # unit + integration (parsers, curation, emit, append) npm run typecheck npm run build npm run e2e # generate a sample project from the fixtures into build/e2e-out
Contributions welcome — see CONTRIBUTING.md. All commits must be signed off under the Developer Certificate of Origin (git commit -s).
License
mcp-api-translator is dual-licensed — © 2026 krishgok. Full details in LICENSING.md.
- Open source: GNU AGPL-3.0-or-later. Running a modified version as a network service requires offering that version's complete source to its users.
- Commercial: a separate license is available for embedding in proprietary products without AGPL obligations.
- Your generated output is yours. Projects produced by this tool are covered by a generated-output exception and are not subject to the AGPL.
Redistributions must retain LICENSE and NOTICE. The licenses do not grant the right to use the "mcp-api-translator" name to endorse or promote forked or derivative works without prior written permission.