grantAgent0BillingConsentLABSCO SUMMARY
Reading telemetry is free; you pay when Agent0 does the digging.
Telemetry queries over MCP cost nothing. A full Agent0 investigation runs roughly 1-2 Agent0 credits, and the first time you ask for one your client puts a consent prompt in front of you — nothing is billed before you accept, and you can withdraw that consent from the same client later.
What it is
Dash0's own hosted MCP server. It connects an AI assistant to your observability data — metrics, logs, traces and the OpenTelemetry resources behind them — and can pass a full investigation to Agent0, Dash0's observability assistant.
What you get
- Metrics, logs and traces queried from inside the assistant you already have open
- OpenTelemetry resources and their relationships explored in plain language
- Dashboards and alerting rules managed over the same connection
- Agent0 delegation: it investigates and returns structured findings with a recommended fix, and applies nothing itself
- Nothing to install locally — a remote server over Streamable HTTP
- Authorization, token exchange and revocation recorded in your organization's audit logs
Requirements
A Dash0 organization with API access, and your MCP endpoint URL from Settings → Endpoints. Interactive clients authorize over OAuth 2.0; CI jobs and scripts use a Dash0 auth token with the dataset permissions they need. Clients without native support for remote servers connect through mcp-remote.
Setup effort
Follow the published steps — Log in to the Dash0 app (https://app.dash0.com) and open your organization settings
USE CASES
Looking into a production incident without changing windows
Query the logs, traces and metrics for the affected service from the assistant you are already debugging in.
Finding out what a service depends on
Explore the OpenTelemetry resources and their relationships in plain language, instead of assembling the picture from dashboards.
Handing off a root-cause hunt
Delegate the investigation to Agent0 and get back structured findings with a recommended fix; applying it stays with you.
Keeping the paid part switched off
Check whether consent is on record, or withdraw it, and investigations stop running until you accept again.
4 tools
Listed in project docs. Your client may show a different list.
getAgent0BillingConsentwithdrawAgent0BillingConsentrunTaskBEFORE YOU INSTALL
What to know first
Tools you get
4 tools named in the project's documentation. Only runTask and three Agent0 billing-consent tools are named; the metrics, logs, traces, dashboard and alerting tools are not, so list Dash0 tools once connected. Telemetry queries are free; an Agent0 investigation costs about 1-2 credits.
INSTALLATION
Connect your client
Server setup
Log in to the Dash0 app (https://app.dash0.com) and open your organization settings
Click on Endpoints > MCP and copy the endpoint URL for your region
Click on Auth Tokens and create or reuse an existing token with All permissions on the Dataset(s) you want to work with
Add the streamableHttp mcpServers configuration to your AI assistant / MCP client; <YOUR_ENDPOINT_MCP> is the endpoint URL you copied and <YOUR_DASH0_AUTH_TOKEN> the token
If your client does not support remote MCP servers or Streamable HTTP, use the mcp-remote bridge configuration instead
MCP Clients
Cursor — token
{
"mcpServers": {
"dash0": {
"type": "streamableHttp",
"url": "<YOUR_ENDPOINT_MCP>",
"headers": {
"Authorization": "Bearer <YOUR_DASH0_AUTH_TOKEN>"
}
}
}
}Other MCP clients — token
{
"mcpServers": {
"dash0": {
"type": "streamableHttp",
"url": "<YOUR_ENDPOINT_MCP>",
"headers": {
"Authorization": "Bearer <YOUR_DASH0_AUTH_TOKEN>"
}
}
}
}Clients spell the "type" value differently: Claude Code and VS Code use "http", Cline uses "streamableHttp", and Roo Code uses "streamable-http". Claude Desktop does not accept a URL entry in its config file; remote servers go under Settings → Connectors.
Any MCP client — mcp-remote
{
"mcpServers": {
"dash0": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"<YOUR_ENDPOINT_MCP>",
"--header",
"Authorization: Bearer ${DASH0_AUTH_TOKEN}"
],
"env": {
"DASH0_AUTH_TOKEN": "<YOUR_DASH0_AUTH_TOKEN>"
}
}
}
}Values written as ${…} are filled in only by clients that expand variables.