Connects Claude to Dart AI's task management API with a focus on batch operations that avoid context window bloat. Instead of looping through tasks individually, you use DartQL selectors (SQL-92 WHERE syntax) to update or delete hundreds of tasks in one call. A 50-task update that normally burns 30K tokens takes around 200. Includes dry run modes for batch operations, CSV import with validation, full CRUD for tasks and docs, and search with filters. Useful when you're wrangling large task lists and don't want intermediate JSON responses eating your context. All operations hit production, but deletes are recoverable through Dart's trash system.
MCP server for Dart AI task management, optimized for batch operations and minimal context usage.
Instead of looping through tasks one-by-one (filling your context window with intermediate JSON), dart-query uses DartQL selectors and server-side batch operations to update hundreds of tasks in a single call. A 50-task update that would normally consume ~30K tokens takes ~200 tokens with zero context rot.
Visit https://app.dartai.com/?settings=account and copy your token (starts with dsa_).
npx (recommended)
{
"mcpServers": {
"dart-query": {
"command": "npx",
"args": ["-y", "@standardbeagle/dart-query"],
"env": {
"DART_TOKEN": "dsa_your_token_here"
}
}
}
}
SLOP-MCP (v0.10.0+)
slop register dart-query \
--command npx \
--args "-y" "@standardbeagle/dart-query" \
--env DART_TOKEN=dsa_your_token_here \
--scope user
info({ level: "overview" })
// Preview first
batch_update_tasks({
selector: "dartboard = 'Engineering' AND priority = 'high'",
updates: { status: "Doing" },
dry_run: true
})
// Execute
batch_update_tasks({
selector: "dartboard = 'Engineering' AND priority = 'high'",
updates: { status: "Doing" },
dry_run: false
})
| Group | Tools | Purpose |
|---|---|---|
| Discovery | info, get_config | Explore capabilities, workspace config |
| Task CRUD | create_task, get_task, update_task, delete_task, add_task_comment | Single task operations |
| Query | list_tasks, search_tasks | Find tasks with filters or full-text search |
| Batch | batch_update_tasks, batch_delete_tasks, get_batch_status | Bulk operations with DartQL selectors |
| Import | import_tasks_csv | Bulk create from CSV with validation |
| Docs | list_docs, create_doc, get_doc, update_doc, delete_doc | Document management |
See TOOLS.md for full parameter references, DartQL syntax, and CSV import format.
SQL-92 WHERE clause syntax for targeting tasks in batch operations:
dartboard = 'Engineering' AND priority = 'high' AND tags CONTAINS 'bug'
due_at < '2026-01-18' AND status <> 'Done'
title LIKE 'Task%' -- starts with
title LIKE '%auth%' -- contains substring
Operators: =, !=, <>, >, >=, <, <=, LIKE, IN, NOT IN, BETWEEN, IS NULL, IS NOT NULL, CONTAINS
Aliases: INCLUDES/HAS → CONTAINS · <> → !=
LIKE wildcards: % = any characters, _ = single character (case-insensitive)
All Dart AI operations are production (no sandbox). dart-query provides:
confirm: true) required for batch deletesMIT
DART_TOKEN*secretYour Dart AI API token (get it from: https://app.dartai.com/?settings=account)
com.mcparmory/google-sheets
domdomegg/google-sheets-mcp
henilcalagiya/google-sheets-mcp
cct15/war-dashboard-data
moooonad/mcp-google-sheets-full
io.github.br0ski777/csv-to-json