Back to Dashfeed

Dashfeed MCP

Connect Claude, Cursor, Windsurf, or Codex to your Dashfeed workspace using the Model Context Protocol.

Quick Setup

Claude Desktop Setup

  1. Go to your workspace Settings > Access Tokens.
  2. Click 'Create Token' and select the scopes you need.
  3. Copy the token (it's shown only once).
  4. Open Claude Desktop settings (Cmd+, or Ctrl+,).
  5. Go to Developer > Edit Config.
  6. Add the Dashfeed MCP server configuration (see below).
  7. Restart Claude Desktop.
{
  "mcpServers": {
    "dashfeed": {
      "command": "npx",
      "args": [
        "-y",
        "@dashfeed/mcp"
      ],
      "env": {
        "DASHFEED_API_BASE_URL": "https://api.dashfeed.ai/core/v1",
        "DASHFEED_TOKEN": "<your-token>"
      }
    }
  }
}

Tool groups

Every workspace gets the core tools (at most 40); a new workspace also starts with Dashboards and Content. A workspace owner or admin turns groups on or off at Settings → Agents → MCP tool groups; the same groups apply to Dashy. Calling a tool whose group is off answers TOOL_GROUP_DISABLED naming the group. Changes (WRITE tools) also need "Allow AI agents to make changes" on that page, which is off by default; reads and previews always work. Agents can find tools in groups that are off with search_tools. On a sign-in that covers several workspaces, the tool list shows core only until you pick a workspace with set_workspace.

GroupToolsWhat it covers
Core (always on)40Always on: workspaces, the data graph, the semantic layer, raw SQL (for users allowed it), model and source iteration, job runs, metric annotations and search_tools.
Dashboards44Dashboards, canvas dashboards, widgets, filters and shares, plus the core datasets and catalog metrics widgets read.
Content50Posts, comments, publications, Drive, tasks, the company brief and marketing drafts.
Monitoring27Monitors and monitoring plans, alert events and history, personal metric alerts, data health events, reconciliation checks, insights and the attention feed.
Admin18Members, groups, invitations, workspace settings, billing and usage.
Finance5The Finance module: summary, transactions, budgets, recurring spend and review tasks.
Packages5Model packages: the catalog, installs, update proposals and semantic deviations.
Changesets11Reviewable model and semantic changes: open a changeset, add items, validate, submit for review, then approve, reject, promote or discard. Nothing reaches live until it is promoted.
Ingestion41Connection create/update/delete and testing, syncs, loads, graph assets, source removal, data exports (with their SFTP destinations and SSH keys) and scheduled reports.
Vertical insights4Module insight tools: churn risk, e-commerce revenue reconciliation, personal finance and pest-control retention.

Clients with native tool search (the Anthropic API's defer_loading) can load the MCP server deferred and keep a handful of core tools always loaded — for example list_metrics, query_metrics, get_metric_details and search_tools.

PAT Scopes

Recommended Presets

Read-only
Safe for exploration and monitoring
15 scopes
Standard
Read + write for common workflows
25 scopes
Full access
All scopes for admin-level automation
34 scopes
ScopeDescription
workspaces:readView workspace info
workspaces:writeUpdate workspace settings
posts:readRead posts, comments, feed, search
posts:writeCreate/update/delete posts and comments, reactions
dashboards:readView dashboards and widgets
dashboards:writeCreate/update/delete dashboards, widgets, share links
datasets:readView datasets, run preview/query
datasets:writeCreate/update/delete datasets
metrics:readView metrics and series data
metrics:writeAuthor semantic metrics in the data hub (apply_semantic_definition), edit metric annotations (setting a metric's certification, owner, target or alert thresholds needs metrics:admin)
metrics:adminMetric admin: certify, change owner, targets, delete and watchers on semantic metrics (access management stays with workspace owners and admins); not part of the Read / Read-and-write presets.
members:readView members and groups
members:writeInvite/update/remove members, manage groups
monitoring:readView alerts, monitors, monitoring plans
monitoring:writeSet alert rules, create/update monitors, approve plans
publications:readView publications and guidelines
publications:writeCreate/update/publish/delete publications
connections:readView data source connections and metadata
connections:writeCreate/update/delete data-hub connections and trigger dataset re-sync
warehouse:readList the workspace's warehouses (list_warehouses), browse the default warehouse's schemas, and run read-only SQL against it via MCP execute_sql (also needs the Run raw SQL permission)
tasks:readView tasks
tasks:writeCreate/update tasks
insights:readView insights
insights:writeCreate/update insights
finance:readView permitted personal-finance facts and summaries
drive:readView Drive projects, artifacts, metadata, versions, and content
drive:writeCreate/update/move/duplicate/restore/delete Drive projects and artifacts
data_exports:readView data-export definitions and runs
data_exports:writeCreate/update data exports
audiences:writeCreate governed audience segment drafts (incl. generate_segment)
marketing:writeCreate governed marketing draft suggestions (incl. draft_marketing_email)
data_health:readView data-health alert settings and open breaches
data_health:writeReport data-health events (source freshness, dbt tests, stale dashboards) from external jobs
billing:readView usage and cost, budgets and plan options (usage billing; available once enabled for tokens)

Drive Tools

Add drive:read to inspect Drive projects and artifacts. Add drive:write for project/artifact create, update, move, duplicate, restore, and delete actions.

Project + Artifact Read

list_drive_projects
list_drive_artifacts { "project_id": "PROJECT_UUID" }
get_drive_artifact_content {
  "artifact_id": "ARTIFACT_UUID",
  "encoding": "inline",
  "max_bytes": 65536
}

Mutation Flow

create_drive_artifact {
  "title": "Sprint notes",
  "kind": "TEXT",
  "content": "Initial notes",
  "confirm": true
}
move_drive_artifact {
  "artifact_id": "ARTIFACT_UUID",
  "project_id": null,
  "confirm": true
}

HTML Upload

upload_drive_html is a purpose-built wrapper that stores HTML as a kind: HTML Drive artifact (text/html; charset=utf-8). Provide exactly one of html (inline) or html_base64 (base64-encoded UTF-8). Fragments are allowed. Uploaded HTML is previewed in a sandboxed iframe and never executes in the Dashfeed app shell.

upload_drive_html {
  "title": "Quarterly recap",
  "html": "<section><h1>Q2</h1><p>Revenue up 12%.</p></section>",
  "status": "PUBLISHED",
  "confirm": true
}
// or, for base64-encoded HTML:
upload_drive_html {
  "title": "Quarterly recap",
  "html_base64": "PHA+aGk8L3A+",
  "confirm": true
}

Marketing Tools

Add marketing:write to create governed EMAIL draft suggestions with draft_marketing_email. The tool requires confirmation (confirm: true) and only creates a PROPOSED suggestion — it never publishes, approves, or sends.

Input

draft_marketing_email {
  "goal": "Re-engage churned customers",
  "tone": "friendly",             // optional
  "templateId": "TEMPLATE_UUID",  // optional
  "segmentId": "SEGMENT_UUID",    // optional
  "variantCount": 2,              // optional: 1 | 2 | 3
  "confirm": true                 // required
}

Output

{
  "suggestionId": "SUGGESTION_UUID",
  "status": "PROPOSED",
  "drafts": [
    {
      "subject": "We miss you — here's 20% off",
      "preheader": "Come back and save",
      "html": "<section>...</section>",
      "text": "Come back and save...",
      "rationale": "Win-back incentive ..."
    }
  ]
}

Billing Tools

Add billing:read to read a usage-billed workspace's spend, budgets and plan options. All three tools are read-only, owners and admins. They answer only for workspaces on usage pricing (or in shadow); a legacy or exempt workspace returns BILLING_MODE_LEGACY or BILLING_MODE_EXEMPT.

Input

get_billing_usage {
  "period": "current",   // optional: "current" | "YYYY-MM"
  "group_by": "resource" // optional: "meter" | "resource"
}
list_billing_budgets {}
get_billing_plan_options {}

Returns

  • get_billing_usage: spend, forecast, budget and balance for the period, by meter; the top resources with group_by: "resource".
  • list_billing_budgets: each budget with its amount, spend, forecast and state.
  • get_billing_plan_options: the current plan, what each plan would cost at current usage, and the cheapest.

Troubleshooting

I get 'MISSING_SCOPE' errors
Your PAT doesn't have the required scope for the tool you're calling. Create a new token with the needed scopes, or use the 'Full access' preset.
I get 'RATE_LIMITED' errors
The default rate limit is 100 requests per minute per tool. Wait for the reset window, or contact support for higher limits.
I see 'UNAUTHORIZED' on startup
Your DASHFEED_TOKEN may be expired or revoked. Generate a new token in Settings > Access Tokens.
run_query returns 'CUSTOM_SQL_MOVED', or a 'deprecation' field
run_query runs a dataset's stored query. Free-form SQL goes through execute_sql, which needs the Run raw SQL permission (owners and admins have it; an admin can grant it under Settings > Permissions) and a token with the warehouse:read scope. Until 2026-12-01, run_query with a 'sql' argument still works for callers who have both: it runs as execute_sql and returns a 'deprecation' field. Move those calls to execute_sql before then. Callers missing either one get CUSTOM_SQL_MOVED.
I can't find my workspace
Use 'list_workspaces' to see all workspaces you have access to, then 'set_workspace' to switch.