mcpField
A
APISIX Mcp

APISIX Mcp

Local
github.com/api7Cloud & Infra38Updated 71w ago

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

  1. 01Query and delete APISIX resources
  2. 02Manage routes, services and upstreams
  3. 03Manage plugin configurations and global rules
  4. 04Manage SSL certificates and consumer credentials
  5. 05Send requests to the gateway

Use cases

  1. 01Viewing APISIX routes and services in natural language
  2. 02Creating or updating routes and upstreams from an AI client
  3. 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.

mcp.json · Universal config
{
"mcpServers": {
"apisix": {
"command": "npx",
"args": [
"-y",
"apisix-mcp"
],
"env": {
"APISIX_SERVER_HOST": "<APISIX_SERVER_HOST>",
"APISIX_ADMIN_API_PORT": "<APISIX_ADMIN_API_PORT>",
"APISIX_ADMIN_API_PREFIX": "<APISIX_ADMIN_API_PREFIX>",
"APISIX_ADMIN_KEY": "<APISIX_ADMIN_KEY>"
}
}
}
}
Run commandnpx -y apisix-mcp
Environment variables to set
APISIX_SERVER_HOST
APISIX_ADMIN_API_PORT
APISIX_ADMIN_API_PREFIX
APISIX_ADMIN_KEYSecret

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmapisix-mcp

Tools

32

Saved tool list · updated 3w ago

ParameterTypeRequiredDescription
idstringNoresource id
typeenumYesresource typeroutes | services | upstreams | consumers | ssls | consumer_groups | plugin_configs | global_rules | stream_routes | protos | plugin_configs
pagenumberNopage number
page_sizenumberNopage size
namestringNofilter name
labelsobjectNofilter labels
uristringNofilter uri

Details

From the project README

MseeP.ai Security Assessment Badge

APISIX Model Context Protocol (MCP) Server

smithery badge

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 ID
  • send_request_to_gateway: Send a request or multiple requests to the APISIX gateway
API Resources Operations
  • create_route/update_route/delete_route: Manage routes
  • create_service/update_service/delete_service: Manage services
  • create_upstream/update_upstream/delete_upstream: Manage upstream
  • create_ssl/update_ssl/delete_ssl: Manage SSL certificates
  • create_or_update_proto: Manage protobuf definitions
  • create_or_update_stream_route: Manage stream routes
Plugin Operations
  • get_all_plugin_names: Get all available plugin names
  • get_plugin_info/get_plugins_by_type/get_plugin_schema: Retrieve plugins configuration
  • create_plugin_config/update_plugin_config: Manage plugin configurations
  • create_global_rule/update_global_rule: Manage plugin global rules
  • get_plugin_metadata/create_or_update_plugin_metadata/delete_plugin_metadata: Manage plugin metadata
Security Configuration
  • get_secret_by_id/create_secret/update_secret: Manage secrets
  • create_or_update_consumer/delete_consumer: Manage consumers
  • get_credential/create_or_update_credential/delete_credential/: Manage consumer credentials
  • create_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

VariableDescriptionDefault Value
APISIX_SERVER_HOSTHost that have access to your APISIX serverhttp://127.0.0.1
APISIX_SERVER_PORTAPISIX server port9080
APISIX_ADMIN_API_PORTAdmin API port9180
APISIX_ADMIN_API_PREFIXAdmin API prefix/apisix/admin
APISIX_ADMIN_KEYAdmin API authentication keyedd1c9f034335f136f87ad84b625c8f1

To view or modify Admin API configurations in APISIX, refer to the Admin API documentation.

Resources

Open MCP Marketplace API Support

MCP Marketplace User Review Rating Badge|GitHub|Doc|MCP Marketplace

  • 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

Markdown supported

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.