Skip to content

Commit 34775d2

Browse files
authored
Add Consul MCP server (#253)
Claude-Session: https://claude.ai/code/session_01S58U7phvDgphx6ZTXuWMJQ Signed-off-by: Mohammod Al Amin Ashik <maa.ashik00@gmail.com>
1 parent 9854d10 commit 34775d2

1 file changed

Lines changed: 93 additions & 0 deletions

File tree

servers/com.consul-mcp-docker.json

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
{
2+
"$schema": "../schemas/server-definition.schema.json",
3+
"id": "com.consul-mcp-docker",
4+
"name": "Consul (Docker)",
5+
"alias": "consul",
6+
"description": "Connect to HashiCorp Consul via Docker for service discovery, health checks, key-value configuration, and service mesh operations. Query the catalog, inspect node and service health, read and write KV data, and manage ACLs in an isolated container.",
7+
"logo": "https://avatars.githubusercontent.com/u/761456?v=4",
8+
"schema_version": "2.1",
9+
"categories": [
10+
"developer-tools"
11+
],
12+
"tags": [
13+
"consul",
14+
"hashicorp",
15+
"service-discovery",
16+
"service-mesh",
17+
"key-value",
18+
"health-checks",
19+
"acl",
20+
"devops",
21+
"docker"
22+
],
23+
"transport": {
24+
"type": "stdio",
25+
"command": "docker",
26+
"args": [
27+
"run",
28+
"-i",
29+
"--rm",
30+
"-e",
31+
"CONSUL_HTTP_ADDR",
32+
"-e",
33+
"CONSUL_HTTP_TOKEN",
34+
"hashicorp/consul-mcp-server:latest"
35+
],
36+
"env": {
37+
"CONSUL_HTTP_ADDR": "${input:CONSUL_HTTP_ADDR}",
38+
"CONSUL_HTTP_TOKEN": "${input:CONSUL_HTTP_TOKEN}"
39+
},
40+
"metadata": {
41+
"inputs": [
42+
{
43+
"id": "CONSUL_HTTP_ADDR",
44+
"label": "Consul HTTP Address",
45+
"description": "Base URL of your Consul HTTP API. Use host.docker.internal instead of localhost to reach a Consul agent running on the host machine (e.g., http://host.docker.internal:8500). Defaults to http://127.0.0.1:8500.",
46+
"type": "url",
47+
"required": true,
48+
"secret": false,
49+
"placeholder": "http://localhost:8500",
50+
"default": "http://localhost:8500"
51+
},
52+
{
53+
"id": "CONSUL_HTTP_TOKEN",
54+
"label": "Consul ACL Token",
55+
"description": "Consul ACL token used to authenticate with the HTTP API. Only required when ACLs are enabled on your Consul cluster; the token's policies determine which operations are permitted. Leave empty if ACLs are disabled.",
56+
"type": "text",
57+
"required": false,
58+
"secret": true,
59+
"placeholder": "********-****-****-****-************",
60+
"obtain": {
61+
"url": "https://developer.hashicorp.com/consul/commands/acl/token/create",
62+
"instructions": "1. Ensure ACLs are enabled on your Consul cluster\n2. Create a token scoped to the policies you need: consul acl token create -policy-name=<policy>\n3. Copy the SecretID value from the output",
63+
"button_label": "Create Token"
64+
}
65+
}
66+
]
67+
}
68+
},
69+
"auth": {
70+
"type": "optional_api_key",
71+
"instructions": "No token is required when Consul ACLs are disabled. When ACLs are enabled, provide a CONSUL_HTTP_TOKEN whose policies grant access to the operations you want to perform. Create one with `consul acl token create`."
72+
},
73+
"contributor": {
74+
"name": "HashiCorp",
75+
"github": "hashicorp",
76+
"url": "https://www.consul.io"
77+
},
78+
"links": {
79+
"repository": "https://github.com/hashicorp/consul-mcp-server",
80+
"homepage": "https://www.consul.io",
81+
"documentation": "https://github.com/hashicorp/consul-mcp-server#readme"
82+
},
83+
"platforms": [
84+
"all"
85+
],
86+
"capabilities": {
87+
"tools": true,
88+
"resources": false,
89+
"prompts": false,
90+
"read_only_mode": false
91+
},
92+
"changelog_url": "https://github.com/hashicorp/consul-mcp-server/releases"
93+
}

0 commit comments

Comments
 (0)