Dazbench

Task management your AI agents can actually run.

От сообщества: Добавлен пользователем или импортирован; проверьте владельца перед подключениемРаботаетБез входаГлобальныйБесплатноМожет изменять данные

Что умеет

  • Get Projects: Returns the user's projects in descending order of creation date. No filter in MVP (filter by status etc. on the client side). Returns list-view summaries. Full bodies (goal/current_stat
  • Get Project Context: Fetch a project's full context in one request: project info plus incomplete work_cards. A batch fetch so the LLM can grasp the context at once.
  • Get Today Tasks: Returns the work cards to handle today across all projects. Same classification as the web Today view: today = incomplete 'do today' cards (when=today + overdue/due today + active rou

Какие данные видит

Нужен ли аккаунт

Не нужен: сервер работает без входа

Task management your AI agents can actually run. Write one line and Dazbench fills in the purpose, background, and acceptance criteria, then agents like Claude Code, Codex, and Cursor pick up the work over MCP. Connect with OAuth — no API keys to manage.

Список инструментов сервера (22)

Технические названия из tools/list. Нужны только разработчикам.

get_projectsReturns the user's projects in descending order of creation date. No filter in MVP (filter by status etc. on the client side). Returns list-view summaries. Full bodies (goal/current_state/background etc.) are fetched via get_project_context.
get_project_contextFetch a project's full context in one request: project info plus incomplete work_cards. A batch fetch so the LLM can grasp the context at once.
get_today_tasksReturns the work cards to handle today across all projects. Same classification as the web Today view: today = incomplete 'do today' cards (when=today + overdue/due today + active routines), today_done = cards completed today. Cards completed on past days are excluded (they go to the Done view). Returns list-view summaries (id/ref/title/status/when/assignee/star/due date etc.).
get_work_cardsReturns work cards filtered by project_id / when / status / assignee_uid. Omit all to get every card. project_id=null means Inbox = unclassified cards (no project & no when & no due_at & not private) (same condition as the web UI Inbox view, #255 / dz97). When project_id=null and when are given together, filters 'no project + the given when' as-is (the Inbox check is dropped). Combining status / assignee_uid narrows further with those conditions. Returns list-view summaries (id/ref/title/status/when/is_private/assignee/star/due date etc.).
get_work_cardFetch a single work_card. Specify either the Firestore ID (id) or the ref included in each card's return value. Pre-migration old cards without a project_seq have a ref in '#385' format (legacy sequence); that string can also be passed as ref. Specify exactly one of id / ref / seq (omitting all or specifying multiple is an error). seq is the backward-compatible legacy global sequence argument (deprecated; returned as seq_legacy). Always use ref for new references.
read_work_card_fileFetch the contents of a work card's attachment. Specify the work_card with one of id / ref / seq plus the files[].id (file_id) returned by get_work_card. Text (text/plain, JSON, CSV, Markdown etc.) is returned as a string (up to the first max_bytes, default 128KB, cap 1MB; the excess is truncated). Images are passed as image, PDFs etc. as a resource to the connected client (files that are too large return metadata only). Only attachments on cards you can access can be fetched (a nonexistent file_id / empty storagePath is an error).
upload_work_card_fileAttach a file you produced (spec, report, log, generated image, …) to a work card. Specify the card with exactly one of id / ref, and the body with exactly one of content (UTF-8 text) or content_base64 (binary, base64). One file is at most 1024 KB — larger files must be uploaded from the web app. A card holds at most 20 attachments, and each account has a total storage quota. HTML / SVG / XML are rejected: browsers render them as documents, so they could be used as phishing material. Rename to .txt or .md if you need to store that markup as text. mime_type is optional (guessed from the file extension). Returns the stored file (id / name / size / mime_type), the card's attachment count, and storage usage. Read it back later with read_work_card_file using the returned file id. Example: upload_work_card_file(ref="dz166", file_name="design.md", content="# Design\n…"). Only your own cards can be modified (shared projects are not supported).
delete_work_card_fileDelete one attachment from a work card. Specify the card with exactly one of id / ref, and the attachment with file_id (files[].id from get_work_card). This is irreversible — the stored object is removed and the freed space is returned to your quota. Ask the user before deleting attachments you did not create in this session. Returns the deleted file, the card's remaining attachment count, and storage usage. Only your own cards can be modified (shared projects are not supported).
search_work_cardsSearch work cards by keyword. Narrows by literal substring match (case-insensitive) over title / purpose / context. This is not semantic search, so pass the actual words likely contained in a card as query, not natural-language sentences. Optionally combine project_id / status / assignee_uid to narrow further. Returns list-view summaries. Default limit=50; when the cap is exceeded, truncated=true and total_matched make it explicit (the count is never silently cut).
create_work_cardCreate a new work card. source is fixed to 'mcp' on the server side. due_at is an ISO 8601 string (e.g. '2026-05-20T09:00:00Z'). remind_time is HH:mm (JST) and sends a reminder at that time on the due_at date.
create_projectCreate a new project (a container for work cards). Use during onboarding when the user has no suitable project. prefix is a 2-3 lowercase-letter symbol (a-z), unique per user, shown in card refs like dz447 ('in' is reserved for Inbox). Propose a name + prefix (romanize non-Latin names for the prefix) and confirm with the user before calling. Fill goal/current_state/background from the conversation when known. Returns the created project (id, prefix, name).
update_work_cardPartially update an existing work card. project_id and provenance cannot be changed. To complete a card, use complete_work_card. To reorder, pass sort_order (smaller = higher / null=unplaced, reverts to auto rank).
set_acceptance_criterionUpdate the done / owner of a single acceptance criterion (acceptance_criteria) of a work card. Pass the acceptance_criteria[].id returned by get_work_card as criterion_id. Updates just that one item and touches no other criteria or fields (safer than update_work_card, which resends the whole array). done=true marks it done / false clears it. owner='human' (a human does it) / 'ai' (the AI does it) / null (reset to neutral) gives the same assignment as the UI's owner button. Specify at least one of done and owner (omitting both is an error).
propose_work_card_scheduleThe AI proposes each card's planned start date / due date from estimates and saves them as a dotted bar on the Gantt (AI proposal, unconfirmed). Confirmed values (first_started_at / due_at) are not changed. Approving and confirming is a separate UI. Multiple cards can be passed at once (each is processed independently; if one fails the others still apply).
clear_work_card_schedule_proposalClear a card's AI proposal (ai_proposal), resetting it to null. Confirmed values (first_started_at / due_at) are not changed. Multiple cards can be passed at once.
complete_work_cardComplete a work card. Regular cards get status='完了' + completedAt=now. Routines with a recurrence rule (when=routines with a recurrence) keep their status unchanged and advance the next occurrence date (routine_next_at) to remove it from Today (it moves to the next cycle instead of disappearing). evidence is proof of completion (commit SHA, URL, verification result). It is stored on the card as completion_evidence and is what a later plan review reads to tell what was actually achieved — write something concrete rather than 'done'.
archive_work_cardArchive a work card (soft delete: sets archived_at; nothing is destroyed). Use it to retire a card that is no longer needed — made obsolete by a change of direction, or a duplicate that has been merged into another card. Archived cards vanish from every MCP read and from the app's active lists, but the user can restore them from the project board's 'Archived' section. NEVER archive a card on your own judgement: propose it with a reason, and call this only after the user explicitly approves — the same rule as complete_work_card. Prefer archiving over asking the user to delete: deletion in the web UI is permanent, this is not.
get_plan_review_contextFetch everything needed to review a project's plan against reality, in one call: the project's goal/current_state, the FULL body of every open card (purpose, context, acceptance criteria), and the outcomes of recently completed cards (including completion_evidence). Long context fields are truncated with context_truncated=true — call get_work_card for the full text when a card matters. Use this ONLY when the user asks you to review or reconcile the plan (find cards that are now obsolete, duplicated, or missing). It is deliberately heavy; for ordinary work use get_project_context, which returns summaries. Report what you find as proposals with a reason and the evidence behind each one (which completed card or which decision made it obsolete). Do NOT apply anything — create_work_card / update_work_card / archive_work_card only after the user approves. When the user rejects a proposal, write that decision into the card's context so the next review does not raise it again.
start_ai_sessionDeclare that the AI (this session's Claude) has started working on the specified project. In the web UI sidebar, that project's dot starts glowing with a Double-tap animation. Call end_ai_session when the work is done. Call request_approval when you need a decision.
request_approvalRequest a decision from the user. The web sidebar switches to Sweep (an amber dot with a clockwise sweeping arc) and a browser notification fires. Do not use for trivial confirmations; use only when progress is genuinely blocked.
end_ai_sessionEnd the AI session. The sidebar dot returns to idle (static). Treated as success even if no session exists (idempotent).
dump_ai_sessions[debug] Returns all ai_sessions under the uid. For diagnosing the sidebar's in-progress dot display. Also attaches heartbeat_age_ms / is_stale_for_sidebar (whether last_heartbeat is more than 5 minutes ago) / visible_in_sidebar (whether it is awaiting rather than responded, or running and not stale).
Dazbench: подключить к Claude, ChatGPT, Cursor · Connectors.fun