Openapi Navigator

by mgaruccio

375 downloads
Not rated
GitHub

About

Openapi Navigator is an MCP server that makes OpenAPI specifications easily accessible to AI agents. It loads specs from local files or URLs and allows natural language searching of endpoints and schemas.

Details

Author
mgaruccio
Downloads
375
Categories
Other, API

- Load specs from local files or URLs (OpenAPI 3.x & Swagger 2.x)
- Smart search with fuzzy matching for endpoints and schemas
- Manage multiple API specifications simultaneously
- Preserves $ref structures for agent decision-making
- Fast indexing for instant lookups and searches

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Openapi Navigator
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install the server with uvx openapi-navigator and add the JSON configuration to your MCP client settings. Once connected, use commands like load_spec, search_endpoints, and get_endpoint to explore and query OpenAPI specifications.

load_spec

Load an OpenAPI specification from a local file. Args: file_path: Absolute path to the OpenAPI spec file (YAML or JSON) spec_id: Optional custom identifier for the spec. If not provided, will use 'file:{file_path}' Returns: The spec ID that was assigned to the loaded specification Note: File path must be absolute for security reasons.

load_spec_from_url

Load an OpenAPI specification from a URL. Args: url: URL to the OpenAPI spec (YAML or JSON) spec_id: Optional custom identifier for the spec. If not provided, will use 'url:{url}' Returns: The spec ID that was assigned to the loaded specification

unload_spec

Unload an OpenAPI specification from memory. Args: spec_id: ID of the loaded spec to unload Returns: Confirmation message

list_loaded_specs

List all currently loaded OpenAPI specifications. Returns: List of spec IDs that are currently loaded

get_endpoint

Get the complete operation definition for a specific endpoint. Args: spec_id: ID of the loaded spec to query path: API path (e.g., '/users/{id}') method: HTTP method (e.g., 'GET', 'POST') Returns: The raw operation object from the OpenAPI spec, or None if not found

search_endpoints

Search endpoints using fuzzy matching across paths, summaries, and operation IDs. To get a full list of all endpoints, use an empty string "" or a very short query like "a" as the search term. The search will return all endpoints with a relevance score of 100 when the query is very short. Args: spec_id: ID of the loaded spec to query query: Search query string. Use "" or "a" to get all endpoints. Returns: List of matching endpoints with relevance scores

get_schema

Get a specific schema definition from a loaded OpenAPI specification. Args: spec_id: ID of the loaded spec to query schema_name: Name of the schema to retrieve Returns: The raw schema object from the OpenAPI spec, or None if not found

search_schemas

Search schema names using fuzzy matching. To get a full list of all schemas, use an empty string "" or a very short query like "a" as the search term. The search will return all schemas with a relevance score of 100 when the query is very short. Args: spec_id: ID of the loaded spec to query query: Search query string. Use "" or "a" to get all schemas. Returns: List of matching schema names with relevance scores

get_spec_metadata

Get comprehensive metadata about a loaded OpenAPI specification. This includes information about the spec version, title, description, base path, servers, contact info, license, and counts of endpoints and schemas. Args: spec_id: ID of the loaded spec to query Returns: Dictionary containing spec metadata including base path and help text

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "openapi navigator": {
            "openapi-navigator": {
                "command": "uvx",
                "args": [
                    "openapi-navigator"
                ],
                "env": []
            }
        }
    }
}

McpServers

{
    "openapi-navigator": {
        "command": "uvx",
        "args": [
            "openapi-navigator"
        ],
        "env": []
    }
}

OpenAPI Navigator

Navigate OpenAPI specifications with AI agents - no more manual JSON/YAML parsing!

What it does

OpenAPI Navigator is an MCP server that makes OpenAPI specs easily accessible to AI agents. Load specs from files or URLs, then search endpoints and schemas using natural language queries.

Key features

- Load specs from local files or URLs (supports OpenAPI 3.x & Swagger 2.x) - Smart search - find endpoints and schemas with fuzzy matching - Multiple specs - manage several APIs simultaneously - Reference preservation - maintains $ref structures for agent decision-making - Fast indexing - instant lookups and searches

Perfect for

- API exploration - quickly understand API structure and capabilities - Code generation - extract endpoint/schema info for automated code creation - Documentation - generate comprehensive API docs - Integration planning - discover API features before implementation - Testing - find endpoints and parameters for test automation

Quick start

``json { "mcpServers": { "openapi-navigator": { "command": "uvx", "args": ["openapi-navigator"], "env": {} } } } `

Example workflow

1. Load your API spec:
load_spec("/path/to/api.yaml", "my-api") 2. Find all endpoints: search_endpoints("my-api", "") 3. Search for specific functionality: search_endpoints("my-api", "user authentication") 4. Get endpoint details: get_endpoint("my-api", "/users", "POST") Stop wrestling with OpenAPI JSON/YAML files - let AI agents navigate them for you! 🔗 Install: uvx openapi-navigator` | Docs: GitHub
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.