MCP
Tool catalog
Every MCP tool, grouped by DigitalStack capability. Each is labeled by whether its full path works today — no tool is shown as available unless you can actually run it.
Context & search
Ask a question, get an evidence-backed answer across your workspace.
Query context (flagship)
query_contextAsk a question and receive an evidence-backed Operational Delivery Brief assembled live from Project Health and Project Risk authorities. Project IDs target one project; engagement IDs compose caller-visible projects; no ID means portfolio scope. Read-only. It does NOT retrieve uploaded documents, transcripts, decisions, assumptions, or requirements, and performs no semantic search.
- Scope
agent:read(required)- Input
- A question plus a preferred project_id, engagement_id, or customer_id for deterministic targeting. Omit IDs only for portfolio questions; subject/focus remain conversational fallbacks.
- Output
- A brief: summary, findings, risks, blockers, evidence, provenance. `provenance.generated_at` is assembly time; `freshness` reports source data-age (currently `unknown` — the operational adapters expose no observation timestamp); `truncation` is present only when a bounded collection was capped.
Try this
Search context evidence
search_contextSearch the Engagement Knowledge Corpus: ranked full-text retrieval of evidence spans from ingested Context Sources bound to an authorized project or engagement. Returns exact passages with provenance (source, page/paragraph/section, provenance quality, timestamps) — evidence, not a synthesized answer. It does NOT return project health or risks, does NOT synthesize decisions, and performs NO semantic/vector search (PostgreSQL full-text only). Project queries search directly-bound sources; engagement queries fan out to caller-visible child projects (direct engagement-bound sources are not yet supported). Read-only. This is the legacy Knowledge-only tool; for cross-domain Context Platform search across evidence, adopted definitions, and decisions in one call, use the platform-native search_unified_context tool.
- Scope
context-engine:read(required)- Input
- subject_ref { type: project|engagement, id } plus query, and optional include_parent_context, include_child_projects, source_types, occurred_after, occurred_before, limit, cursor.
- Output
- Ranked evidence spans (span text, source title/id, project binding, direct|child_project origin, page/paragraph/section, provenance quality, source timestamps, content/segmentation versions), plus explicit scope states, freshness, coverage, truncation, and a keyset continuation cursor.
- Related REST
- View endpoint
Try this
Search unified context
search_unified_contextCross-domain Context Platform search over the authorization-safe router. Searchable providers are Knowledge, Adoption, Decisions, Context Opportunities, and derived Context Concepts. Opportunity is advisory and included in the router’s bounded default; Concept is advisory, project-scoped, derived on read, and must be requested explicitly. Delivery, commitment snapshots, and relationships do not support search. Results include per-provider status, item authority, freshness, coverage, limitations, partial failure, and an opaque continuation cursor. Provider-local ordering; no global relevance score. Read-only.
- Scope
context-engine:read(required)- Input
- subject { type, id } plus query, and optional domains (knowledge|adoption|decision|opportunity|concept), kinds, include_evidence, occurred_after, occurred_before, limit, cursor. Omitted domains use the router’s bounded knowledge + delivery + decision + opportunity default; concept is never implicit.
- Output
- The unified envelope: subject, operation, outcome, per-provider status, results with kind/authority/evidence/version, aggregate + per-provider freshness and coverage, limitations, truncated, and an opaque continuation cursor.
- Related REST
- View endpoint
Coming to MCP
Get context projection
get_context_projectionRetrieve a named, registry-driven Context Platform projection for a subject. The only implemented public projection today is delivery.health (advisory delivery health and risk signals, with financial and staffing fields independently gated). Reserved projections (execution.*, decision.current/history, context.current_version/history) are planned and not callable. Read-only.
- Scope
context-engine:read(required)- Input
- subject { type, id } plus projection (currently delivery.health).
- Output
- The unified envelope with the projection result, provider status, freshness, coverage, and limitations.
- Related REST
- View endpoint
Coming to MCP
Get context object
get_context_objectRetrieve one context object by its namespaced, domain-owned id, within at least one explicit domain among adoption, decision, commitment (vSOW snapshots), relationship, opportunity, and concept. Opportunity records are advisory platform-owned objects; Concepts are advisory derived projections and are never persisted. The platform never searches every provider by raw id, never infers account or workspace from the input, and preserves non-oracle not-found behavior. Read-only.
- Scope
context-engine:read(required)- Input
- subject { type, id } plus object_id and at least one domain (adoption|decision|commitment|relationship|opportunity|concept), and optional include_evidence, include_history.
- Output
- The unified envelope with the retrieved object (or a non-oracle empty result), provider status, freshness, coverage, and limitations.
- Related REST
- View endpoint
Coming to MCP
List context objects
list_context_objectsList context objects for a subject within explicitly requested domains among adoption, decision, commitment (vSOW snapshots), relationship, opportunity, and concept. Opportunity records are advisory; Concepts are project-scoped derived projections. At least one explicit domain is required to avoid accidental broad fan-out. Pagination is provider-specific inside one opaque continuation cursor; ordering is deterministic but not a universal cross-domain chronology; lifecycle and history semantics remain provider-owned. Read-only.
- Scope
context-engine:read(required)- Input
- subject { type, id } plus at least one domain (adoption|decision|commitment|relationship|opportunity|concept), and optional kinds, include_history, occurred_after, occurred_before, limit, cursor.
- Output
- The unified envelope with the listed objects, provider status, freshness, coverage, limitations, truncated, and an opaque continuation cursor.
- Related REST
- View endpoint
Coming to MCP
Record context opportunity
record_context_opportunityRecord one Context Opportunity: an evidence-backed proposal that some governed domain (decision, requirement, commitment, definition, assumption, risk, architecture, execution, knowledge) may warrant an action. Advisory only — this tool does NOT approve a decision, does NOT change a requirement, does NOT update a commitment, and does NOT change a ticket or a sprint. It creates exactly one opportunity record; only a human, through the owning domain’s own workflow, can later approve, reject, or promote it. Idempotent: the same idempotency key with the same content is a safe no-op replay, never a duplicate.
- Scope
context-opportunity:write(required)- Input
- source { source_kind, source_id, source_system, actor { kind, id?, system? }, … } plus opportunity { opportunity_type, target_domain, proposed_operation, title, summary, … }, required privacy { visibility_classification, excerpt_permission }, and optional evidence[], relationships[], dedup { idempotency_key }.
- Output
- opportunity_id, lifecycle_state, idempotent_replay, recorded_at, and the opportunity’s own authority (always advisory).
- Related REST
- View endpoint
Coming to MCP
Search context opportunities
search_context_opportunitiesSearch Context Opportunities for a subject — evidence-backed, advisory proposals that some governed domain may warrant an action. The read partner of record_context_opportunity and a convenience over search_unified_context pre-scoped to the opportunity domain: same authorization-safe router and U7R.3 Opportunity Provider, returning per-item authority, lifecycle, target domain, proposed operation, source, evidence (subject to authorization), freshness, coverage, and an opaque continuation cursor. Opportunities are advisory — never an approved decision, requirement, commitment, or definition. Read-only.
- Scope
context-engine:read(required)- Input
- subject { type, id } plus query, and optional kinds, include_history, occurred_after, occurred_before, limit, cursor. The opportunity domain is fixed by the tool — no domains argument is needed.
- Output
- The unified envelope scoped to the opportunity provider: advisory opportunity items with authority/lifecycle/source/evidence, provider status, freshness, coverage, limitations, truncated, and an opaque continuation cursor.
- Related REST
- View endpoint
Coming to MCP
List recovered context (project discoveries)
list_recovered_contextList the Context Opportunities recovered for a project — the "project discoveries" from Bootstrap and other producers (discovered decisions, requirements, assumptions, risks, architecture findings, definitions, commitment impacts). Answers "what has this project learned?". Same authorization-safe router and U7R.3 Opportunity Provider; per-item type, target domain, proposed operation, lifecycle, confidence, source, evidence (subject to authorization), and an opaque cursor. Every item is advisory and pending review — present it distinctly from governed truth, never merged. Read-only.
- Scope
context-engine:read(required)- Input
- subject { type, id } plus optional include_history, limit, cursor. The list_objects operation and opportunity domain are fixed by the tool.
- Output
- The unified envelope scoped to the opportunity provider: advisory opportunity items with type/authority/lifecycle/confidence/source/evidence, provider status, freshness, coverage, limitations, truncated, and an opaque continuation cursor.
- Related REST
- View endpoint
Coming to MCP
Get Context Engine overview
get_context_engineRead Context Engine availability, package/provider counts, freshness posture, supported capabilities, and recent packages.
- Scope
context-engine:read(required)- Input
- Optional project_id or engagement_id; omit both for portfolio scope.
- Output
- Scoped overview, counts, freshness summary, capabilities, and recent packages.
- Related REST
- View endpoint
Try this
List context packages
list_context_packagesList governed context packages with evidence coverage, provenance, freshness, and provider attribution.
- Scope
context-engine:read(required)- Input
- Optional project_id or engagement_id plus limit, cursor, contribution_type, provider, and status filters.
- Output
- A bounded package collection and pagination metadata.
- Related REST
- View endpoint
Try this
Get context package
get_context_packageRetrieve one governed context package with canonical source reference, provenance, freshness, and coverage.
- Scope
context-engine:read(required)- Input
- A package_id.
- Output
- One governed context package.
- Related REST
- View endpoint
Try this
Search structured context
search_context_packagesSearch persisted context contributions without invoking arbitrary model execution.
- Scope
context-engine:read(required)- Input
- A query plus optional project_id or engagement_id and bounded filters.
- Output
- Scored package matches with provenance and freshness.
- Related REST
- View endpoint
Try this
Get context package evidence
get_context_package_evidenceRead policy-safe evidence references and provenance without exposing raw source bodies.
- Scope
context-engine:read(required)- Input
- A package_id.
- Output
- Evidence references, freshness, source capability, and provenance.
- Related REST
- View endpoint
Try this
List context providers
list_context_providersInspect provider capabilities, contribution counts, coverage, freshness, and authority boundaries.
- Scope
context-engine:read(required)- Input
- Optional project_id or engagement_id; omit both for portfolio coverage.
- Output
- Native and governed contribution provider descriptors for the selected scope.
- Related REST
- View endpoint
Try this
Today & My Work
Read a daily focus package and record explicit attention-item actions.
Get Today & My Work
get_today_my_workRead the caller’s daily focus package with an evidence-backed summary, attention items, related entities, coverage, and provenance.
- Scope
agent:read(required)- Input
- Optional daily-focus question; defaults to “What should I focus on today?”.
- Output
- A Context Package plus a typed Today & My Work view in metadata.
- Related REST
- View endpoint
Try this
Record Today attention-item action
record_today_attention_item_actionRecord an explicit resolve, dismiss, or snooze action for a Today & My Work attention item and emit the matching webhook event.
- Scope
agent:read(required)- Input
- Attention item id, action, optional note/snooze timestamp/context timestamp, and confirm=true.
- Output
- Accepted action status plus the emitted attention_item webhook event type.
- Related REST
- View endpoint
Try this
Projects
Enumerate projects and inspect a single project’s health.
List projects
list_projectsList the workspace’s projects (engagements) with client name, status, and last-updated time. Useful to enumerate work or resolve a project name to its id.
- Scope
agent:read(required)- Input
- Optional name query, status filter (active/archived/draft), and limit.
- Output
- Projects with client name, status, and last-updated timestamp.
Try this
Get project health
get_project_healthA one-call health snapshot for a project: delivery status, alerts, phase and milestone progress, workstream states, and directional financial/staffing signals (governed by your permissions).
- Scope
agent:read(required)- Input
- A project_id.
- Output
- Delivery status, alerts, phase/milestone progress, and directional signals.
- Related REST
- View endpoint
Try this
Acknowledge project health alert
acknowledge_project_health_alertRecord a confirmed acknowledgement for one advisory Project Health alert and emit project_health.alert_acknowledged.
- Scope
project-health:write(required)- Input
- project_id, alert_key, optional note, idempotency_key, and confirm=true.
- Output
- Acknowledgement command payload with event type and idempotency replay flag.
- Related REST
- View endpoint
Try this
List projects (public API)
list_projects_publicList visible canonical projects/engagements through the governed public API.
- Scope
projects:read(required)- Input
- Optional query, status, and limit.
- Output
- Project identity rows with lifecycle status and relationship ids.
- Related REST
- View endpoint
Try this
Get project
get_projectRetrieve one visible canonical project/engagement identity record.
- Scope
projects:read(required)- Input
- A project_id.
- Output
- Project identity, lifecycle status, and relationship ids.
- Related REST
- View endpoint
Try this
Create project
create_projectCreate one canonical project/engagement identity through a confirmed, idempotent command.
- Scope
projects:write(required)- Input
- Name, optional client identity fields, idempotency_key, and confirm=true.
- Output
- Project command payload with project, changed fields, event type, and replay status.
- Related REST
- View endpoint
Try this
Update project
update_projectUpdate bounded project identity and relationship fields.
- Scope
projects:write(required)- Input
- Project id, accepted identity fields, idempotency_key, and confirm=true.
- Output
- Project command payload with changed fields and project.updated event type.
- Related REST
- View endpoint
Try this
Update project status
update_project_statusRun one explicit project lifecycle status command.
- Scope
projects:write(required)- Input
- Project id, status, idempotency_key, and confirm=true.
- Output
- Project command payload with project.status_changed or project.archived event type.
- Related REST
- View endpoint
Try this
Archive project
archive_projectArchive one project through the explicit project lifecycle command path.
- Scope
projects:write(required)- Input
- Project id, idempotency_key, and confirm=true.
- Output
- Project command payload with project.archived event type.
- Related REST
- View endpoint
Try this
List project members
list_project_membersList governed project membership rows for one visible project.
- Scope
projects:read(required)- Input
- A project_id.
- Output
- Project members with user id and project-local role.
- Related REST
- View endpoint
Try this
Add project member
add_project_memberAdd or upsert one project member through a confirmed command.
- Scope
projects:write(required)- Input
- Project id, user_id, optional role, idempotency_key, and confirm=true.
- Output
- Project command payload with member and project.member_added event type.
- Related REST
- View endpoint
Try this
Update project member
update_project_memberUpdate one project member role through a confirmed command.
- Scope
projects:write(required)- Input
- Project id, member id, role, idempotency_key, and confirm=true.
- Output
- Project command payload with member and project.member_updated event type.
- Related REST
- View endpoint
Try this
Remove project member
remove_project_memberRemove one project member through a confirmed command.
- Scope
projects:write(required)- Input
- Project id, member id, idempotency_key, and confirm=true.
- Output
- Project command payload with removed member and project.member_removed event type.
- Related REST
- View endpoint
Try this
Get project settings
get_project_settingsRead bounded public project settings.
- Scope
projects:read(required)- Input
- A project_id.
- Output
- Workflow, portal, AI, and ticket-prefix settings.
- Related REST
- View endpoint
Try this
Update project settings
update_project_settingsUpdate bounded project settings through a confirmed command.
- Scope
projects:write(required)- Input
- Project id, accepted settings fields, idempotency_key, and confirm=true.
- Output
- Project command payload with settings and project.settings_updated event type.
- Related REST
- View endpoint
Try this
Delivery & sprint intelligence
Sprint reports and work-item detail.
Get estimates, effort, and scope
get_estimates_scopeRead one governed estimate, or list estimates for a project, with scope, effort, role demand, risks, timeline, provenance, and immutable-baseline identity.
- Scope
estimates:read(required)- Input
- Exactly one of estimate_id or project_id.
- Output
- One estimate or a project-scoped estimate collection with allowed actions.
- Related REST
- View endpoint
Try this
Draft estimate or scope change
draft_estimates_scope_changePersist a reviewable estimate change proposal without mutating canonical estimate, staffing, schedule, or baseline state.
- Scope
estimates:write(required)- Input
- estimate_id, requested_outcome, proposed_changes, optional evidence_refs and expected_version, plus idempotency_key.
- Output
- A persisted, replay-safe draft proposal with version binding and provenance.
- Related REST
- View endpoint
Try this
Request estimate baseline review
request_estimates_scope_actionSubmit a confirmed draft proposal for human baseline review. The MCP tool cannot freeze, approve, sign, or supersede a baseline.
- Scope
estimates:operate(required)- Input
- estimate_id, proposal_id, expected_version, reason, idempotency_key, and confirm=true.
- Output
- Pending human-review request and durable event identity.
- Related REST
- View endpoint
Try this
Get sprint report
get_sprint_reportReport on a project’s active (or specified) sprint: goal, totals, work items by status, blocked items, and spillover risk.
- Scope
agent:read(required)- Input
- A project_id and optional sprint_id (defaults to the single active sprint; required if the project has more than one active sprint at once).
- Output
- Sprint goal, work items by status, blocked items, and spillover risk.
Try this
Get sprint planning
get_sprint_planningRead a project sprint-planning context and readiness score as a read-only projection.
- Scope
sprints:read(required)- Input
- A project_id.
- Output
- Planning payload, context projections, readiness score, criteria, and generated timestamp.
- Related REST
- View endpoint
Try this
Suggest sprint planning moves
suggest_sprint_planning_movesGenerate citation-gated planning intents for review. Proposal-only; it does not apply a plan or move work.
- Scope
sprints:read(required)- Input
- A project_id and confirm=true.
- Output
- Suggested planning intents, observations, readiness, computed timestamp, and webhook event type.
- Related REST
- View endpoint
Try this
Get delivery timeline
get_delivery_timelineRead governed delivery milestones and workstreams for one project without moving execution coordinates.
- Scope
delivery-timeline:read(required)- Input
- A project_id.
- Output
- Delivery milestones, workstreams, source-mode disclosure, and generated timestamp.
- Related REST
- View endpoint
Try this
List delivery milestones
list_delivery_milestonesList Delivery-owned milestones for one project with scoped work-item ids.
- Scope
delivery-timeline:read(required)- Input
- A project_id.
- Output
- Milestones with status, target date, progress, owner derivation, and scoped work-item ids.
- Related REST
- View endpoint
Try this
Get delivery milestone
get_delivery_milestoneRetrieve one governed Delivery milestone.
- Scope
delivery-timeline:read(required)- Input
- A milestone_id.
- Output
- Milestone detail with scoped work-item ids.
- Related REST
- View endpoint
Try this
List delivery workstreams
list_delivery_workstreamsList project workstreams through the execution read provider. Read-only in this slice.
- Scope
delivery-timeline:read(required)- Input
- A project_id.
- Output
- Workstreams with id, name, slug, status, and default flag.
- Related REST
- View endpoint
Try this
Update delivery milestone status
update_delivery_milestone_statusRun one confirmed governed milestone status command.
- Scope
delivery-timeline:write(required)- Input
- Milestone id, status, optional expected_updated_at/reason, idempotency_key, and confirm=true.
- Output
- Command payload with milestone, changed fields, emitted event type, and replay status.
- Related REST
- View endpoint
Try this
Update delivery milestone target date
update_delivery_milestone_target_dateRun one explicit milestone target-date command; does not resize phases or move work.
- Scope
delivery-timeline:write(required)- Input
- Milestone id, target_date, optional expected_updated_at/reason, idempotency_key, and confirm=true.
- Output
- Command payload with milestone, changed fields, emitted event type, and replay status.
- Related REST
- View endpoint
Try this
Update delivery milestone progress
update_delivery_milestone_progressRun one explicit milestone progress command for completion percentage and/or projected date.
- Scope
delivery-timeline:write(required)- Input
- Milestone id, completion_pct and/or projected_date, optional expected_updated_at/reason, idempotency_key, and confirm=true.
- Output
- Command payload with milestone, changed fields, emitted event type, and replay status.
- Related REST
- View endpoint
Try this
List work items
list_work_itemsRead canonical DigitalStack work items using board-safe filters such as team, sprint, parent, assignee, and status bucket. Use this to find the right work item before drilling in or running Work Item Enhance.
- Scope
work-items:read(required)- Input
- Optional team_id, sprint_id, parent_id, assignee_user_id, status_bucket array, and limit.
- Output
- Canonical work items with identity, title, hierarchy, status bucket, sprint/team context, and assignee summary.
- Related REST
- View endpoint
Try this
Get work item board
get_work_item_boardRead the canonical DigitalStack work-item board grouped by status bucket. This is a read-only projection over Execute work items and does not move cards or mutate workflow state.
- Scope
work-items:read(required)- Input
- Optional team_id, sprint_id, assignee_user_id, status_bucket array, and limit.
- Output
- Board columns keyed by canonical status bucket with bounded work-item cards and counts.
- Related REST
- View endpoint
Try this
Get canonical work item
get_work_itemRead one source-aware Execute work item through the governed public Work Items API. Jira-backed reads hydrate authoritative description, discussion, people, hierarchy, and relationships without asking the model to infer missing facts.
- Scope
work-items:read(required)- Input
- A work_item_id (provider UUID or source key such as EA-1650) and the required project_id.
- Output
- Canonical identity plus source detail, bounded comments, parent and children, relationships, and capture states that distinguish absent data from data DigitalStack did not capture.
- Related REST
- View endpoint
Try this
List work item transitions
list_work_item_transitionsRead transition history for one canonical work item without changing status, ranking, or board placement.
- Scope
work-items:read(required)- Input
- A work_item_id and optional limit.
- Output
- Canonical transition records with from/to bucket, actor, source, note, and timestamp.
- Related REST
- View endpoint
Try this
Get work item operation context
get_work_item_operation_contextInspect the current version, allowed transitions, editable fields, and supported commands before an agent proposes a work-item operation.
- Scope
work-items:read(required)- Input
- A work_item_id.
- Output
- Operation context with version, allowed transitions, editable fields, and command support.
- Related REST
- View endpoint
Try this
Add work item comment
add_work_item_commentAdd an attributable comment after explicit confirmation. If the work item is Jira-backed, DigitalStack validates and passes the comment through to Jira.
- Scope
work-items:comment(required)- Input
- work_item_id, body, optional mentions/evidence refs, expected_version, confirm=true, and idempotency_key.
- Output
- Created comment, updated work-item summary, webhook event type, and source writeback result.
- Related REST
- View endpoint
Try this
Transition work item status
transition_work_item_statusApply one allowed Execute flow-state transition after confirmation. Jira-backed work items pass the mapped transition through to Jira.
- Scope
work-items:transition(required)- Input
- work_item_id, to_state_id, optional provider_transition_id/note, expected_version, confirm=true, and idempotency_key.
- Output
- Updated work item, transition record, webhook event type, and source writeback result.
- Related REST
- View endpoint
Try this
Assign work item
assign_work_itemAssign, reassign, or unassign a work item after confirmation, with Jira pass-through for Jira-backed work items.
- Scope
work-items:assign(required)- Input
- work_item_id, assignee_user_id or null, expected_version, confirm=true, and idempotency_key.
- Output
- Updated work-item assignment, webhook event type, and source writeback result.
- Related REST
- View endpoint
Try this
Update work item dates
update_work_item_datesSet or clear start, due, target, sprint, or ordering fields through the scheduling command boundary. Jira due-date writeback is supported when mapped.
- Scope
work-items:schedule(required)- Input
- work_item_id, date/sprint patch, expected_version, confirm=true, and idempotency_key.
- Output
- Updated dates, changed fields, webhook event type, and source writeback result.
- Related REST
- View endpoint
Try this
Update work item estimate
update_work_item_estimateSet or clear work-item points after confirmation. Jira-backed estimates require a configured story-points field mapping.
- Scope
work-items:estimate(required)- Input
- work_item_id, points or null, expected_version, confirm=true, and idempotency_key.
- Output
- Updated estimate, webhook event type, and source writeback result.
- Related REST
- View endpoint
Try this
Update work item labels
update_work_item_labelsAdd, remove, or replace normalized labels after confirmation. Jira-backed labels are passed through to Jira.
- Scope
work-items:link(required)- Input
- work_item_id, labels/add/remove, expected_version, confirm=true, and idempotency_key.
- Output
- Updated labels, webhook event type, and source writeback result.
- Related REST
- View endpoint
Try this
Link work item dependency
link_work_item_dependencyCreate a dependency or relationship after validating target visibility and cycles.
- Scope
work-items:link(required)- Input
- work_item_id, target_work_item_id, relationship, expected_version, confirm=true, and idempotency_key.
- Output
- Created dependency, webhook event type, and affected work-item summary.
- Related REST
- View endpoint
Try this
Manage work item blocker
manage_work_item_blockerRaise, update, transition, or resolve a blocker linked to a work item after confirmation.
- Scope
work-items:blockers(required)- Input
- work_item_id, action, blocker fields, expected_version, confirm=true, and idempotency_key.
- Output
- Blocker state, webhook event type, and affected work-item summary.
- Related REST
- View endpoint
Try this
Update work item focus
update_work_item_focusPin, reprioritize, snooze, annotate, or clear a work item in focus views without mutating authoritative schedule or staffing.
- Scope
work-items:focus(required)- Input
- work_item_id, action, priority/reason/notes/expires_at, confirm=true, and idempotency_key.
- Output
- Focus record, webhook event type, and affected work-item summary.
- Related REST
- View endpoint
Try this
Get work item detail
get_work_item_detailDetail on a single work item: description excerpt, status, assignee, parent/children, open blockers, and recent status transitions.
- Scope
agent:read(required)- Input
- A work_item_id.
- Output
- Work item detail, blockers, and recent status transitions.
Try this
List Work Item Enhance runs
list_work_item_enhancement_runsList proposal-first enhancement runs by target work item and state.
- Scope
work-item-enhance:read(required)- Input
- Optional target_work_item_id, state, and limit.
- Output
- Enhancement runs with target, state, drafts, artifacts, and allowed next actions.
- Related REST
- View endpoint
Try this
Enhance work item
enhance_work_itemCreate a proposal-first Work Item Enhance run with selected actions such as requirements, description, design, implementation plan, acceptance criteria, test plan, estimate, and risk check.
- Scope
work-item-enhance:run(required)- Input
- Work-item id, selected actions, optional instructions, idempotency key, and confirm=true.
- Output
- Persisted enhancement run with drafts, artifacts, evidence references, and allowed next actions.
- Related REST
- View endpoint
Try this
Get Work Item Enhance run
get_work_item_enhancement_runRetrieve one Work Item Enhance run with target, requested actions, drafts, artifacts, allowed actions, and apply history.
- Scope
work-item-enhance:read(required)- Input
- Enhancement run id.
- Output
- One enhancement run with proposal artifacts and allowed next actions.
- Related REST
- View endpoint
Try this
Get Work Item Enhance operation status
get_work_item_enhancement_operationRead the operation-style status view for a Work Item Enhance run.
- Scope
work-item-enhance:read(required)- Input
- Enhancement run / operation id.
- Output
- Operation status, target summary, counts, and allowed next actions.
- Related REST
- View endpoint
Try this
Run Work Item Enhance action
run_work_item_enhancement_actionRun any allowlisted action on an existing enhancement run, such as code context, implementation plan, acceptance criteria, test plan, estimate, or risk check.
- Scope
work-item-enhance:run(required)- Input
- Enhancement run id, action, optional instructions, idempotency key, and confirm=true.
- Output
- Updated enhancement run with generated drafts/artifacts.
- Related REST
- View endpoint
Try this
Draft work item requirements
draft_work_item_requirementsRun the requirements action on an existing enhancement run and return generated field-level drafts for review.
- Scope
work-item-enhance:run(required)- Input
- Enhancement run id, optional instructions, idempotency key, and confirm=true.
- Output
- Updated enhancement run containing requirement-oriented drafts.
- Related REST
- View endpoint
Try this
Draft work item description
draft_work_item_descriptionRun the description action on an existing enhancement run and return a clearer work-item description draft.
- Scope
work-item-enhance:run(required)- Input
- Enhancement run id, optional tone/template instructions, idempotency key, and confirm=true.
- Output
- Updated enhancement run containing a description draft.
- Related REST
- View endpoint
Try this
Draft work item design
draft_work_item_designRun the design action and return an advisory design artifact without changing the work item.
- Scope
work-item-enhance:run(required)- Input
- Enhancement run id, optional architecture constraints, idempotency key, and confirm=true.
- Output
- Updated enhancement run containing a design artifact.
- Related REST
- View endpoint
Try this
Inspect work item code context
inspect_work_item_code_contextRead generated code-context artifacts for a Work Item Enhance run: likely files, likely tests, implementation areas, missing context, and guardrails.
- Scope
work-item-enhance:code-context(required)- Input
- Enhancement run id.
- Output
- Read-only code-context artifact summaries, file/test candidates, evidence references, and connector gaps.
- Related REST
- View endpoint
Try this
List Work Item Enhance drafts
list_work_item_enhancement_draftsList generated field-level drafts for a run, optionally filtered by action, field, or apply eligibility.
- Scope
work-item-enhance:read(required)- Input
- Enhancement run id, optional action, field, and apply_eligible filter.
- Output
- Generated drafts with proposed values, confidence, evidence references, and apply eligibility.
- Related REST
- View endpoint
Try this
List Work Item Enhance artifacts
list_work_item_enhancement_artifactsList generated review artifacts for a run, optionally filtered by artifact type.
- Scope
work-item-enhance:read(required)- Input
- Enhancement run id and optional artifact type.
- Output
- Generated artifacts such as design notes, code context, implementation plans, and test plans.
- Related REST
- View endpoint
Try this
Prepare Work Item Enhance apply
prepare_work_item_enhancement_applyRead selected drafts and prepare the field-level apply preview. The actual apply remains an explicit confirmed REST command.
- Scope
work-item-enhance:apply(required)- Input
- Enhancement run id and selected draft ids.
- Output
- Draft field diffs, target version, required scope, and conflict notes for user confirmation.
- Related REST
- View endpoint
Try this
Apply Work Item Enhance drafts
apply_work_item_enhancement_draftsApply selected reviewed drafts to the canonical work item using explicit confirmation, optimistic target versioning, and idempotency.
- Scope
work-item-enhance:apply(required)- Input
- Enhancement run id, selected draft ids, expected target version, idempotency key, and confirm=true.
- Output
- Updated enhancement run with applied draft ids and target version.
- Related REST
- View endpoint
Try this
Risks & decisions
Aggregated risks, blockers, and dependencies.
Get risks and blockers
get_risks_and_blockersAggregated risk picture for a project: delivery alerts, client-dependency blocks, and open risk/gap/request issues, with a coverage block.
- Scope
agent:read(required)- Input
- A project_id and optional severity floor.
- Output
- Delivery alerts, client-dependency blocks, and open risks with coverage.
Try this
Time Management
Review, draft, record, submit, and approve time through governed commands.
List time entries
list_time_entriesList the caller’s self-scoped canonical time entries by date range, project, status, and limit.
- Scope
time:read_self(required)- Input
- Optional start, end, project_id, status, and limit.
- Output
- Canonical self-owned time entries without raw activity evidence or rates.
- Related REST
- View endpoint
Try this
Get time entry
get_time_entryRead one self-scoped canonical time entry.
- Scope
time:read_self(required)- Input
- Time entry id.
- Output
- One canonical time entry without raw activity evidence or rates.
- Related REST
- View endpoint
Try this
Update time entry
update_time_entryUpdate one editable self-scoped time entry with optimistic versioning and explicit confirmation.
- Scope
time:write_self(required)- Input
- Entry id, expected version, optional editable fields, and confirm=true.
- Output
- Updated canonical time entry.
- Related REST
- View endpoint
Try this
Void time entry
void_time_entryVoid one editable self-scoped time entry with optimistic versioning and explicit confirmation.
- Scope
time:write_self(required)- Input
- Entry id, expected version, and confirm=true.
- Output
- Voided entry id, status, and version.
- Related REST
- View endpoint
Try this
Get timer
get_timerRead the caller’s current canonical timer, if any.
- Scope
time:read_self(required)- Input
- No input.
- Output
- Current timer state, elapsed seconds, attribution, and version, or null.
- Related REST
- View endpoint
Try this
Get my time day
get_my_dayRead the caller's privacy-safe work day, including entries, attributed sessions, conflicts, gaps, timer, draft, totals, and submission state.
- Scope
time:read_self(required)- Input
- Optional workspace-local date; defaults to today in the workspace timezone.
- Output
- A bounded, self-scoped day view without rates or raw activity evidence.
- Related REST
- View endpoint
Try this
Draft today's time
draft_today_timePersist a proposal from fully attributed DigitalStack work sessions. Conflicts and unresolved evidence remain gaps; no actual time is created.
- Scope
time:write_self(required)- Input
- Optional workspace-local date.
- Output
- A versioned draft with proposed blocks, evidence references, and unresolved sessions.
- Related REST
- View endpoint
Try this
Apply a reviewed time draft
apply_time_draftApply a reviewed proposal to canonical entries with optimistic versioning, idempotency, and explicit confirmation.
- Scope
time:write_self(required)- Input
- Draft id, expected version, idempotency key, and confirm=true.
- Output
- The applied draft and canonical entry ids.
- Related REST
- View endpoint
Try this
Log explicit time
log_timeRecord one user-supplied time entry. It cannot silently convert inferred activity into an actual.
- Scope
time:write_self(required)- Input
- Date, duration, category, optional attribution and notes, idempotency key, and confirm=true.
- Output
- The canonical self-owned entry.
- Related REST
- View endpoint
Try this
Start timer
start_timerStart the caller's single canonical timer for an explicit target.
- Scope
time:write_self(required)- Input
- Category, optional project/work item, and confirm=true.
- Output
- The running canonical timer.
- Related REST
- View endpoint
Try this
Pause timer
pause_timerPause the caller’s active canonical timer with optimistic versioning and explicit confirmation.
- Scope
time:write_self(required)- Input
- Expected timer version and confirm=true.
- Output
- Paused timer state.
- Related REST
- View endpoint
Try this
Resume timer
resume_timerResume the caller’s paused canonical timer with optimistic versioning and explicit confirmation.
- Scope
time:write_self(required)- Input
- Expected timer version and confirm=true.
- Output
- Running timer state.
- Related REST
- View endpoint
Try this
Stop timer
stop_timerAtomically stop the active timer and create exactly one draft entry.
- Scope
time:write_self(required)- Input
- Expected timer version, idempotency key, optional final fields, and confirm=true.
- Output
- The stopped timer result and created entry.
- Related REST
- View endpoint
Try this
Discard timer
discard_timerDiscard the caller’s active or paused canonical timer without creating a time entry.
- Scope
time:write_self(required)- Input
- Expected timer version and confirm=true.
- Output
- Discard result with replay metadata.
- Related REST
- View endpoint
Try this
Submit time day
submit_timesheetValidate and submit one reviewed work day into the canonical approval lifecycle.
- Scope
time:submit_self(required)- Input
- Optional date, idempotency key, and confirm=true.
- Output
- Submission state and validation result.
- Related REST
- View endpoint
Try this
Recall time day
recall_timesheetRecall one submitted work day while policy permits, using explicit confirmation.
- Scope
time:submit_self(required)- Input
- Optional date and confirm=true.
- Output
- Recalled day state and timestamp.
- Related REST
- View endpoint
Try this
List time approvals
list_time_approvalsList eligible team time approvals for the authenticated reviewer.
- Scope
time:read_team(required)- Input
- Optional status filter.
- Output
- Eligible approval records only.
- Related REST
- View endpoint
Try this
Decide time approval
decide_time_approvalApprove or reject an eligible submission as the authenticated human approver.
- Scope
time:approve_team(required)- Input
- Approval id, approve/reject decision, rejection reason when required, and confirm=true.
- Output
- The durable approval decision and resulting submission state.
- Related REST
- View endpoint
Try this
List time imports
list_time_importsList governed provider time import runs for authorized administrators.
- Scope
time:import(required)- Input
- No input.
- Output
- Provider import runs and statuses.
- Related REST
- View endpoint
Try this
Create time import
create_time_importCreate a governed provider time import run with date range, idempotency, and explicit confirmation.
- Scope
time:import(required)- Input
- Provider, date_from, date_to, idempotency key, and confirm=true.
- Output
- Import run result and replay metadata.
- Related REST
- View endpoint
Try this
List time reconciliation findings
list_time_reconciliation_findingsList governed provider reconciliation findings without exposing raw provider payloads or financial rates.
- Scope
time:reconcile(required)- Input
- Optional status, date_from, date_to, and limit.
- Output
- Reconciliation findings and status metadata.
- Related REST
- View endpoint
Try this
Scan time reconciliation
scan_time_reconciliationRun a reconciliation scan for a date range. It records findings only and does not mutate approved entries.
- Scope
time:reconcile(required)- Input
- date_from, date_to, and confirm=true.
- Output
- Reconciliation scan result.
- Related REST
- View endpoint
Try this
Resolve time reconciliation finding
resolve_time_reconciliation_findingResolve one reconciliation finding through DigitalStack policy with explicit confirmation.
- Scope
time:reconcile(required)- Input
- Finding id, resolution action, and confirm=true.
- Output
- Resolution result.
- Related REST
- View endpoint
Try this