About APISIX Mcp
APISIX MCP is an MCP server that bridges large language models with the APISIX Admin API. It is aimed at users who want to view and manage APISIX resources through natural language in MCP-compatible AI clients.
Key features
- 01Query and delete APISIX resources
- 02Manage routes, services and upstreams
- 03Manage plugin configurations and global rules
- 04Manage SSL certificates and consumer credentials
- 05Send requests to the gateway
Use cases
- 01Viewing APISIX routes and services in natural language
- 02Creating or updating routes and upstreams from an AI client
- 03Managing plugins, consumers and their credentials
MCP support
This project is an MCP server that exposes tools for managing APISIX Admin API resources, such as get_resource and create_route, to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y apisix-mcpAPISIX_SERVER_HOSTAPISIX_ADMIN_API_PORTAPISIX_ADMIN_API_PREFIXAPISIX_ADMIN_KEYSecretLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
32Saved tool list · updated 3w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | No | resource id |
| type | enum | Yes | resource typeroutes | services | upstreams | consumers | ssls | consumer_groups | plugin_configs | global_rules | stream_routes | protos | plugin_configs |
| page | number | No | page number |
| page_size | number | No | page size |
| name | string | No | filter name |
| labels | object | No | filter labels |
| uri | string | No | filter uri |
Details
From the project READMEAPISIX Model Context Protocol (MCP) Server
APISIX Model Context Protocol (MCP) server is used to bridge large language models (LLMs) with the APISIX Admin API. It aims to enable natural language-based interaction for viewing and managing resources in APISIX through MCP-compatible AI clients.
https://github.com/user-attachments/assets/081e878c-225e-4ff8-a9c5-5813f4784cfe
Support Operations
Common Operations
get_resource: Retrieve resources by type (routes, services, upstreams, etc.)delete_resource: Remove resources by IDsend_request_to_gateway: Send a request or multiple requests to the APISIX gateway
API Resources Operations
create_route/update_route/delete_route: Manage routescreate_service/update_service/delete_service: Manage servicescreate_upstream/update_upstream/delete_upstream: Manage upstreamcreate_ssl/update_ssl/delete_ssl: Manage SSL certificatescreate_or_update_proto: Manage protobuf definitionscreate_or_update_stream_route: Manage stream routes
Plugin Operations
get_all_plugin_names: Get all available plugin namesget_plugin_info/get_plugins_by_type/get_plugin_schema: Retrieve plugins configurationcreate_plugin_config/update_plugin_config: Manage plugin configurationscreate_global_rule/update_global_rule: Manage plugin global rulesget_plugin_metadata/create_or_update_plugin_metadata/delete_plugin_metadata: Manage plugin metadata
Security Configuration
get_secret_by_id/create_secret/update_secret: Manage secretscreate_or_update_consumer/delete_consumer: Manage consumersget_credential/create_or_update_credential/delete_credential/: Manage consumer credentialscreate_consumer_group/delete_consumer_group: Manage consumer groups
Configuration in AI client
Prerequisite
Follow the APISIX Getting Started guide to set up and run APISIX.
Installing via Smithery
To install APISIX Model Context Protocol Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @api7/apisix-mcp --client claude
Using npm
Configure your AI client (Cursor, Claude, Copilot, etc.) with following settings:
{
"mcpServers": {
"apisix-mcp": {
"command": "npx",
"args": [
"-y",
"apisix-mcp"
],
"env": {
"APISIX_SERVER_HOST": "your-apisix-server-host",
"APISIX_SERVER_PORT": "your-apisix-server-port",
"APISIX_ADMIN_API_PORT": "your-apisix-admin-api-port",
"APISIX_ADMIN_API_PREFIX": "your-apisix-admin-api-prefix",
"APISIX_ADMIN_KEY": "your-apisix-api-key"
}
}
}
}
Using source code
First clone the apisix-mcp repository:
git clone https://github.com/api7/apisix-mcp.git
cd apisix-mcp
Install the dependencies and build the project:
pnpm install
pnpm build
Configure your AI client (Cursor, Claude, Copilot, etc.) with following settings:
{
"mcpServers": {
"apisix-mcp": {
"command": "node",
"args": [
"your-apisix-mcp-path/dist/index.js"
],
"env": {
"APISIX_SERVER_HOST": "your-apisix-server-host",
"APISIX_SERVER_PORT": "your-apisix-server-port",
"APISIX_ADMIN_API_PORT": "your-apisix-admin-api-port",
"APISIX_ADMIN_API_PREFIX": "your-apisix-admin-api-prefix",
"APISIX_ADMIN_KEY": "your-apisix-api-key"
}
}
}
}
Environment Variables
| Variable | Description | Default Value |
|---|---|---|
APISIX_SERVER_HOST | Host that have access to your APISIX server | http://127.0.0.1 |
APISIX_SERVER_PORT | APISIX server port | 9080 |
APISIX_ADMIN_API_PORT | Admin API port | 9180 |
APISIX_ADMIN_API_PREFIX | Admin API prefix | /apisix/admin |
APISIX_ADMIN_KEY | Admin API authentication key | edd1c9f034335f136f87ad84b625c8f1 |
To view or modify Admin API configurations in APISIX, refer to the Admin API documentation.
Resources
Open MCP Marketplace API Support
- Allow AI App/Agent/LLM to find this MCP Server via common python/typescript API, search and explore relevant servers and tools
Example: Search Server and Tools
import anthropic
import mcp_marketplace as mcpm
result_q = mcpm.search(query="apisix mcp", mode="list", page_id=0, count_per_page=100, config_name="deepnlp") # search server by category choose various endpoint
result_id = mcpm.search(id="api7/apisix-mcp", mode="list", page_id=0, count_per_page=100, config_name="deepnlp") # search server by id choose various endpoint
tools = mcpm.list_tools(id="api7/apisix-mcp", config_name="deepnlp_tool")
# Call Claude to Choose Tools Function Calls
client = anthropic.Anthropic()
response = client.messages.create(model="claude-3-7-sonnet-20250219", max_tokens=1024, tools=tools, messages=[])
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.
