@lstpsche/apidog-mcp

@lstpsche/apidog-mcp

MCP server that provides 22 tools to manage Apidog API documentation, including importing OpenAPI specs, exporting, diffing, analyzing, and bulk-editing endpoints.

Category
Visit Server

README

@lstpsche/apidog-mcp

MCP server for managing Apidog API documentation. Provides 22 tools for importing, exporting, diffing, analyzing, and bulk-editing OpenAPI specs and endpoint cases via the Model Context Protocol.

Quick Start

npx @lstpsche/apidog-mcp

Configuration

Option A: Project-level config file (recommended)

Create .apidog.json in your project root:

{
  "accessToken": "adgp_your_token_here",
  "projectId": "1234567",
  "modules": {
    "backend": 1234,
    "payments": 5678
  }
}

Add .apidog.json to your .gitignore to keep secrets out of version control.

Then configure your MCP client (e.g. .cursor/mcp.json):

{
  "mcpServers": {
    "apidog": {
      "command": "npx",
      "args": ["-y", "@lstpsche/apidog-mcp"]
    }
  }
}

Multi-project config

To manage multiple Apidog projects from a single config, use the projects array:

{
  "accessToken": "adgp_your_token_here",
  "projects": [
    {
      "name": "main",
      "projectId": "1234567",
      "modules": {
        "backend": 1234,
        "payments": 5678
      }
    },
    {
      "name": "staging",
      "projectId": "7654321",
      "modules": {
        "default": 9999
      }
    }
  ]
}

Each project has a name used to target it in tool calls via the project parameter. When only one project is configured, the project parameter is optional and defaults automatically.

The single-project format (with top-level projectId and modules) is still fully supported and treated as a single project named "default".

Option B: Environment variables

Set these in your shell or CI environment:

Variable Description
APIDOG_ACCESS_TOKEN Apidog personal access token
APIDOG_PROJECT_ID Apidog project ID
APIDOG_MODULES JSON map of module names to IDs (e.g. {"api":123})
{
  "mcpServers": {
    "apidog": {
      "command": "npx",
      "args": ["-y", "@lstpsche/apidog-mcp"],
      "env": {
        "APIDOG_ACCESS_TOKEN": "${APIDOG_ACCESS_TOKEN}",
        "APIDOG_PROJECT_ID": "${APIDOG_PROJECT_ID}",
        "APIDOG_MODULES": "${APIDOG_MODULES}"
      }
    }
  }
}

Environment variables define a single project named "default". They can be combined with a multi-project .apidog.json — the env-var project overrides any file-based project with the same name.

Config file resolution

The server locates .apidog.json using the following strategy:

  1. APIDOG_CONFIG_PATH env var — if set, uses this explicit file path
  2. Upward directory walk — searches from process.cwd() upward through parent directories until .apidog.json is found (similar to how Node resolves package.json)
  3. Env-only fallback — if no file is found, falls back to environment variables

This means .apidog.json works reliably even when the MCP server is started from a subdirectory or by a plugin that doesn't set the working directory to the project root.

Resolution order

Environment variables take precedence over .apidog.json for the "default" project. You can mix both — for example, keep projectId and modules in .apidog.json and set APIDOG_ACCESS_TOKEN via environment for security.

Where to find your credentials

  • Access Token: Apidog > Account Settings > API Access Tokens
  • Project ID: Open your project > Settings > Basic Settings
  • Module IDs: Each module's settings page within your Apidog project

Tools (22)

All tools accept an optional project parameter to target a specific project in multi-project configurations. When only one project is configured, this parameter can be omitted.

Read

Tool Description
apidog_modules List configured projects and their modules with names and IDs
apidog_export Export full OpenAPI spec for a module
apidog_list List/search endpoints with filters and pagination
apidog_get Get full details of a single endpoint
apidog_folders Analyze folder structure and counts

Write

Tool Description
apidog_import_openapi Import OpenAPI spec (auto-batched for large specs)
apidog_wipe Wipe all endpoints in a module (requires confirm)
apidog_update Update a single endpoint via partial spec import
apidog_delete Delete an endpoint
apidog_pipeline 3-step pipeline: wipe, create cases, overlay spec

Cases

Tool Description
apidog_create_cases Create endpoint usage examples (single or batch)

Diff & Analysis

Tool Description
apidog_diff Compare Apidog state against a local spec
apidog_analyze Coverage and validation analysis (selectable checks)

Schemas

Tool Description
apidog_list_schemas List component schemas with references
apidog_get_schema Get full schema definition
apidog_update_schema Create or update a component schema
apidog_delete_schema Delete a schema (refuses if still referenced)

Bulk Operations

Tool Description
apidog_bulk_update Batch update tags, folders, status, summaries

Export Formats

Tool Description
apidog_export_markdown Export as Markdown documentation
apidog_export_curl Export as curl command examples
apidog_export_postman Export as Postman Collection v2.1

Testing

Tool Description
apidog_run_test Run test scenarios or folders via Apidog CLI

Architecture

A single server instance can manage multiple Apidog projects and modules. Pass the module name (e.g. "backend", "payments") to each tool call — the server resolves it to the correct module ID. For multi-project setups, also pass the project name (e.g. "main", "staging").

Limitations

Apidog's public API is limited in scope. The following functionality is not available through this MCP server due to missing API support:

Feature Reason
Direct endpoint CRUD No REST API for creating/updating/deleting individual endpoints. Workaround: OpenAPI spec import with matching options.
Endpoint case CRUD No API for creating/editing endpoint cases directly. Workaround: Postman collection import to inject cases.
Auto-generated "Success" case suppression autoGenerateCase: false is silently ignored by the API. Workaround: auto-generated empty cases are detected and replaced after import.
Folder/module management No API to create, rename, or delete folders or modules. Workaround: x-apidog-folder extension in OpenAPI import controls folder placement.
Test scenario management No API to create or edit test scenarios. Only execution of existing scenarios is supported via apidog-cli.
Test execution auth apidog-cli requires a separate CI/CD access token generated from within a test scenario's settings, not the general API access token.
Environment variables No API to manage Apidog environment variables.
Mock server configuration No API to configure or control mock servers.
Comments and discussions No API to read or post comments on endpoints.
Change history No API to access endpoint revision history.

These limitations are inherent to the Apidog API as of March 2026. The MCP server implements workarounds where possible (noted above).

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured