Atlas / MCP servers / api7 / Apisix

ApisixCAUTION

mcp/api7/apisix

APISIX Model Context Protocol (MCP) server is used to bridge large language models (LLMs) with the APISIX Admin API.

Verdict
CAUTION
Grade
B
Trust score
89 /100
Exposed tools
32 6r · 22w · 4d
Transport
stdio
License
Apache-2.0
Stars
38
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://mseep.ai/app/api7-apisix-mcp)

[](https://smithery.ai/server/@api7/apisix-mcp)

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
Read from source at commit a58be1abf94fOBSERVED · 2026-10-08
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add apisix-mcp --env APISIX_ADMIN_KEY=${APISIX_ADMIN_KEY} -- npx -y [email protected]
claude-desktop
{
  "mcpServers": {
    "apisix-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "APISIX_ADMIN_KEY": "${APISIX_ADMIN_KEY}"
      }
    }
  }
}
03

Exposed tools (32)

6 read · 22 write · 4 destructive. Blast radius: 4 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
create_consumer_groupwriteCreate a consumer group
create_global_rulewriteCreate a global rule
create_or_update_consumerwriteCreate a consumer, if the consumer already exists, it will be updated
create_or_update_credentialwriteCreate or update a credential for a consumer
create_or_update_plugin_metadatawriteCreate or update plugin metadata
create_or_update_protowriteCreate a proto, if the proto already exists, it will be updated
create_or_update_stream_routewriteCreate a stream route, if the stream route already exists, it will be updated
create_plugin_configwriteCreate a new plugin config
create_routewriteCreate a route
create_secretwriteCreate a secret
create_servicewriteCreate a service
create_sslwriteCreate an SSL certificate
create_upstreamwriteCreate an upstream service with load balancing settings
delete_credentialdestructiveDelete a credential for a consumer
delete_plugin_metadatadestructiveDelete plugin metadata
delete_resourcedestructiveDelete a resource by ID
delete_secretdestructiveDelete a secret by ID
get_all_plugin_namesreadGet all plugin names
get_credentialreadGet all credentials or a specific credential for a consumer
get_plugin_metadatareadGet metadata for a specific plugin
get_plugin_schemareadGet all plugins schema or a specific plugin schema by name
get_resourcereadGet resource details by ID or list all resources
get_secret_by_idreadGet a secret by ID
send_request_to_gatewaywriteSend a request or multiple requests to the APISIX gateway
update_consumer_groupwriteUpdate specific attributes of an existing consumer group
update_global_rulewriteUpdate specific attributes of an existing global rule
update_plugin_configwriteUpdate a plugin config
update_routewriteUpdate specific attributes of an existing route
update_secretwriteUpdate specific attributes of an existing secret
update_servicewriteUpdate specific attributes of an existing service
update_sslwriteUpdate specific attributes of an existing SSL certificate
update_upstreamwriteUpdate specific attributes of an existing upstream
04

Trust audit

CAUTIONgrade B · trust 89/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeWARN
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (1 observation(s))
Network
declared (5 observation(s))
Shell
none-observed
Dependencies
not all pinned
Secrets in source
none-found

Findings (4)

MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
src/utils/env.ts:1
export const APISIX_SERVER_HOST = process.env.APISIX_SERVER_HOST || "http://127.0.0.1";
MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
delete_credential, delete_plugin_metadata, delete_resource, delete_secret
Why it matters. 4 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
readme.md:123
| `APISIX_SERVER_HOST`      | Host that have access to your APISIX server | `http://127.0.0.1`                 |
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@modelcontextprotocol/sdk, axios, zod, @eslint/js, @types/node, eslint, globals, shx
Why it matters. 11 dependency range(s) float
Fix. pin exact versions or ship a lockfile

Gates applied: no_behavioural_pass.

Audited 2026-10-08 · audit v0.4.1 · source sha a58be1abf94ffull audit observations/trust-audit/mcp-server/api7__apisix.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-08a58be1abf94fCAUTIONB89first audit
06

Questions

What is the Apisix MCP server?

APISIX Model Context Protocol (MCP) server is used to bridge large language models (LLMs) with the APISIX Admin API.

What tools does Apisix expose?

32 in total: 6 read-only, 22 that write, and 4 that can delete or overwrite (delete_credential, delete_plugin_metadata, delete_resource, delete_secret). Every one is listed on this page with its risk.

Is Apisix safe to connect to an agent?

With care. The audit graded it B (89/100) and found 4 things worth knowing before you trust this server, listed below with the exact line each was found on. Separately from the audit: 4 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does Apisix need?

It reads APISIX_ADMIN_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does Apisix run?

It speaks stdio, so it runs as a local process your client starts. It is published on npm as apisix-mcp at 0.0.7.

How current is this page?

The grade is for one exact copy of the source (a58be1abf94f), read on 2026-10-08. The repository is watched and re-audited when it changes.

Advertisement