agent-openapi-mcp
Allows loading and interacting with any REST API described by an OpenAPI (Swagger) specification. Provides tools to load specs, list operations, call endpoints, and search operations.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@agent-openapi-mcpLoad Petstore API spec and list operations with tag 'pet'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
agent-openapi-mcp
Live OpenAPI runtime proxy — call any REST API from Claude, Cursor, or any MCP client without writing wrapper code.
The Problem
Every time you want Claude to interact with a REST API, you have to:
Write a custom MCP server (2-3 hours of boilerplate)
Deploy it
Maintain it forever
Static generators like MCPForge require code gen + deploy — one-time, not live.
This server is the missing runtime layer. Point it at any OpenAPI spec URL — it handles everything at request time.
Related MCP server: mcpgate
Quick Start
Add to your MCP config (claude_desktop_config.json, .cursor/mcp.json, etc.):
{
"mcpServers": {
"openapi": {
"url": "https://agent-openapi-mcp.onrender.com/mcp"
}
}
}That's it. Now ask Claude:
"Load the Petstore API spec from https://petstore3.swagger.io/api/v3/openapi.json and list all the pet operations"
MCP Tools
openapi_load_spec
Load and cache an OpenAPI spec by URL. Returns a summary.
spec_url: "https://petstore3.swagger.io/api/v3/openapi.json"
cache_ttl: 300 # seconds (default 300, max 3600)Returns: { spec_id, title, version, base_url, operation_count, tags, servers }
openapi_list_operations
List all operations in a spec (auto-loads if not cached).
spec_url: "https://petstore3.swagger.io/api/v3/openapi.json"
tag: "pet" # optional filter
method: "GET" # optional filterReturns array of { operation_id, method, path, summary, tags, parameters, request_body }
openapi_call_endpoint
Execute a specific API endpoint. This is the core tool.
spec_url: "https://petstore3.swagger.io/api/v3/openapi.json"
operation_id: "getPetById"
path_params: '{"petId": "1"}'
query_params: '{"limit": "10"}'
body: '{"name": "doggie"}'
headers: '{"Authorization": "Bearer token123"}'
timeout: 30Returns: { status_code, headers, body, elapsed_ms, url, method }
openapi_search_operations
Keyword search across operation summaries and descriptions.
spec_url: "https://petstore3.swagger.io/api/v3/openapi.json"
query: "find pets by status"Returns ranked list of matching operations.
Example Conversation
You: Load https://petstore3.swagger.io/api/v3/openapi.json and find all operations
related to "inventory"
Claude: [calls openapi_load_spec, then openapi_search_operations]
Found 1 operation: getInventory — GET /store/inventory
"Returns pet inventories by status"
You: Call it
Claude: [calls openapi_call_endpoint with operation_id="getInventory"]
Status 200 — {"available": 847, "sold": 42, "pending": 3}REST API
The server also exposes a REST API at /api/v1/*:
Endpoint | Method | Description |
| POST | Load and cache a spec |
| POST | List operations |
| POST | Execute an endpoint |
| POST | Search operations |
| GET | Health check |
| GET | Swagger UI |
Example REST call
curl -X POST https://agent-openapi-mcp.onrender.com/api/v1/load-spec \
-H "Content-Type: application/json" \
-d '{"spec_url": "https://petstore3.swagger.io/api/v3/openapi.json"}'Self-Hosting with Docker
docker build -t agent-openapi-mcp .
docker run -p 8080:8080 \
-e PUBLIC_HOST=localhost:8080 \
agent-openapi-mcpThen use http://localhost:8080/mcp as your MCP URL.
Environment Variables
Variable | Default | Description |
|
| Public hostname |
|
| Port to listen on |
| (none) | Enable x402 micropayment paywall |
Supported Spec Formats
OpenAPI 3.x (JSON and YAML)
Swagger 2.x (JSON and YAML)
Any publicly accessible URL
Rate Limits
Free tier: 100 requests per IP per day
Paid: Include
X-Paymentheader (x402 micropayments)
Development
git clone https://github.com/aparajithn/agent-openapi-mcp
cd agent-openapi-mcp
pip install -e ".[dev]"
# Run tests
pytest tests/ -v
# Run locally
uvicorn src.main:app --reload --port 8080License
MIT © aparajithn
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A managed runtime for custom API integrations. Manage lines, endpoints, keys, logs and DLQ via MCP.
MCP server for AI access to Swagger by SmartBear.
Governed MCP gateway: one endpoint for your tools, with credential custody and audit log.
Query, browse, and automate OmegaAI workspaces from any MCP client. Streamable HTTP with OAuth 2.0.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA dynamic proxy that converts OpenAPI Specification (OAS) endpoints into Message Communication Protocol (MCP) tools, allowing AI agents to use existing REST APIs as if they were native MCP tools without manual implementation.16-
- AlicenseNot gradedqualityCmaintenanceA stateless gateway that turns any OpenAPI spec into MCP tools on the fly.1MIT
- FlicenseNot gradedqualityCmaintenanceMCP server that wraps any REST API with an OpenAPI spec, dynamically creating MCP tools at runtime without code generation.12-
- AlicenseNot gradedqualityCmaintenanceRuntime MCP server that dynamically bridges any OpenAPI 3.x spec to MCP tools.13MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/aparajithn/agent-openapi-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server