@kedoupi/yapi-mcp
Provides tools for AI agents to interact with YApi projects, categories, and interfaces programmatically.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@kedoupi/yapi-mcp search for user login API in project myapp"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
YApi MCP Enhanced
An enhanced Model Context Protocol (MCP) server for YApi that enables seamless AI integration
Empower Claude, Cursor, and other AI tools with intelligent YApi API management capabilities
๐ Quick Start โข ๐ง Installation โข ๐ป Platforms โข ๐ Documentation โข ๐ค Contributing
๐ Features
Feature | Description | Status |
๐ Smart Search | Advanced API search with flexible filtering options | โ |
โ๏ธ Interface Management | Create, read, update API interfaces seamlessly | โ |
๐ฏ Project Organization | Manage projects and categories efficiently | โ |
๐ Enhanced UX | Superior error handling and user feedback | โ |
โก Performance | Intelligent caching and optimized requests | โ |
๐ก๏ธ Reliability | Comprehensive error handling and validation | โ |
๐ Multi-Platform | Claude Desktop, Cursor, Continue, and more | โ |
๐ Real-time Sync | Live synchronization with YApi changes | ๐ |
๐ Analytics | Usage statistics and performance metrics | ๐ |
Related MCP server: YApi MCP Server
๐ Quick Start
Prerequisites
Node.js 18+
YApi Server with API access
YApi Project Token
โก One-line Installation
# Install globally
npm install -g @kedoupi/yapi-mcp
# Test your connection
npx @kedoupi/yapi-mcp test-connection๐ง Installation
npm install -g @kedoupi/yapi-mcpyarn global add @kedoupi/yapi-mcpgit clone https://github.com/kedoupi/yapi-mcp.git
cd yapi-mcp
npm install
npm run buildโ๏ธ Configuration
Copy environment template:
cp .env.example .envConfigure your YApi settings:
# Required
YAPI_BASE_URL=https://your-yapi-domain.com
YAPI_PROJECT_TOKEN=your-project-token
# Optional
LOG_LEVEL=info
CACHE_TTL=300Test connection:
npx @kedoupi/yapi-mcp test-connection๐ป Platform Integration
๐ค Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"@kedoupi/yapi-mcp": {
"command": "npx",
"args": ["@kedoupi/yapi-mcp"],
"env": {
"YAPI_BASE_URL": "https://your-yapi-domain.com",
"YAPI_PROJECT_TOKEN": "your-project-token",
"LOG_LEVEL": "info"
}
}
}
}Config file locations:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
๐ฏ Cursor IDE
Open Cursor Settings (Cmd/Ctrl + ,)
Search for "MCP" or go to Extensions > MCP
Add new MCP server:
{
"name": "@kedoupi/yapi-mcp",
"command": "npx",
"args": ["@kedoupi/yapi-mcp"],
"env": {
"YAPI_BASE_URL": "https://your-yapi-domain.com",
"YAPI_PROJECT_TOKEN": "your-project-token"
}
}๐ Continue (VS Code)
Add to .continue/config.json:
{
"mcpServers": [
{
"name": "@kedoupi/yapi-mcp",
"command": "npx",
"args": ["@kedoupi/yapi-mcp"],
"env": {
"YAPI_BASE_URL": "https://your-yapi-domain.com",
"YAPI_PROJECT_TOKEN": "your-project-token"
}
}
]
}๐ง Codeium
Add MCP server configuration in Codeium settings:
{
"mcp_servers": {
"yapi": {
"command": "npx",
"args": ["@kedoupi/yapi-mcp"],
"env": {
"YAPI_BASE_URL": "https://your-yapi-domain.com",
"YAPI_PROJECT_TOKEN": "your-project-token"
}
}
}
}๐ Other Platforms
The server supports any MCP-compatible AI tool. Check our integration guide for more platforms.
๐ ๏ธ Available Tools
The server provides these tools for AI interaction:
Tool | Description | Parameters |
| List available YApi projects | - |
| Get project categories |
|
| Get API interface details |
|
| Search APIs with filters |
|
| Create new API interface |
|
| Update existing interface |
|
| Clear internal cache | - |
yapi_search_interfaces
Advanced search with multiple filters:
project_id (optional): Filter by project
catid (optional): Filter by category
q (optional): Search query string
page (optional): Page number for pagination
limit (optional): Results per page (max 100)
yapi_create_interface / yapi_update_interface
Full interface management with support for:
Request/response body specifications
Headers and query parameters
HTTP methods (GET, POST, PUT, DELETE, etc.)
Interface status and descriptions
Category assignments
๐๏ธ Architecture
graph TD
A[AI Tool] -->|MCP Protocol| B[YApi MCP Server]
B -->|HTTP API| C[YApi Server]
B -->|Cache| D[Memory Cache]
B -->|Logging| E[Logger]
B -->|Config| F[Environment]YApiClient: HTTP client for YApi API interactions
MCP Server: Protocol handler for AI tool integration
Caching: Intelligent caching for performance optimization
Configuration: Environment-based configuration management
Error Handling: Comprehensive error management
๐งช Development
Local Development
# Clone repository
git clone https://github.com/kedoupi/yapi-mcp.git
cd yapi-mcp
# Install dependencies
npm install
# Development mode (watch files)
npm run dev
# Build project
npm run build
# Start server
npm startTesting
# Run all tests
npm test
# Watch mode
npm run test:watch
# Coverage report
npm run test:coverage
# Unit tests only
npm run test:unit
# Integration tests
npm run test:integrationCode Quality
# Lint code
npm run lint
# Fix issues
npm run lint:fix
# Clean build
npm run clean๐ Performance
โก Fast Response: < 100ms for cached requests
๐พ Memory Efficient: < 50MB RAM usage
๐ Smart Caching: 5-minute TTL with cleanup
๐ Scalable: Handles 1000+ concurrent requests
๐ค Contributing
We welcome all contributions! Here's how you can help:
๐ Bug Reports
Found a bug? Open an issue
๐ก Feature Requests
Have an idea? Request a feature
๐ง Code Contributions
Fork the repository
Create feature branch (
git checkout -b feature/amazing-feature)Commit changes (
git commit -m 'Add amazing feature')Push to branch (
git push origin feature/amazing-feature)Open a Pull Request
See our Contributing Guide for detailed information.
๐ Other Ways to Help
โญ Star the repository
๐ข Share with others
๐ Improve documentation
๐งช Test new features
๐ Roadmap
๐ฏ Current Focus
Enhanced Mock data support
Batch operations for multiple APIs
Real-time synchronization with YApi
Multi-project parallel management
๐ฎ Future Plans
GraphQL API support
Web-based configuration UI
Custom plugin system
Advanced analytics dashboard
Docker container support
๐ Comparison
Feature | YApi MCP Enhanced | Original YApi MCP | Manual YApi |
AI Integration | โ Advanced | โ Basic | โ None |
Error Handling | โ Comprehensive | โ ๏ธ Limited | โ ๏ธ Manual |
Caching | โ Smart TTL | โ None | โ None |
Testing | โ 80%+ Coverage | โ None | โ Manual |
TypeScript | โ Full Support | โ ๏ธ Partial | โ None |
CLI Tools | โ Rich CLI | โ None | โ None |
๐ Related Projects
YApi - Visual API management platform
Model Context Protocol - AI tool communication standard
Claude Desktop - Anthropic's desktop application
Cursor - AI-powered code editor
๐ License
This project is licensed under the MIT License.
๐ Support
Need help? We're here for you:
๐ Documentation
๐ Report Issues
๐ฌ Discussions
๐ง Email Support
๐ Acknowledgments
Special thanks to:
YApi Team for the excellent API management platform
Anthropic for the Model Context Protocol
All Contributors who make this project better
Open Source Community for inspiration and support
If this project helps you, please give us a โญ๏ธ
Made with โค๏ธ by kedoupi and contributors
๐ Homepage โข ๐ Docs โข ๐ Issues โข ๐ฌ Discussions
Available Tools
12 toolsyapi_clear_cacheA
Clear the internal cache to force fresh data retrieval
Inputs: no named parameters.
yapi_create_categoryC
Create a new API category
Inputs: name (required), project_id (required), desc.
yapi_create_interfaceC
Create a new API interface
Inputs: path (required), catid (required), title (required), method (required), +7 more.
yapi_delete_interfaceB
Delete an API interface by ID
Inputs: interface_id (required).
yapi_get_categoriesC
Get categories for a specific project
Inputs: project_id (required).
yapi_get_interfaceC
Get detailed information about a specific API interface
Inputs: interface_id (required).
yapi_get_projectsA
Get list of available YApi projects
Inputs: no named parameters.
yapi_import_dataB
Import interface data from external sources
Inputs: type (required), catid (required), project_id (required), data_source (required), +1 more.
yapi_list_category_interfacesB
Get interfaces within a specific category
Inputs: catid (required), page, limit.
yapi_search_interfacesC
Search for API interfaces with various filters
Inputs: q, page, catid, limit, +1 more.
yapi_update_interfaceC
Update an existing API interface
Inputs: id (required), path (required), catid (required), title (required), +8 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogโฆ
TDQS
Scored across 12 tools
Most tools target distinct resources/actions (projects, categories, interfaces). Some overlap exists between get_interface_menu, get_categories, and list_category_interfaces, but descriptions and parameter differences likely clarify their unique purposes.
All tool names follow a consistent yapi_verb_noun pattern (e.g., get_projects, create_interface, delete_interface). Minor variations like get_interface_menu vs get_categories still adhere to the same verb_noun structure, making the naming predictable.
With 12 tools, the server is well-scoped for an API management platform. Each tool covers a meaningful operation without unnecessary redundancy, fitting the ideal range for a focused MCP server.
The interface lifecycle is well-covered (create, read, update, delete, search, list). Minor gaps exist such as lack of project update/delete or category delete, but core workflows are operational and import/cache support adds practical utility.
Maintenance
Related MCP Connectors
Search 16,000+ API operations and 95 built tools by need, then call any of them by name
AI-callable tools for API mocking, testing, monitoring, security, and automation.
Turn any task into the right API calls: discover, evaluate, and integrate public APIs.
Search 386+ AI tools with China-access data, live GitHub stats, 4-language metadata. No key needed
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables reading and searching API documentation from YApi instances, allowing AI models to access interface definitions, project API lists, and search through API endpoints using YApi URLs or project IDs.13 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables interaction with YApi API management platform through natural language, allowing automated interface management including creating/updating APIs, managing categories, importing data, and retrieving project information.30 npm9GPL 3.0
- AlicenseNot gradedqualityDmaintenanceEnables direct interaction with YApi API management platforms from AI editors like Cursor and Claude Desktop, providing complete interface lifecycle management including browsing, creating, updating, and deleting API documentation.14 npm21MIT
- AlicenseCqualityDmaintenanceEnables 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.1126 npmMIT