Kong Admin API MCP Server
Integrates with Kong Gateway Admin API to manage services, routes, consumers, plugins, upstreams, certificates, RBAC, workspaces, and more via CRUD and custom request tools.
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., "@Kong Admin API MCP Server List all services and their routes."
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.
Kong Admin API — MCP Server
An MCP server that exposes the full Kong Gateway Admin API (Enterprise & OSS) as tools an AI assistant can call. Configure it with your Admin API URL and admin token, and the assistant can manage services, routes, consumers, plugins, upstreams, certificates, RBAC, workspaces — anything the Admin API can do.
Built against the Kong Gateway Admin EE API 3.14.
What it can do
Every Admin API action is reachable. There are ergonomic CRUD tools for the standard entities plus a universal escape-hatch tool for everything else (nested resources, RBAC, keyring, schemas, declarative config, future endpoints).
Tool | Purpose |
| List entities ( |
| Get one entity by id or name ( |
| Create an entity ( |
| Partial update ( |
| Create-or-replace ( |
| Delete ( |
| Any request to any Admin API path (the catch-all) |
| Node info & version ( |
| Health / DB reachability ( |
| List EE workspaces |
| Get a plugin's config schema ( |
| Show the active connection settings (token masked) |
| Override admin URL / token / workspace / TLS at runtime |
The entity argument accepts plain names (services, routes, consumers, plugins, upstreams, certificates, ca_certificates, snis, vaults, consumer_groups, …) and nested collection paths (upstreams/<id>/targets, services/<id>/routes, consumers/<id>/key-auth, rbac/roles, …).
Related MCP server: litellm-admin-mcp
Install & build
cd kong-mcp
npm install # also builds to dist/
npm run build # rebuild after editsConfiguration
The connection is set via environment variables (see .env.example):
Variable | Default | Description |
|
| Base URL of the Admin API |
| (none) | Sent as the |
| (none) | Default EE workspace to scope requests to |
|
|
|
| (none) | Extra headers, e.g. |
You can also change the URL / token / workspace at runtime by asking the assistant to use the kong_configure tool — handy for switching between environments in one session.
Wiring it into an MCP client
Claude Code
claude mcp add kong \
--env KONG_ADMIN_URL=http://localhost:8001 \
--env KONG_ADMIN_TOKEN=your-rbac-token \
-- node /Users/monochong/Desktop/kong-mcp/dist/index.jsClaude Desktop / generic mcp.json
{
"mcpServers": {
"kong": {
"command": "node",
"args": ["/Users/monochong/Desktop/kong-mcp/dist/index.js"],
"env": {
"KONG_ADMIN_URL": "http://localhost:8001",
"KONG_ADMIN_TOKEN": "your-rbac-token",
"KONG_WORKSPACE": "default"
}
}
}
}Restart the client after adding the server.
Example prompts
"List all services, then show the routes for the one named
web-api.""Create a service
httpbinpointing athttp://httpbin.org, add a route on/get, then enable therate-limitingplugin at 100 req/min.""Show me the config schema for the
jwtplugin.""Create a consumer
aliceand a key-auth credential for her.""Switch to the
stagingworkspace and list its plugins." (useskong_configure)"What Kong version is running and is the database reachable?"
Notes
The token is masked anywhere config is displayed.
List endpoints follow Kong's
offset-based pagination; passfetch_all: trueto collect every page.For DB-less / declarative config, use
kong_requestwithPOST /config.Auth failures (401/403) and unreachable endpoints return clear, actionable error messages.
Development
npm run dev # run from TypeScript source via tsx
npm run watch # tsc --watchLicense
MIT
Available Tools
13 toolskong_configureConfigure connectionA
Override the Kong Admin API connection at runtime for this session: the admin URL, admin token (Kong-Admin-Token), default workspace, and TLS verification. Only the fields you pass are changed. Persist settings across restarts via the KONG_ADMIN_URL / KONG_ADMIN_TOKEN / KONG_WORKSPACE environment variables in your MCP client config.
Inputs: insecure, admin_url, workspace, admin_token.
kong_createCreate a Kong entityA
Create a new entity (POST /). Pass the entity body as data. Example: entity='services', data={ name:'example', url:'http://httpbin.org' }. Tip: use kong_plugin_schema first when creating plugins to get valid config fields.
Inputs: data (required), entity (required), workspace.
kong_deleteDelete a Kong entityB
Delete an entity (DELETE //). Returns HTTP 204 on success.
Inputs: id (required), entity (required), workspace.
kong_getGet a Kong entityA
Fetch a single entity by id or name (GET //). Many Kong entities accept either their UUID or their unique name/slug as the id.
Inputs: id (required), entity (required), workspace.
kong_get_configShow connection configA
Show the current Kong Admin API connection settings (admin URL, default workspace, whether a token is set). The token value is masked.
Inputs: no named parameters.
kong_listList Kong entitiesA
List entities of a given type from the Kong Admin API (GET on a collection). Supports filtering by tags and offset pagination. Use fetch_all to automatically follow pagination and return every item.
Inputs: entity (required), size, tags, offset, +2 more.
kong_list_workspacesList workspaces (EE)B
List all workspaces (Enterprise). Equivalent to GET /workspaces.
Inputs: fetch_all.
kong_node_infoKong node infoA
Get general node information (GET /): version, configuration, hostname, plugins available on the server, and database mode.
Inputs: no named parameters.
kong_node_statusKong node statusA
Get node health and metrics (GET /status): database reachability, connection counts, and memory usage.
Inputs: no named parameters.
kong_plugin_schemaGet plugin config schemaA
Fetch the configuration schema for a plugin (GET /schemas/plugins/). Use this before creating/updating a plugin to learn the valid config fields and their types/defaults. Example name: 'rate-limiting', 'key-auth', 'cors', 'jwt', 'acl'.
Inputs: name (required).
kong_requestRaw Kong Admin API requestA
Make an arbitrary request to any Kong Admin API endpoint. Use this for anything the CRUD tools don't cover: nested relations, RBAC, keyring, schemas, /status, /config (DB-less), bulk operations, etc. Examples: GET /status, GET /schemas/plugins/rate-limiting, POST /config (declarative), GET /services//routes.
Inputs: path (required), method (required), body, query, +1 more.
kong_updateUpdate a Kong entityA
Partially update an entity (PATCH //). Only the fields supplied in data are changed.
Inputs: id (required), data (required), entity (required), workspace.
kong_upsertUpsert a Kong entityA
Create or replace an entity at a known id/name (PUT //). Creates it if absent, fully replaces it if present.
Inputs: id (required), data (required), entity (required), workspace.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 13 tools
Each tool targets a distinct action (configure, create, delete, get, list, update, upsert) or specific resource (workspaces, node info, node status, plugin schema). The generic kong_request tool fills gaps without overlapping with the CRUD tools. No two tools have ambiguous purposes.
All tools follow the 'kong_<verb>' or 'kong_<verb>_<noun>' pattern consistently, using lowercase with underscores. Examples: kong_create, kong_list_workspaces, kong_node_info. This pattern makes prediction and selection straightforward for an agent.
With 13 tools, the set is well-scoped for a Kong Admin API client. It covers connection management, CRUD operations, node diagnostics, plugin schema inspection, and a fallback generic request. No tool feels superfluous or missing.
The tools provide full lifecycle coverage for Kong entities (create, read, update, delete, upsert, list with pagination). The node info/status tools cover administrative monitoring, and the generic kong_request handles any API endpoint not explicitly exposed (e.g., RBAC, declarative config). No obvious gaps.
Maintenance
Related MCP Connectors
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
MCP gateway: one connection for your AI apps, with tool policies, PII redaction and audit logs.
The OpenRouter for tools. One MCP connection gives any AI agent 254 hosted tools, pay per call.
Related MCP Servers
- AlicenseAqualityBmaintenancePortkey Admin API control-plane MCP server with Prisma AIRS interoperability guidance.194386 npm6MIT
- FlicenseNot gradedqualityDmaintenanceExposes LiteLLM Proxy admin APIs as MCP tools for managing internal users, virtual keys, and spend logs via streamable-http, enabling agents to administer LiteLLM without custom HTTP glue.1-
- AlicenseNot gradedqualityDmaintenanceExposes SAP AI Core APIs as MCP tools, enabling AI assistants to manage AI Core lifecycle and administration through natural language.7MIT
- AlicenseDqualityDmaintenanceExposes all Dokploy API endpoints as MCP tools, enabling AI models and other clients to manage projects, applications, databases, and more on a Dokploy server.10013 npmApache 2.0