Rootpath MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FALKORDB_URL | No | URL of the FalkorDB instance holding the service graph, e.g. redis://localhost:6380 | |
| ONCALL_ALLOW_ACTIONS | No | Set to 0 to force every action to be a dry run, for read-only deployments. | 1 |
| ONCALL_CHANGE_FREEZE | No | Set to 1 to activate a change freeze that blocks all real actions. | 0 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_service_healthC | Live health from the services' stats endpoints (last 20s). |
| get_logsC | Recent log entries, de-duplicated: distinct messages with counts, plus the latest entries. |
| rank_suspectsA | Rank root-cause suspects for a symptom by walking the dependency graph downstream from it, combining live health, recent changes (deploys + flag flips), and betweenness centrality. Also returns the top suspect's runbooks and the past incidents caused there, with their fixes. |
| get_blast_radiusB | Who is affected if |
| recent_changesB | Deploys and feature-flag flips in the time window, scoped through the graph to |
| trace_dependency_pathB | Shortest call path between two services (algo.SPpaths), with live health per hop. |
| get_ownerC | Owning team, who is on call, escalation path and runbooks for a service. |
| find_similar_incidentsA | Search incident memory: full-text match on past symptoms, boosted when the past incident involved the same service. Returns root causes and what fixed them. |
| explain_incidentB | The full evidence chain for an incident: impacted services, root cause, actions and why. |
| query_graphA | Escape hatch: run your own read-only Cypher (RO_QUERY, 2s timeout, max 100 rows). |
| open_incidentB | Open an incident in the graph (or return the one already open for these services). |
| notify_ownerC | Page the on-call person of the owning team (Slack/Discord webhook if configured). |
| resolve_incidentB | Close the incident and write what was learned into incident memory. |
| map_overviewA | What the graph already knows: counts per node label, every service with its owner and dependencies, teams and flags. Call this before mapping so you update instead of duplicating. |
| upsert_serviceB | Create or update a service (and its owning team). tier: 1 = user-facing or critical, 3 = background. |
| add_dependencyA | Record that |
| set_teamC | Create or update a team: chat channel, members, who is on call now, and the team it escalates to. |
| add_runbookC | Attach a runbook (plain-text steps) to a service. |
| register_flagC | Register a feature flag and the services whose behaviour it changes. |
| record_changeA | Record a deploy (kind="deploy": service, version, prev_version) or a flag flip (kind="flag": flag,
enabled) that happened at |
| rollback_serviceC | Redeploy the version that ran before the latest deploy of |
| restart_serviceC | Restart a service's container (clears in-memory state such as stuck connection pools). |
| set_feature_flagC | Turn a feature flag on or off (takes effect within a second, no deploy). |
| verify_recoveryA | Poll live health until |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 24 tools
Most tools have clearly distinct purposes across graph discovery, diagnostics, incident lifecycle, and topology writes. A few read-only graph tools such as get_blast_radius, trace_dependency_path, and recent_changes are related but distinguishable by their descriptions.
The set is predominantly consistent snake_case with verb_noun names such as get_logs, open_incident, resolve_incident, and rollback_service. Minor deviations like recent_changes and map_overview are still readable and fit the domain.
At 24 tools, the surface is heavy for an incident-response server and borders on being difficult to scan. Each tool has a role, but the count could likely be reduced by combining some graph-reading operations.
The server covers the core lifecycle well: discovery, diagnosis, incident opening/resolution, ownership, runbooks, change tracking, flags, and recovery actions. Minor gaps exist around deleting or updating certain entities such as dependencies and runbooks, though query_graph provides an escape hatch for reads.