openapi-slice-mcp


Nameopenapi-slice-mcp JSON
Version 0.1.1 PyPI version JSON
download
home_pageNone
SummaryMCP server that extracts relevant portions of OpenAPI specs for specific endpoints, reducing context size when working with large API specifications
upload_time2025-07-29 21:44:39
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseMIT
keywords mcp openapi api
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # OpenAPI Slice MCP Server

An MCP (Model Context Protocol) server that helps you work with large OpenAPI specifications by extracting only the relevant portions for specific endpoints. This is particularly useful when working with LLMs that have context limitations - instead of loading an entire large OpenAPI spec, you can extract just the parts you need for a specific endpoint.

## Features

- **Endpoint-specific extraction**: Get minimal OpenAPI specs containing only the requested endpoint and its dependencies
- **Automatic dependency resolution**: Recursively finds and includes all referenced components (schemas, parameters, etc.)
- **Multiple formats**: Output in YAML or JSON format
- **File support**: Load OpenAPI specs from local YAML or JSON files
- **Remote support**: Fetch OpenAPI specs directly from URLs (HTTP/HTTPS)
- **Discovery tools**: List all available endpoints in a loaded specification

## Tools

The server provides the following MCP tools:

- `load_openapi_spec(file_path: str)` - Load an OpenAPI specification from a local YAML or JSON file
- `load_openapi_spec_from_url(url: str, timeout: int = 30)` - Load an OpenAPI specification from a remote URL
- `list_endpoints()` - List all available endpoints in the currently loaded specification
- `extract_endpoint_slice(path: str, method: str, output_format: str = "yaml")` - Extract a minimal spec slice for a specific endpoint
- `get_server_status()` - Get the current status of the server

## Usage

### Running the Server

```bash
uvx openapi-slice-mcp
```

The server runs using the STDIO transport and can be integrated with any MCP client.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "openapi-slice-mcp",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": null,
    "keywords": "mcp, openapi, api",
    "author": null,
    "author_email": "OpenAPI Slice MCP <maciek@ultraview.pl>",
    "download_url": "https://files.pythonhosted.org/packages/dc/fa/807472df8c62e2eaf4d2099ea96073a4df23c8e83aefab8cfd1887bfad09/openapi_slice_mcp-0.1.1.tar.gz",
    "platform": null,
    "description": "# OpenAPI Slice MCP Server\n\nAn MCP (Model Context Protocol) server that helps you work with large OpenAPI specifications by extracting only the relevant portions for specific endpoints. This is particularly useful when working with LLMs that have context limitations - instead of loading an entire large OpenAPI spec, you can extract just the parts you need for a specific endpoint.\n\n## Features\n\n- **Endpoint-specific extraction**: Get minimal OpenAPI specs containing only the requested endpoint and its dependencies\n- **Automatic dependency resolution**: Recursively finds and includes all referenced components (schemas, parameters, etc.)\n- **Multiple formats**: Output in YAML or JSON format\n- **File support**: Load OpenAPI specs from local YAML or JSON files\n- **Remote support**: Fetch OpenAPI specs directly from URLs (HTTP/HTTPS)\n- **Discovery tools**: List all available endpoints in a loaded specification\n\n## Tools\n\nThe server provides the following MCP tools:\n\n- `load_openapi_spec(file_path: str)` - Load an OpenAPI specification from a local YAML or JSON file\n- `load_openapi_spec_from_url(url: str, timeout: int = 30)` - Load an OpenAPI specification from a remote URL\n- `list_endpoints()` - List all available endpoints in the currently loaded specification\n- `extract_endpoint_slice(path: str, method: str, output_format: str = \"yaml\")` - Extract a minimal spec slice for a specific endpoint\n- `get_server_status()` - Get the current status of the server\n\n## Usage\n\n### Running the Server\n\n```bash\nuvx openapi-slice-mcp\n```\n\nThe server runs using the STDIO transport and can be integrated with any MCP client.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "MCP server that extracts relevant portions of OpenAPI specs for specific endpoints, reducing context size when working with large API specifications",
    "version": "0.1.1",
    "project_urls": {
        "Homepage": "https://github.com/vvarp/openapi-slice-mcp",
        "Repository": "https://github.com/vvarp/openapi-slice-mcp"
    },
    "split_keywords": [
        "mcp",
        " openapi",
        " api"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9d996f9801d74b1d7801bc1f92a1bffd58abbddccd82e0c0ce2091a2779f2bdd",
                "md5": "7a47e9febb7479b851f91cf033fdd369",
                "sha256": "cdcb1e95edfdb47c85250f50cf8a334931bc5e750e7743228c81abffe4aa5634"
            },
            "downloads": -1,
            "filename": "openapi_slice_mcp-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7a47e9febb7479b851f91cf033fdd369",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 6639,
            "upload_time": "2025-07-29T21:44:38",
            "upload_time_iso_8601": "2025-07-29T21:44:38.601497Z",
            "url": "https://files.pythonhosted.org/packages/9d/99/6f9801d74b1d7801bc1f92a1bffd58abbddccd82e0c0ce2091a2779f2bdd/openapi_slice_mcp-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dcfa807472df8c62e2eaf4d2099ea96073a4df23c8e83aefab8cfd1887bfad09",
                "md5": "7a6545827a9a5e518e7336b704010177",
                "sha256": "85a84d9c87d03a61b1b7e470e32bf747e4523527228761ae70138baa69775997"
            },
            "downloads": -1,
            "filename": "openapi_slice_mcp-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "7a6545827a9a5e518e7336b704010177",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 5894,
            "upload_time": "2025-07-29T21:44:39",
            "upload_time_iso_8601": "2025-07-29T21:44:39.959077Z",
            "url": "https://files.pythonhosted.org/packages/dc/fa/807472df8c62e2eaf4d2099ea96073a4df23c8e83aefab8cfd1887bfad09/openapi_slice_mcp-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-29 21:44:39",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "vvarp",
    "github_project": "openapi-slice-mcp",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "openapi-slice-mcp"
}
        
Elapsed time: 0.60976s