Answers questions about the Canopy dashboards and API from the published docs. No sign-in.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
What a capability such as env_roles.manage or billing.manage lets someone do, and which pages it opens. The answer to "why can't I see this button": a page shows only for someone holding one of its listed capabilities, and its write actions only for the matching manage capability.
A capability key, e.g. env_roles.view.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
claude mcp add --transport http docs https://canopy-io.com/mcp
What a capability such as env_roles.manage or billing.manage lets someone do, and which pages it opens. The answer to "why can't I see this button": a page shows only for someone holding one of its listed capabilities, and its write actions only for the matching manage capability.
| Argument | Type | Description |
|---|---|---|
| capability* | string | A capability key, e.g. env_roles.view. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"capability"
],
"properties": {
"capability": {
"type": "string",
"description": "A capability key, e.g. env_roles.view."
}
}
}Given what someone wants to do ("rotate a webhook secret", "invite an administrator", "why can't I see Hierarchy"), return the pages where it happens, ranked, each with its menu path, the capability that opens it, and its guide.
| Argument | Type | Description |
|---|---|---|
| query* | string | What the person wants to do, in their words. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 2,
"description": "What the person wants to do, in their words."
}
}
}A docs page as markdown: for a dashboard guide, the menu path, the exact controls to click in order, and the reasons a control may be missing. Pass the guide URL or path from find_surface or list_surfaces, or a surface id such as console.roles.
| Argument | Type | Description |
|---|---|---|
| page* | string | A docs URL, a /docs/... path, or a surface id. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"page"
],
"properties": {
"page": {
"type": "string",
"description": "A docs URL, a /docs/... path, or a surface id."
}
}
}Every left-nav page of both signed-in applications: the application, the menu path in the labels on screen, the capability that opens it, what must be selected first, and the guide that walks through it. The same data as /ai/ui-map.json.
| Argument | Type | Description |
|---|---|---|
| application | string | Limit to one application. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"application": {
"enum": [
"Developer Console",
"Admin Workspace"
],
"type": "string",
"description": "Limit to one application."
}
}
}Search the published OpenAPI documents by words from the task or the resource. Returns method, path, operation id, and the reference page for each match. Reference pages live at /docs/api-reference/{operationId}; never guess those URLs.
| Argument | Type | Description |
|---|---|---|
| query* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 2
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 1, 2026.