Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

mcp-openapi-schema

MCP.Pizza Chef: hannesj

The mcp-openapi-schema is an MCP server that loads and exposes OpenAPI schema files (JSON or YAML) to Large Language Models. It enables LLMs to explore API paths, operations, parameters, and detailed request/response schemas, facilitating deep understanding and interaction with API specifications. It supports searching the entire API spec and returns responses in YAML format for improved LLM comprehension.

Use This MCP server To

Load and expose OpenAPI schemas to LLMs for API exploration Enable LLMs to query API paths and operations dynamically Provide detailed request and response schema information to models Search and retrieve component definitions and examples from API specs Convert OpenAPI schema data into YAML format for LLM readability Support developers in generating API documentation from schema Assist in automated API client generation by exposing schema details

README

OpenAPI Schema Model Context Protocol Server

A Model Context Protocol (MCP) server that exposes OpenAPI schema information to Large Language Models (LLMs) like Claude. This server allows an LLM to explore and understand OpenAPI specifications through a set of specialized tools.

Features

  • Load any OpenAPI schema file (JSON or YAML) specified via command line argument
  • Explore API paths, operations, parameters, and schemas
  • View detailed request and response schemas
  • Look up component definitions and examples
  • Search across the entire API specification
  • Get responses in YAML format for better LLM comprehension

Usage

Command Line

Run the MCP server with a specific schema file:

# Use the default openapi.yaml in current directory
npx -y mcp-openapi-schema

# Use a specific schema file (relative path)
npx -y mcp-openapi-schema ../petstore.json

# Use a specific schema file (absolute path)
npx -y mcp-openapi-schema /absolute/path/to/api-spec.yaml

# Show help
npx -y mcp-openapi-schema --help

Claude Desktop Integration

To use this MCP server with Claude Desktop, edit your claude_desktop_config.json configuration file:

{
  "mcpServers": {
    "OpenAPI Schema": {
      "command": "npx",
      "args": ["-y", "mcp-openapi-schema", "/ABSOLUTE/PATH/TO/openapi.yaml"]
    }
  }
}

Location of the configuration file:

  • macOS/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: $env:AppData\Claude\claude_desktop_config.json

Claude Code Integration

To use this MCP server with Claude Code CLI, follow these steps:

  1. Add the OpenAPI Schema MCP server to Claude Code

    # Basic syntax
    claude mcp add openapi-schema npx -y mcp-openapi-schema
    
    # Example with specific schema
    claude mcp add petstore-api npx -y mcp-openapi-schema ~/Projects/petstore.yaml
  2. Verify the MCP server is registered

    # List all configured servers
    claude mcp list
    
    # Get details for your OpenAPI schema server
    claude mcp get openapi-schema
  3. Remove the server if needed

    claude mcp remove openapi-schema
  4. Use the tool in Claude Code

    Once configured, you can invoke the tool in your Claude Code session by asking questions about the OpenAPI schema.

Tips:

  • Use the -s or --scope flag with project (default) or global to specify where the configuration is stored
  • Add multiple MCP servers for different APIs with different names

MCP Tools

The server provides the following tools for LLMs to interact with OpenAPI schemas:

  • list-endpoints: Lists all API paths and their HTTP methods with summaries in a nested object structure
  • get-endpoint: Gets detailed information about a specific endpoint including parameters and responses
  • get-request-body: Gets the request body schema for a specific endpoint and method
  • get-response-schema: Gets the response schema for a specific endpoint, method, and status code
  • get-path-parameters: Gets the parameters for a specific path
  • list-components: Lists all schema components (schemas, responses, parameters, etc.)
  • get-component: Gets detailed definition for a specific component
  • list-security-schemes: Lists all available security schemes
  • get-examples: Gets examples for a specific component or endpoint
  • search-schema: Searches across paths, operations, and schemas

Examples

Example queries to try:

What endpoints are available in this API?
Show me the details for the POST /pets endpoint.
What parameters does the GET /pets/{petId} endpoint take?
What is the request body schema for creating a new pet?
What response will I get from the DELETE /pets/{petId} endpoint?
What schemas are defined in this API?
Show me the definition of the Pet schema.
What are the available security schemes for this API?
Are there any example responses for getting a pet by ID?
Search for anything related to "user" in this API.

mcp-openapi-schema FAQ

How do I specify which OpenAPI schema file to load?
You provide the schema file path as a command line argument when starting the server, supporting both relative and absolute paths.
What formats of OpenAPI schema files are supported?
The server supports both JSON and YAML formatted OpenAPI schema files.
Can the server search across the entire API specification?
Yes, it includes a search feature to query across all API paths, operations, and components.
How does the server format responses for LLMs?
Responses are provided in YAML format to improve comprehension by language models like Claude, GPT-4, and Gemini.
Is it possible to view examples defined in the OpenAPI schema?
Yes, the server allows lookup of component definitions and examples within the API specification.
Can this server be used to generate API documentation?
While not a documentation generator itself, it exposes detailed schema info that can be used by tools or LLMs to create documentation.
How do I run the server with a default schema file?
Running 'npx -y mcp-openapi-schema' without arguments loads the default 'openapi.yaml' in the current directory.
Does the server support multiple LLM providers?
Yes, it is designed to work with various LLMs including Claude, GPT-4, and Gemini by exposing structured API schema context.