Connects LLMs to the Apache APISIX Admin API so they can query and manage routes, services and other gateway resources.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add apisix --env APISIX_SERVER_HOST='<APISIX_SERVER_HOST>' --env APISIX_SERVER_PORT='<APISIX_SERVER_PORT>' --env APISIX_ADMIN_API_PORT='<APISIX_ADMIN_API_PORT>' --env APISIX_ADMIN_API_PREFIX='<APISIX_ADMIN_API_PREFIX>' --env APISIX_ADMIN_KEY='<APISIX_ADMIN_KEY>' -- npx -y apisix-mcp~/.codex/config.toml
[mcp_servers.apisix]
command = "npx"
args = ["-y", "apisix-mcp"]
env = { APISIX_SERVER_HOST = "<APISIX_SERVER_HOST>", APISIX_SERVER_PORT = "<APISIX_SERVER_PORT>", APISIX_ADMIN_API_PORT = "<APISIX_ADMIN_API_PORT>", APISIX_ADMIN_API_PREFIX = "<APISIX_ADMIN_API_PREFIX>", APISIX_ADMIN_KEY = "<APISIX_ADMIN_KEY>" }
# codex mcp add apisix --env APISIX_SERVER_HOST='<APISIX_SERVER_HOST>' --env APISIX_SERVER_PORT='<APISIX_SERVER_PORT>' --env APISIX_ADMIN_API_PORT='<APISIX_ADMIN_API_PORT>' --env APISIX_ADMIN_API_PREFIX='<APISIX_ADMIN_API_PREFIX>' --env APISIX_ADMIN_KEY='<APISIX_ADMIN_KEY>' -- npx -y apisix-mcp~/.cursor/mcp.json
{
"mcpServers": {
"apisix": {
"command": "npx",
"args": [
"-y",
"apisix-mcp"
],
"env": {
"APISIX_SERVER_HOST": "<APISIX_SERVER_HOST>",
"APISIX_SERVER_PORT": "<APISIX_SERVER_PORT>",
"APISIX_ADMIN_API_PORT": "<APISIX_ADMIN_API_PORT>",
"APISIX_ADMIN_API_PREFIX": "<APISIX_ADMIN_API_PREFIX>",
"APISIX_ADMIN_KEY": "<APISIX_ADMIN_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"apisix": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"apisix-mcp"
],
"env": {
"APISIX_SERVER_HOST": "<APISIX_SERVER_HOST>",
"APISIX_SERVER_PORT": "<APISIX_SERVER_PORT>",
"APISIX_ADMIN_API_PORT": "<APISIX_ADMIN_API_PORT>",
"APISIX_ADMIN_API_PREFIX": "<APISIX_ADMIN_API_PREFIX>",
"APISIX_ADMIN_KEY": "<APISIX_ADMIN_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"apisix": {
"command": "npx",
"args": [
"-y",
"apisix-mcp"
],
"env": {
"APISIX_SERVER_HOST": "<APISIX_SERVER_HOST>",
"APISIX_SERVER_PORT": "<APISIX_SERVER_PORT>",
"APISIX_ADMIN_API_PORT": "<APISIX_ADMIN_API_PORT>",
"APISIX_ADMIN_API_PREFIX": "<APISIX_ADMIN_API_PREFIX>",
"APISIX_ADMIN_KEY": "<APISIX_ADMIN_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"apisix": {
"command": "npx",
"args": [
"-y",
"apisix-mcp"
],
"env": {
"APISIX_SERVER_HOST": "<APISIX_SERVER_HOST>",
"APISIX_SERVER_PORT": "<APISIX_SERVER_PORT>",
"APISIX_ADMIN_API_PORT": "<APISIX_ADMIN_API_PORT>",
"APISIX_ADMIN_API_PREFIX": "<APISIX_ADMIN_API_PREFIX>",
"APISIX_ADMIN_KEY": "<APISIX_ADMIN_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"apisix": {
"command": "npx",
"args": [
"-y",
"apisix-mcp"
],
"env": {
"APISIX_SERVER_HOST": "<APISIX_SERVER_HOST>",
"APISIX_SERVER_PORT": "<APISIX_SERVER_PORT>",
"APISIX_ADMIN_API_PORT": "<APISIX_ADMIN_API_PORT>",
"APISIX_ADMIN_API_PREFIX": "<APISIX_ADMIN_API_PREFIX>",
"APISIX_ADMIN_KEY": "<APISIX_ADMIN_KEY>"
}
}
}
}Environment variables
APISIX_SERVER_HOSTAPISIX_SERVER_PORTAPISIX_ADMIN_API_PORTAPISIX_ADMIN_API_PREFIXAPISIX_ADMIN_KEY
Replace the placeholders with your own credentials and keep them out of version control.