YAPI MCP Server
Enables AI assistants to manage YAPI API documentation by providing tools to create, update, and retrieve interface details. It also supports running automated tests and managing API data across multiple configured projects.
README
YAPI MCP Server
English | 中文
A Model Context Protocol (MCP) server for YAPI - enabling AI assistants to manage API documentation.
Features
| Tool | Description | YAPI API |
|---|---|---|
yapi_list_projects |
List all configured projects | - |
yapi_run_auto_test |
Run automated tests | /api/open/run_auto_test |
yapi_import_data |
Import API data | /api/open/import_data |
yapi_interface_add |
Add new interface | /api/interface/add |
yapi_interface_save |
Save interface | /api/interface/save |
yapi_interface_up |
Update interface | /api/interface/up |
yapi_interface_get |
Get interface details | /api/interface/get |
yapi_interface_list |
List interfaces | /api/interface/list |
yapi_interface_list_menu |
Get interface menu | /api/interface/list_menu |
yapi_interface_add_cat |
Add interface category | /api/interface/add_cat |
yapi_interface_get_cat_menu |
Get all categories | /api/interface/getCatMenu |
Installation
Clone the repository, then install dependencies and build in the project directory:
git clone <repo-url>
cd yapi-mcp
npm install
npm run build
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
YAPI_BASE_URL |
Yes | YAPI server URL, e.g., https://yapi.example.com |
YAPI_PROJECTS |
Yes | Project configuration in format: projectId1:token1,projectId2:token2 |
YAPI_PROJECTS Format
projectId1:token1,projectId2:token2
Example:
123:abc123token,456:def456token
You can get the project token from YAPI project settings page.
Usage with Cursor
Add to your Cursor MCP configuration file:
macOS/Linux
Edit ~/.cursor/mcp.json and replace /path/to/yapi-mcp with your actual project path:
{
"mcpServers": {
"yapi": {
"command": "node",
"args": ["/path/to/yapi-mcp/dist/index.js"],
"env": {
"YAPI_BASE_URL": "https://your-yapi-server.com",
"YAPI_PROJECTS": "123:your-token-here,456:another-token"
}
}
}
}
Windows
Edit %APPDATA%\Cursor\mcp.json and use your actual project path (e.g. C:\\Users\\YourName\\yapi-mcp\\dist\\index.js):
{
"mcpServers": {
"yapi": {
"command": "node",
"args": ["C:\\path\\to\\yapi-mcp\\dist\\index.js"],
"env": {
"YAPI_BASE_URL": "https://your-yapi-server.com",
"YAPI_PROJECTS": "123:your-token-here"
}
}
}
}
Usage with Claude Desktop
Add to your Claude Desktop configuration:
macOS
Edit ~/Library/Application Support/Claude/claude_desktop_config.json and replace /path/to/yapi-mcp with your actual project path:
{
"mcpServers": {
"yapi": {
"command": "node",
"args": ["/path/to/yapi-mcp/dist/index.js"],
"env": {
"YAPI_BASE_URL": "https://your-yapi-server.com",
"YAPI_PROJECTS": "123:your-token-here"
}
}
}
}
Windows
Edit %APPDATA%\Claude\claude_desktop_config.json with the same configuration, using your actual project path.
Tool Examples
List All Projects
{
"name": "yapi_list_projects",
"arguments": {}
}
Get Interface List (Default Project)
{
"name": "yapi_interface_list",
"arguments": {
"page": 1,
"limit": 20
}
}
Get Interface List (Specific Project)
{
"name": "yapi_interface_list",
"arguments": {
"project": 456,
"page": 1,
"limit": 20
}
}
Add New Interface
{
"name": "yapi_interface_add",
"arguments": {
"catid": 456,
"title": "Get User Info",
"path": "/api/user/info",
"method": "GET",
"desc": "Get user details by ID"
}
}
Get Interface Details
{
"name": "yapi_interface_get",
"arguments": {
"id": 789
}
}
Run Automated Tests
{
"name": "yapi_run_auto_test",
"arguments": {
"project": 456,
"env_name": "dev"
}
}
Development
# Clone the repository
cd yapi-mcp
# Install dependencies
npm install
# Development mode
npm run dev
# Build
npm run build
# Run
npm start
Security
- Never commit your YAPI tokens to version control
- Use environment variables to store sensitive configuration
- Consider using a secrets manager for production deployments
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
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.