openapi-to-mcp
MCP Scribe
Transcribe cualquier esquema OpenAPI en un servidor MCP de nivel de producción.
Related MCP server: Any API MCP Server
Descripción general
Apunta MCP Scribe a un esquema OpenAPI. Obtén un servidor MCP.
Cada operación de la especificación se convierte en una herramienta que un modelo puede invocar, con el JSON Schema, las credenciales, los reintentos, la limitación de velocidad y el modelado de respuestas ya gestionados. No hay código generado que mantener ni capa de adaptación que sincronizar: la especificación es la fuente de verdad y el servidor se deriva de ella al arrancar.
MCP Scribe está diseñado para equipos que exponen APIs reales a modelos de lenguaje, donde los modos de fallo que importan son la fuga de credenciales, los reintentos descontrolados contra un endpoint facturable y superficies de herramientas demasiado grandes para que un modelo pueda navegarlas.
Instalación
pip install mcp-scribeDesde el código fuente, como CLI global:
git clone https://github.com/kyegomez/mcp-scribe && cd mcp-scribe
uv tool install --editable ".[http]"El extra http instala uvicorn y starlette, necesarios solo para el transporte HTTP. Un servidor stdio no necesita ninguno de los dos.
Requisitos: Python 3.10 – 3.13.
Inicio rápido
Desplegar un servidor compartido
Un solo comando. Especificación dentro, servidor arriba.
mcp-scribe deploy https://api.swarms.world/openapi.json --port 8000Llamar a ese servidor
import asyncio
import os
import sys
from dotenv import load_dotenv
from mcp import ClientSession
from mcp.client.streamable_http import streamable_http_client
from mcp.shared._httpx_utils import create_mcp_http_client
load_dotenv()
# Streamable HTTP path defaults to /mcp (see transport.path).
MCP_URL = "http://127.0.0.1:8000/mcp"
async def main() -> None:
api_key = os.environ.get("SWARMS_API_KEY")
if not api_key:
sys.exit(
"set SWARMS_API_KEY first: export SWARMS_API_KEY=sk-..."
)
http = create_mcp_http_client(headers={"x-api-key": api_key})
async with http, streamable_http_client(
MCP_URL, http_client=http
) as (read, write), ClientSession(read, write) as session:
await session.initialize()
result = await session.call_tool(
"get_available_models_v1_models_available_get",
{},
)
print(result.content[0].text)
if __name__ == "__main__":
asyncio.run(main())
Comandos CLI
Usage: mcp-scribe [OPTIONS] COMMAND [ARGS]...
Turn any OpenAPI schema URL into a production-grade MCP server.
Options:
--help Show this message and exit.
Commands:
serve Run the MCP server.
deploy Serve over HTTP with production defaults. The short path to a shared server.
inspect Show the tools a spec produces — the fastest way to validate a setup.
call Invoke one tool from the terminal — the same code path the server uses.
generate Write a self-contained, deployable MCP server project for a spec.
install Build the server and register it with your MCP client in one step.
version Print the version.
Capacidades clave
Capacidad | Qué ofrece |
Ingesta universal de especificaciones | OpenAPI 3.1, 3.0 y Swagger 2.0 desde una URL, archivo o stdin, en JSON o YAML. Swagger 2.0 se convierte de antemano; los |
Generación de herramientas sin código | Una herramienta MCP por operación, emitida como JSON Schema 2020-12 con la matriz completa |
Aislamiento de credenciales | Los parámetros de credenciales declarados en la especificación se eliminan de los esquemas de herramientas y se inyectan en el momento de la solicitud. Al modelo nunca se le pide que produzca un secreto que no posee. |
Autenticación empresarial | Clave API (cabecera, consulta, cookie), bearer, HTTP basic, credenciales de cliente OAuth2 con renovación automática y cabeceras estáticas arbitrarias: todo componible y aplicado por solicitud. |
Aislamiento multiinquilino | Paso de credenciales por llamante con lista blanca de cabeceras y aplicación de cierre ante fallos, de modo que un servidor compartido no significa una identidad compartida ni una factura compartida. |
Resiliencia por defecto | Retroceso exponencial con jitter completo que respeta |
Reintentos seguros por defecto | POST y PATCH nunca se reintentan a menos que se habiliten explícitamente. Reenviar una solicitud facturable se considera peor que fallar. |
Control de la superficie de ataque | Filtra por etiqueta, regex de ruta, método u |
Gobernanza del contexto | Las respuestas se truncan a un presupuesto configurable con una pista que indica al modelo cómo acotar la solicitud. |
Transporte dual | stdio para servidores personales por usuario; HTTP transmisible con una sonda |
Higiene de secretos | Archivos |
Herramientas operativas |
|
Artefactos desplegables |
|
Documentación
Documento | Contenido |
Guía de usuario completa: modelo mental, transportes, credenciales, multiinquilinato, filtrado, modelado de esquemas, fiabilidad, depuración, despliegue y resolución de problemas. | |
Referencia exhaustiva: todos los comandos y banderas de CLI, todas las claves de configuración con tipos y valores predeterminados, la tabla completa de variables de entorno, la API de Python y la jerarquía de excepciones. | |
Guía para colaboradores y agentes: comandos, arquitectura módulo por módulo, invariantes estructurales, convenciones y trampas. | |
Definición de habilidad de agente: cómo un agente autónomo debe elegir comandos, validar configuraciones y gestionar credenciales. |
Licencia
Apache-2.0. Consulta LICENSE.
Citación
@misc{mcpscribe2026,
title = {mcp-scribe: production-grade MCP servers from OpenAPI schemas},
author = {Gomez, Kye},
year = {2026},
url = {https://github.com/kyegomez/mcp-scribe}
}@misc{mcp2024,
title = {Model Context Protocol},
author = {Anthropic},
year = {2024},
url = {https://modelcontextprotocol.io}
}This server cannot be deployed
Maintenance
Related MCP Connectors
The OpenRouter for tools. One MCP connection gives any AI agent 254 hosted tools, pay per call.
Point Gecko at an OpenAPI spec; get first-call-correct, auth-hidden agent tools.
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
Discover and call 10,000+ production APIs from one MCP server. Pay-per-call billing for AI agents.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAutomatically converts any OpenAPI specification into an MCP server, exposing all HTTP endpoints as callable tools with support for various authentication methods and request types.2-
- FlicenseNot gradedqualityDmaintenanceDynamically converts any API with an OpenAPI v3 specification into MCP tools for AI assistants. It supports multiple authentication methods including OAuth2, Bearer tokens, and API keys for flexible integration.-
- AlicenseNot gradedqualityBmaintenanceTurns any OpenAPI/Swagger API into MCP tools, enabling AI assistants to call REST API endpoints directly.2MIT
- FlicenseNot gradedqualityDmaintenanceDynamically exposes any OpenAPI/Swagger API as tools for AI assistants, automatically generating MCP tools from OpenAPI specs with authentication support.-