OpenAPI MCP Server
Explore and analyze OpenAPI specifications from local files or remote URLs.
OpenAPI MCP Server
A Model Context Protocol (MCP) server that enables LLMs to explore and understand OpenAPI specifications through structured tools.
Features
- 🔍 Smart API Exploration - Navigate APIs by categories, endpoints, and schemas
- 🚀 Multiple Modes - Run as stdio (for Claude Desktop), HTTP server, or interactive CLI
- 💾 Intelligent Caching - Caches remote OpenAPI specs for faster access
- 🏗️ Multi-Architecture - Supports Linux AMD64 and ARM64
Quick Start
Using Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"openapi": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "OPENAPI_SPEC_URL=https://api.example.com/openapi.json", "ghcr.io/sagenkoder/go-openapi-exploration-mcp-server:latest"]
}
}
}
Or use a local binary:
{
"mcpServers": {
"openapi": {
"command": "/path/to/openapi-mcp-stdio",
"env": {
"OPENAPI_SPEC_URL": "https://api.example.com/openapi.json"
}
}
}
}
Installation
Docker (Recommended)
# Latest (stdio mode)
docker pull ghcr.io/sagenkoder/go-openapi-exploration-mcp-server:latest
# Specific modes
docker pull ghcr.io/sagenkoder/go-openapi-exploration-mcp-server:http
docker pull ghcr.io/sagenkoder/go-openapi-exploration-mcp-server:interactive
Download Binaries
Download from releases:
openapi-mcp-stdio-linux-amd64- MCP stdio modeopenapi-mcp-http-linux-amd64- HTTP server modeopenapi-mcp-interactive-linux-amd64- Interactive CLI mode
Build from Source
# Clone
git clone https://github.com/SagenKoder/go-openapi-exploration-mcp-server.git
cd go-openapi-exploration-mcp-server
# Build all modes
./build.sh
# Or build specific mode
go build -o openapi-mcp-stdio ./cmd/openapi-mcp-stdio
Usage
Environment Variables
OPENAPI_SPEC_URL(required) - URL or file path to OpenAPI specOPENAPI_CACHE_DIR(optional) - Cache directory (default:~/.openapi-mcp-cache)
Stdio Mode (for MCP clients)
# Docker
docker run -i --rm \
-e OPENAPI_SPEC_URL=https://petstore3.swagger.io/api/v3/openapi.json \
ghcr.io/sagenkoder/go-openapi-exploration-mcp-server:latest
# Binary
OPENAPI_SPEC_URL=https://petstore3.swagger.io/api/v3/openapi.json ./openapi-mcp-stdio
HTTP Mode
# Docker
docker run -p 8080:8080 \
-e OPENAPI_SPEC_URL=https://petstore3.swagger.io/api/v3/openapi.json \
ghcr.io/sagenkoder/go-openapi-exploration-mcp-server:http
# Binary
OPENAPI_SPEC_URL=https://petstore3.swagger.io/api/v3/openapi.json ./openapi-mcp-http -addr :8080
Interactive Mode
# Docker
docker run -it --rm \
-e OPENAPI_SPEC_URL=https://petstore3.swagger.io/api/v3/openapi.json \
ghcr.io/sagenkoder/go-openapi-exploration-mcp-server:interactive
# Binary
OPENAPI_SPEC_URL=https://petstore3.swagger.io/api/v3/openapi.json ./openapi-mcp-interactive
Available Tools
The server provides these tools to LLMs:
- list_categories - List API categories based on path segments
- list_endpoints - List endpoints, optionally filtered by category
- show_endpoint - Show detailed endpoint information including parameters and schemas
- get_spec_info - Get general information about the API
- show_schema - Inspect specific schema components
Examples
Local File
OPENAPI_SPEC_URL=/path/to/openapi.yaml ./openapi-mcp-stdio
With Custom Cache
OPENAPI_CACHE_DIR=/tmp/api-cache \
OPENAPI_SPEC_URL=https://api.example.com/openapi.json \
./openapi-mcp-stdio
Docker with Volume Mount
docker run -i --rm \
-v $(pwd)/openapi.yaml:/openapi.yaml:ro \
-e OPENAPI_SPEC_URL=/openapi.yaml \
ghcr.io/sagenkoder/go-openapi-exploration-mcp-server:latest
Development
Project Structure
cmd/
├── openapi-mcp-stdio/ # MCP stdio mode
├── openapi-mcp-http/ # HTTP server mode
└── openapi-mcp-interactive/ # Interactive CLI mode
internal/
├── cache.go # Caching logic
├── handlers.go # MCP tool handlers
├── server.go # Core server logic
└── utils.go # Utilities
Building Docker Images
# Build specific mode
docker build --build-arg MODE=stdio -t my-openapi-mcp:stdio .
# Build all modes
./build.sh docker
License
MIT License - see LICENSE file for details.
Servidores relacionados
Scout Monitoring MCP
patrocinadorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
patrocinadorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Bitrix24 MCP-DEV
The MCP server for Bitrix24 provides AI assistants with structured access to the Bitrix24 API. It delivers up-to-date method descriptions, parameters, and valid values, allowing assistants to work with precise data instead of guesswork. This reduces code errors and accelerates Bitrix24 integration development.
Flutter MCP
Provides real-time Flutter/Dart documentation and pub.dev package information to AI assistants, supporting all packages on demand.
shadcn-vue
An AI agent that helps developers instantly create high-quality UI components for shadcn-vue.
tachibot-mcp
Stop AI Hallucinations Before They Start Run models from OpenAI, Google, Anthropic, xAI, Perplexity, and OpenRouter in parallel. They check each other's work, debate solutions, and catch errors before you see them.
Sugar
Autonomous AI development system for Claude Code with task queue management and workflow automation.
cratesio-mcp
MCP server for querying crates.io - the Rust package registry
ABP.IO MCP Server
An MCP server for ABP.IO that enables AI models to interact with your ABP applications and framework.
godot-mcp-runtime
Playwright MCP for Godot, screenshots, SceneTree manipulation, and arbitrary GDScript execution at runtime through a local UDP bridge.
pabal-store-api-mcp
MCP server that provides App Store / Play Store ASO workflows as tools.
Gateway MCP Server
A gateway server that intelligently routes MCP requests to multiple backend servers based on external configuration.