
OpenAPI Analyzer
Loads and analyzes OpenAPI specifications to help you understand API structures, find endpoints, and identify inconsistencies across multiple API specs.
Analyzes OpenAPI specifications with seven core tools including spec loading, API listing, endpoint searching, statistics generation, inconsistency detection, and schema comparison for API documentation review, validation, and multi-API comparison workflows.
What it does
- Load OpenAPI specs from URLs, registries, or local files
- Search for specific endpoints across multiple APIs
- Generate comprehensive statistics about API ecosystems
- Detect inconsistencies in authentication and naming conventions
- Compare schemas with the same name across different APIs
- List all available APIs and endpoints
Best for
About OpenAPI Analyzer
OpenAPI Analyzer is a community-built MCP server published by sureshkumars that provides AI assistants with tools and capabilities via the Model Context Protocol. Analyze OpenAPI specifications: load specs, list APIs, search endpoints, detect inconsistencies, and compare schemas eff It is categorized under developer tools.
How to install
You can install OpenAPI Analyzer in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
License
OpenAPI Analyzer is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
OpenAPI Analyzer MCP Server
A powerful Model Context Protocol (MCP) server for analyzing OpenAPI specifications with Claude Desktop and other LLM clients. This server enables natural language queries about your API structures, endpoints, schemas, and helps identify inconsistencies across multiple OpenAPI specs.
π Table of Contents
- π Features
- π Installation
- βοΈ Configuration
- π― Usage
- π§ Available Tools
- π Example Output
- ποΈ Creating Your Own API Registry
- π¨ Troubleshooting
- π€ Contributing
- π Changelog
- π License
π Features
π― Smart Discovery System
- π‘ API Registry Support: Automatically discover APIs from
apis.jsonregistries (support for 30+ APIs) - π URL-Based Loading: Load specs from individual URLs with automatic fallback
- π Local File Support: Traditional folder-based spec loading with multi-format support
- π Priority System: Discovery URL β Individual URLs β Local folder (intelligent fallback)
π Advanced Analysis
- π Bulk Analysis: Load and analyze 90+ OpenAPI specification files simultaneously
- π Smart Search: Find endpoints across all APIs using natural language queries
- π Comprehensive Stats: Generate detailed statistics about your API ecosystem
- π§ Inconsistency Detection: Identify authentication schemes and naming convention mismatches
- π Schema Comparison: Compare schemas with the same name across different APIs
- β‘ Fast Queries: In-memory indexing for lightning-fast responses
π Universal Compatibility
- Multi-Format Support: JSON, YAML, and YML specifications
- Version Support: OpenAPI 2.0, 3.0, and 3.1 specifications
- Remote & Local: Works with URLs, API registries, and local files
- Source Tracking: Know exactly where each API spec was loaded from
π Installation
Option 1: Install from npm
npm install openapi-analyzer-mcp
Option 2: Build from source
git clone https://github.com/sureshkumars/openapi-analyzer-mcp.git
cd openapi-analyzer-mcp
npm install
npm run build
βοΈ Configuration
π― Smart Discovery Options
The OpenAPI Analyzer supports three discovery methods with intelligent priority fallback:
- π Priority 1: API Registry (
OPENAPI_DISCOVERY_URL) - π₯ Priority 2: Individual URLs (
OPENAPI_SPEC_URLS) - π₯ Priority 3: Local Folder (
OPENAPI_SPECS_FOLDER)
Claude Desktop Setup
Find your config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\\Claude\\claude_desktop_config.json
Configuration Examples
π Option 1: API Registry Discovery (Recommended)
Perfect for companies with centralized API registries:
{
"mcpServers": {
"openapi-analyzer": {
"command": "npx",
"args": ["-y", "openapi-analyzer-mcp"],
"env": {
"OPENAPI_DISCOVERY_URL": "https://docs.company.com/apis.json"
}
}
}
}
π Option 2: Individual API URLs
Load specific APIs from direct URLs:
{
"mcpServers": {
"openapi-analyzer": {
"command": "npx",
"args": ["-y", "openapi-analyzer-mcp"],
"env": {
"OPENAPI_SPEC_URLS": "https://api.example.com/v1/openapi.yaml,https://api.example.com/v2/openapi.yaml,https://petstore.swagger.io/v2/swagger.json"
}
}
}
}
π Option 3: Local Folder
Traditional approach for local specification files:
{
"mcpServers": {
"openapi-analyzer": {
"command": "npx",
"args": ["-y", "openapi-analyzer-mcp"],
"env": {
"OPENAPI_SPECS_FOLDER": "/absolute/path/to/your/openapi-specs"
}
}
}
}
π Option 4: Multi-Source with Fallback
Ultimate flexibility - tries all methods with intelligent fallback:
{
"mcpServers": {
"openapi-analyzer": {
"command": "npx",
"args": ["-y", "openapi-analyzer-mcp"],
"env": {
"OPENAPI_DISCOVERY_URL": "https://docs.company.com/apis.json",
"OPENAPI_SPEC_URLS": "https://legacy-api.com/spec.yaml,https://external-api.com/spec.json",
"OPENAPI_SPECS_FOLDER": "/path/to/local/specs"
}
}
}
}
π’ Real-World Examples
Company with API Registry:
{
"mcpServers": {
"company-apis": {
"command": "npx",
"args": ["-y", "openapi-analyzer-mcp"],
"env": {
"OPENAPI_DISCOVERY_URL": "https://api.company.com/registry/apis.json"
}
}
}
}
Multiple API Sources:
{
"mcpServers": {
"multi-apis": {
"command": "npx",
"args": ["-y", "openapi-analyzer-mcp"],
"env": {
"OPENAPI_SPEC_URLS": "https://petstore.swagger.io/v2/swagger.json,https://api.example.com/v1/openapi.yaml"
}
}
}
}
π§ Environment Variables
| Variable | Description | Example | Priority |
|---|---|---|---|
OPENAPI_DISCOVERY_URL | URL to API registry (apis.json format) | https://docs.company.com/apis.json | 1 (Highest) |
OPENAPI_SPEC_URLS | Comma-separated list of OpenAPI spec URLs | https://api1.com/spec.yaml,https://api2.com/spec.json | 2 (Medium) |
OPENAPI_SPECS_FOLDER | Absolute path to local OpenAPI files folder | /absolute/path/to/specs | 3 (Fallback) |
β οΈ Important Notes:
- At least one environment variable must be set
- System tries sources in priority order and stops at first success
- Always use absolute paths for
OPENAPI_SPECS_FOLDER - Supports JSON, YAML, and YML formats for all sources
π― Usage
Once configured, you can interact with your OpenAPI specs using natural language in Claude Desktop:
π Smart Discovery Queries
API Registry Discovery
"Load all APIs from the company registry and show me an overview"
"Discover APIs from the configured registry and analyze their authentication patterns"
"What APIs are available in our API registry?"
"Show me where my specs were loaded from"
Cross-API Analysis
"Load all my OpenAPI specs and give me a comprehensive summary"
"How many APIs do I have and what's the total number of endpoints?"
"Compare authentication schemes across all loaded APIs"
"Which APIs are using different versions of the same schema?"
Search and Discovery
"Show me all POST endpoints for user creation across all APIs"
"Find all endpoints related to authentication across all loaded APIs"
"Which APIs have pagination parameters?"
"Search for endpoints that handle file uploads"
"Find all APIs that use the 'User' schema"
Analysis and Comparison
"What authentication schemes are used across my APIs?"
"Which APIs have inconsistent naming conventions?"
"Compare the User schema across different APIs"
"Show me APIs that are still using version 1.0"
Statistics and Insights
"Generate comprehensive statistics about my API ecosystem"
"Which HTTP methods are most commonly used?"
"What are the most common path patterns?"
"Show me version distribution across my APIs"
π§ Available Tools
The MCP server provides these tools for programmatic access:
| Tool | Description | Parameters |
|---|---|---|
load_specs | Smart Load: Automatically load specs using priority system (registry β URLs β folder) | None |
list_apis | List all loaded APIs with basic info (title, version, endpoint count) | None |
get_api_spec | Get the full OpenAPI spec for a specific file | filename |
search_endpoints | Search endpoints by keyword across all APIs | query |
get_api_stats | Generate comprehensive statistics about all loaded APIs | None |
find_inconsistencies | Detect inconsistencies in authentication schemes | None |
compare_schemas | Compare schemas with the same name across different APIs | schema1, schema2 (optional) |
get_load_sources | New! Show where specs were loaded from (registry, URLs, or folder) | None |
π Project Structure
openapi-analyzer-mcp/
βββ src/
β βββ index.ts # Main server implementation
βββ tests/ # Comprehensive test suite
β βββ analyzer.test.ts # Core functionality tests
β βββ server.test.ts # MCP server tests
β βββ validation.test.ts # Environment tests
β βββ setup.ts # Test configuration
β βββ fixtures/ # Test data files
βββ dist/ # Compiled JavaScript
βββ coverage/ # Test coverage reports
βββ examples/ # Example configurations
β βββ claude_desktop_config.json
β βββ sample-openapi.json
βββ vitest.config.ts # Test configuration
βββ package.json
βββ tsconfig.json
βββ README.md
Note: You don't need an openapi-specs folder in this repository. Point OPENAPI_SPECS_FOLDER to wherever your actual OpenAPI files are located.
π Example Output
π― Smart Discovery Results
Load Sources Information
[
{
"type": "discovery",
"url": "https://api.company.com/registry/apis.json",
"count": 12,
"metadata": {
"name": "Company APIs",
"description": "Collection of company API specifications",
"total_apis": 12
}
}
]
Registry Discovery Success
{
"totalApis": 12,
"totalEndpoints": 247,
"loadedFrom": "API Registry",
"discoveryUrl": "https://api.company.com/registry/apis.json",
"apis": [
{
"filename": "User Management API",
"title": "User Management API",
"version": "2.1.0",
"endpointCount": 18,
"source": "https://docs.company.co
---
*README truncated. [View full README on GitHub](https://github.com/sureshkumars/openapi-analyzer-mcp).*
Alternatives
Related Skills
Browse all skillsMaster API documentation with OpenAPI 3.1, AI-powered tools, and modern developer experience practices. Create interactive docs, generate SDKs, and build comprehensive developer portals. Use PROACTIVELY for API documentation or developer portal creation.
Technical leadership guidance for engineering teams, architecture decisions, and technology strategy. Includes tech debt analyzer, team scaling calculator, engineering metrics frameworks, technology evaluation tools, and ADR templates. Use when assessing technical debt, scaling engineering teams, evaluating technologies, making architecture decisions, establishing engineering metrics, or when user mentions CTO, tech debt, technical debt, team scaling, architecture decisions, technology evaluation, engineering metrics, DORA metrics, or technology strategy.
UI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.
Guide for building TypeScript CLIs with Bun. Use when creating command-line tools, adding subcommands to existing CLIs, or building developer tooling. Covers argument parsing, subcommand patterns, output formatting, and distribution.
Use when working with the OpenAI API (Responses API) or OpenAI platform features (tools, streaming, Realtime API, auth, models, rate limits, MCP) and you need authoritative, up-to-date documentation (schemas, examples, limits, edge cases). Prefer the OpenAI Developer Documentation MCP server tools when available; otherwise guide the user to enable `openaiDeveloperDocs`.
ΠΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π°Π½Π°Π»ΠΈΠ· OpenAPI 3.1.0 ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈΠ· MikoPBX Π΄Π»Ρ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ ΡΠ½Π΄ΠΏΠΎΠΈΠ½ΡΠΎΠ². ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ API, Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΡΠΎΠ², ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ ΡΡ Π΅ΠΌ ΡΠ½Π΄ΠΏΠΎΠΈΠ½ΡΠΎΠ² ΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ Π½Π°Π²ΡΠΊΠ°ΠΌΠΈ endpoint-validator ΠΈ api-test-generator.