Apidog Sync MCP Server
MCP server for reading, writing, and organizing API documentation in Apidog.
README
Apidog Sync - MCP Server
MCP server for reading, writing, and organizing API documentation in Apidog. Works across Claude Desktop, Claude CLI, Cursor, and Antigravity.
Built on a validated POC: Export → Find → Diff → Merge → Import → Verify.
Tools
Read
| Tool | Description |
|---|---|
apidog_export_spec |
Export full OpenAPI spec |
apidog_list_endpoints |
List endpoints (filterable by tag/path/folder/status) |
apidog_get_endpoint |
Get full details of a specific endpoint |
apidog_search_endpoints |
Fuzzy search by keyword across path/summary/tags/folder |
Write
| Tool | Description |
|---|---|
apidog_upsert_endpoint |
Create or update a single endpoint (with diff + verify) |
apidog_upsert_endpoints |
Batch create/update multiple endpoints |
apidog_delete_endpoint |
Remove an endpoint |
apidog_upsert_schema |
Create or update a component schema |
apidog_import_spec |
Import a full or partial OpenAPI spec |
Organize
| Tool | Description |
|---|---|
apidog_analyze_folders |
Analyze current folder structure and stats |
apidog_propose_reorganization |
Propose better folder organization (dry-run, no changes) |
apidog_apply_reorganization |
Apply a user-validated reorganization plan |
Quick Start
1. Get your Apidog credentials
- Access Token: Apidog → Account Settings → API Access Token → New
- Project ID: Found in your project URL or project settings
2. Add to your MCP client
No installation needed — just add this config block:
{
"mcpServers": {
"apidog": {
"command": "npx",
"args": ["-y", "apidog-sync-mcp-server"],
"env": {
"APIDOG_ACCESS_TOKEN": "your-token",
"APIDOG_PROJECT_ID": "your-project-id"
}
}
}
}
That's it. npx downloads and runs the server automatically.
Where to put this config
| Client | Config file |
|---|---|
| Claude Code (global) | ~/.claude.json |
| Claude Code (per-project) | .mcp.json in project root |
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Cursor | .cursor/mcp.json |
| Windsurf | MCP settings panel |
Multiple Apidog projects
Use separate entries — each pointing to a different project ID:
{
"mcpServers": {
"apidog-frontend": {
"command": "npx",
"args": ["-y", "apidog-sync-mcp-server"],
"env": {
"APIDOG_ACCESS_TOKEN": "your-token",
"APIDOG_PROJECT_ID": "frontend-project-id"
}
},
"apidog-backend": {
"command": "npx",
"args": ["-y", "apidog-sync-mcp-server"],
"env": {
"APIDOG_ACCESS_TOKEN": "your-token",
"APIDOG_PROJECT_ID": "backend-project-id"
}
}
}
}
Usage Examples
Updating an endpoint after a route change
"I updated the validation rules on the peppol endpoint, the description should say the format must be scheme:identifier with a single colon. Update the docs."
The agent will:
- Search for the peppol endpoint (
apidog_search_endpoints) - Get the current format (
apidog_get_endpoint) - Build the updated operation matching the exact existing format
- Push the update with diff showing what changed (
apidog_upsert_endpoint) - Verify the update landed
Reorganizing folders
"Analyze my API folder structure and suggest a better organization"
The agent will:
- Analyze current folders (
apidog_analyze_folders) - Propose reorganization (
apidog_propose_reorganization) - Present the plan and wait for your approval
- Apply only after you confirm (
apidog_apply_reorganization)
Batch updates from route changes
"I added 3 new routes for invoice management: POST /api/v1/invoices, GET /api/v1/invoices/{id}, DELETE /api/v1/invoices/{id}. Add them to the docs."
The agent will:
- Check existing endpoints to learn the format
- Build all 3 operations matching the project format
- Batch upsert them (
apidog_upsert_endpoints)
Reorganization Strategies
| Strategy | Description |
|---|---|
path-based |
Infer folders from URL paths: /api/v1/admin/billing/... → Admin/Billing |
preserve-top-level |
Keep existing top-level folders, reorganize sub-levels |
flat |
Single level by main resource name |
Custom mappings let you override specific prefixes:
{
"customMappings": {
"/api/v1/admin": "Administration",
"/auth": "Authentication",
"/api/v1/public": "Public API"
}
}
Apidog Extensions
Fully supports:
x-apidog-folder— Folder path:"Safetytracker V1/Super Admin/Billing"x-apidog-status— Lifecycle:designing,developing,released,deprecatedx-apidog-maintainer— Team member assignmentx-apidog-orders— Field ordering in schema objectsx-apidog-ignore-properties— Hidden propertiesx-apidog-name— Response display namesx-apidog-ordering— Response ordering
How Writes Work
Every write operation follows the POC-validated flow:
Export current spec (preserves all formatting)
↓
Find target endpoint (exact match or fuzzy search)
↓
Compute diff (show what changed)
↓
Merge into full spec (deep merge, preserve untouched endpoints)
↓
Import with OVERWRITE_EXISTING
↓
Verify (re-export and confirm)
No endpoints are lost. No formatting is changed on untouched endpoints.
Development
To run from source (for contributing or local testing):
git clone https://github.com/YOUR_USERNAME/apidog-sync-mcp-server.git
cd apidog-sync-mcp-server
npm install
Then point your MCP config to the local source:
{
"mcpServers": {
"apidog": {
"command": "node",
"args": ["/path/to/apidog-sync-mcp-server/src/index.js"],
"env": {
"APIDOG_ACCESS_TOKEN": "your-token",
"APIDOG_PROJECT_ID": "your-project-id"
}
}
}
}
License
MIT
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.