MM

matthewhand/mcp-openapi-proxy

API development

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

158 stars 40 forks Качество 85 Тренд 36MIT

matthewhand/mcp-openapi-proxy — это кандидат MCP-сервера, импортированный из https://github.com/matthewhand/mcp-openapi-proxy.

Обзор

matthewhand/mcp-openapi-proxy — это кандидат MCP-сервера, импортированный из https://github.com/matthewhand/mcp-openapi-proxy.

Обзор (машинный перевод)

mcp-openapi-proxy — это пакет на Python, реализующий сервер Model Context Protocol (MCP), предназначенный для динамического предоставления REST API — определённых спецификациями OpenAPI — в качестве инструментов MCP. Это обеспечивает бесшовную интеграцию API, описанных OpenAPI, в рабочие процессы на базе MCP.

v0.4.0 — с тегом 6 сентября 2026 года; Релиз на GitHub опубликован 15 октября 2026 года (AEDT): MCP SDK 2.x / протокол 2026-07-28, с нативным безсостоятельным стримовым HTTP и поддержкой устаревшего stdio.

Что нового в 0.4.0

MCP 2026-07-28 (SDK 2.x). Прокси работает с двойным стеком: современные клиенты отправляют самостоятельные запросы (нет initialize, нет Mcp-Session-Id) и результаты списка Carry ttlMs / cacheScope. Старые клиенты stdio, которые всё ещё рукопожаты сохраняют работает. Нативный потоковый HTTP доступен с MCP_TRANSPORT=streamable-http И не имеет статуса — балансировка нагрузки по круговой системе не требует сложных сессий.

См. docs/MIGRATION-0.4.md для актуальных изменений, новых Примечания о переходах на окружающую среду и Gateway. 0.3.4 остаётся последним релизом на MCP 1.x ('mcp>=1.2.0, 📄 Полное описание: Кейс верификации — что такое прокси, API + клиентские матрицы и все найденные и исправленные дефекты.

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

mcp-openapi-proxy

mcp-openapi-proxy is a Python package that implements a Model Context Protocol (MCP) server, designed to dynamically expose REST APIs—defined by OpenAPI specifications—as MCP tools. This facilitates seamless integration of OpenAPI-described APIs into MCP-based workflows.

v0.4.0 — tagged September 6, 2026; GitHub Release published October 15, 2026 (AEDT): MCP SDK 2.x / protocol 2026-07-28, with native stateless Streamable HTTP and legacy stdio support.

What’s New in 0.4.0

MCP 2026-07-28 (SDK 2.x). The proxy is dual-stack: modern clients send self-contained requests (no initialize, no Mcp-Session-Id) and list results carry ttlMs / cacheScope. Legacy stdio clients that still handshake keep working. Native Streamable HTTP is available with MCP_TRANSPORT=streamable-http and is stateless — round-robin load balancing needs no sticky sessions.

See docs/MIGRATION-0.4.md for breaking changes, new env vars, and gateway cutover notes. 0.3.4 remains the last release on mcp 1.x (mcp>=1.2.0,<2).

What’s New in 0.2.0

Works with every modern MCP-enabled client we tested. Strict MCP clients can now discover and call tools — the low-level server advertises correct capabilities and no longer crashes during resource/prompt discovery, and a slow spec download no longer crash-loops short-timeout clients. Verified live against the full list of mainstream agent CLIs:

  • ✅ Codex, Gemini, Qwen, Kilocode, opencode — native tool calls over stdio
  • ✅ Vibe — native discovery and read calls (writes were CLI-flaky, not a proxy issue)
  • ✅ Letta — Cloud (via a remote streamable-HTTP MCP URL) and self-hosted (via stdio)

See the client matrix for attach mechanisms, models, and exact results.

📄 Full write-up: Verification case study — what the proxy is, the API + client matrices, and every defect found & fixed.

Prompts and resources are real now — including custom resources. Both MCP surfaces are functional and tested: the summarize_spec / whimsical_blog prompts and the spec_file resource, plus a new ADDITIONAL_RESOURCES env var that serves your own use-case documents (e.g. a NetBox naming policy or an Asana project-layout guide) as MCP resources — see examples/resources/.

Bug fixes (every one live-verified):

  • MCP client discovery: empty capability set + a crash in resource discovery left strict clients seeing zero tools (#23) — fixed, with a full stdio-handshake test harness.
  • IGNORE_SSL_TOOLS was ignored by the low-level dispatcher (#14) — fixed (original patch by @robbycochran, #15).
  • Server crash-loop when a slow spec fetch outran a client’s connect timeout (#28) — handshake now answers immediately, spec loads lazily, closed streams exit cleanly.
Открыть полный README на GitHub

Установка

uvx mcp-openapi-proxy
Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

{ "mcpServers": { "mcp-openapi-proxy": { "command": "uvx", "args": ["mcp-openapi-proxy"], "env": { "OPENAPI_SPEC_URL": "${OPENAPI_SPEC_URL}", "API_KEY": "${API_OPENAPI_KEY}" } } } }