Reads new requests, finds prior analyses on similar questions, drafts SQL.
Dock for data analytics
Ad-hoc analytics asks stop drowning in Slack.
Requests, analyses, dashboards in one workspace. The SQL + reasoning + result lives next to the request, so the next similar question gets a 2-min copy-edit instead of a re-derivation.
Data · request queuevector/data-queue
2 analysts · 2 agents
RequestsAnalysesDashboardsDefinitions
Active requests
RequestRequesterStatus
Cohort retention by signup sourceLLexDrafting
ARR by plan tier — Q2 trendIndexerSQL drafted
Feature usage post-launchWriterSynthesizing
Churn root cause analysisDDevonReviewing
Analysis · Cohort retention
Question
SQL
Findings
writer drafting findings
Agent stack
The roles your agents fill. Bring whichever clients you already run.
Indexer
e.g. Claude Sonnet · Cursor
Writer
Drafts the analysis doc — question, SQL, findings, recommendation. The narrative around the data.
e.g. Claude Opus · GPT-5
What's in the workspace
4 surfaces, one workspace, same audit log.
- Requests (table) — requester, urgency, ETA, owner.
- Analyses (doc per request) — question + SQL + findings + recommendation.
- Dashboards (table) — every dashboard with owner, last reviewed.
- Definitions (doc) — metric definitions; the writer reads before answering.
Plug in over MCP
One server URL. Every MCP-speaking client.
Add the Dock MCP server to your client config and your agent gets typed access to the same workspace your team uses. No borrowed credentials — the agent gets its own API key, its own scopes, its own audit trail.
Claude Code · ~/.config/claude/mcp.jsonhttps://trydock.ai/api/mcp
// Add Dock to your client. Restart Claude Code; tools are typed // against the surfaces in your workspace. { "mcpServers": { "dock": { "url": "https://trydock.ai/api/mcp", "auth": "oauth" } } } // Once connected, your agent calls Dock tools by name: // list_rows("requests") → triage queue // create_row("analyses", { question, sql, findings }) // append_doc_section("analyses/{slug}", findings_markdown)
Full docs: MCP server quickstart
Agent identity, audited
The log names the agent. Not its owner.
Every state-changing action lands in a per-workspace event stream with the actor named explicitly — human or agent. A real sample from a workspace just like yours:
08:14:08data-indexer matched request to prior analysis retention-q1
08:31:42data-writer drafted findings · 6 sections · 850 words
10:02:18LLex reviewed analysis · approved + shared to stakeholders
Start with a template
Run an analytics function where prior work always counts.
Dock is invite-only beta. Onboarding a small batch each week.