Skip to main content
Glama

In Aktion sehen

Zwei Agenten in verschiedenen Umgebungen können sich gegenseitig entdecken, Nachrichten austauschen und Arbeit aufteilen, ohne dass ein Mensch Kontext zwischen ihnen übermittelt:

Claude Code → Concord   Claim src/app/page.tsx
Codex       → Concord   Claim src/app/page.tsx
Concord     → Codex     Overlap: Claude Code already owns this file
Codex       → Claude    I'll take src/app/api instead. Does that work?
Claude      → Codex     Yes. I'll keep the page and use your API contract.

Führen Sie die echte Claude Code ↔ Codex Demo aus, um zu sehen, wie beide Agenten einen überlappenden Anspruch durch eine Live-Prompt/Antwort auflösen, eine spielbare App erstellen, das Eigentum übertragen und das Ergebnis einem unabhängigen Prüfer übergeben.

Related MCP server: ccg-mcp-tool

Schnellstart

npm install -g @concord-ai/concord-mcp
cd /path/to/your/repository
concord setup

Starten Sie Ihre Agent-Clients neu und bitten Sie dann zwei davon, im selben Repository zu arbeiten. Concord gibt ihnen einen gemeinsamen Arbeitsbereich und macht erreichbare Sitzungen für direkte Prompts und Antworten verfügbar.

concord setup erstellt den lokalen .concord/-Arbeitsbereich, registriert den MCP-Server für Claude, Cursor, Gemini, Grok und Codex (.mcp.json, .cursor/mcp.json, .gemini/settings.json, .grok/config.toml und ~/.codex/config.toml) und schreibt Concords Tool-Anweisungen in Ihre Client-Konfigurationen (CLAUDE.md, AGENTS.md, .codex/, .cursor/rules/). Es führt in bestehende Konfigurationen zusammen, anstatt sie zu ersetzen, und kann sicher erneut ausgeführt werden.

Das Setup erkennt außerdem unterstützte Clients und versucht, deren globale Concord-Adapter unabhängig zu installieren. Verwenden Sie --no-adapters, um diesen Schritt zu überspringen, oder --require-adapters in verwalteten Installationen, die bei eingeschränkter Unterstützung fehlschlagen sollen. Übergeben Sie --no-mcp, um nur den Arbeitsbereich und die Anweisungen zu schreiben, während Sie die MCP-Registrierung selbst verwalten.

Unterstützte Agenten

Agent

Integrationsanleitung

Claude Code

Einrichtung und Bereitstellung

Codex

Einrichtung und Bereitstellung

Cursor

Einrichtung und Bereitstellung

Gemini CLI

Einrichtung und Bereitstellung

Grok Build

Einrichtung und Bereitstellung

Jeder andere MCP-fähige Coding-Agent

Gemeinsamer Arbeitszustand über die fünf MCP-Tools

Es gibt keinen universellen /concord-Slash-Befehl – Befehle sind clientspezifisch. Concord funktioniert über MCP-Tools plus die installierten Anweisungen auf jedem MCP-fähigen Client.

Die Live-Zustellung hängt von der empfangenden Umgebung und dem Sitzungszustand ab. Führen Sie concord adapters status aus, um zu sehen, welche installierten Agenten erreichbar sind und wie Nachrichten zugestellt werden.

Kommunikation ist der Ausgangspunkt

Messaging bringt Agenten ins Gespräch. Concords gemeinsamer Arbeitszustand hält die resultierende Zusammenarbeit nach der Zustellung der Nachricht zuverlässig.

Ohne Concord

Mit Concord

Agenten können keine Peers in einer anderen Umgebung kontaktieren

Agenten senden direkte, beantwortbare Prompts über unterstützte Clients

Agenten entdecken Kollisionen erst nach dem Editieren

Agenten beanspruchen Dateien und Module, bevor die Arbeit beginnt

Kontext verschwindet, wenn eine Sitzung endet

Entscheidungen, Annahmen und Erkenntnisse bleiben an der Aufgabe hängen

Eigentum wird durch den Chatverlauf impliziert

Zuweisungen und Übergaben sind explizit und werden bestätigt

Menschen rekonstruieren Fortschritt aus Branches und Diffs

Überprüfungspakete kommen mit Umfang, Tests, Risiken und Herkunft

Concord ist kein weiterer autonomer Agent oder Orchestrator. Es ist die gemeinsame Ebene um Ihre Agenten: Präsenz, Messaging, Aufgaben-Gedächtnis, Eigentum, Übergaben und Überprüfungszustand über einen kleinen MCP-Server.

Die Tools

Tool

Zweck

start_work

registriert Präsenz, beansprucht oder akzeptiert eine Aufgabe und meldet Umfangsüberschneidungen vor dem Editieren

inspect_work

liest Arbeitsbereichs-/Aufgabenzustand, ein Agenten-Postfach/Postausgang oder einen dauerhaften Prompt/Antwort-Thread

update_work

zeichnet Aufgabenkontext auf oder promptet/antwortet sofort einem anderen promptfähigen Arbeitsbereichs-Agenten

transfer_work

weist zu, akzeptiert, lehnt ab, gibt frei, weist neu zu, bietet Übergaben an oder öffnet versionierte Arbeit erneut

finish_work

zeichnet Belege auf und markiert eine Aufgabe optional als überprüfungsbereit, abgeschlossen oder geschlossen

Schreibvorgänge akzeptieren eine agent_id, die die Präsenz allein durch Arbeiten am Leben hält. inspect_work zeigt wer hier ist und kennzeichnet veraltete Ansprüche – einen aktiven Anspruch, dessen besitzender Agent gegangen ist, ohne zu übergeben.

Für Live-Agent-zu-Agent-Kommunikation führen Sie concord setup aus und starten Sie dann bestehende Client-Sitzungen einmal neu. Ein Prompt verwendet update_work mit operation: "prompt", der Ziel-to_agent_id, Inhalt und einem idempotency_key; eine Antwort verwendet operation: "reply" und reply_to_message_id. Ein quittungsfähiger Adapter steuert einen beschäftigten Turn oder startet einen müßigen Turn. Nur-Hook-Integrationen hinterlassen eine dauerhafte Pull-Nachricht und geben diese Einschränkung im Ergebnis an. Die Zustellung schlägt sofort fehl, wenn der genannte Agent keinen erreichbaren Endpunkt hat; Concord leitet nicht stillschweigend um.

concord adapters status meldet jede Umgebung separat, einschließlich ihrer Monitor/Controller-Art, verifizierter Erreichbarkeit, erforderlicher Aktion und Versions- Sondierungsergebnis. concord adapters install, doctor und uninstall bieten den gleichen globalen Lebenszyklus außerhalb des Repository-Setups.

Concord löst den Repository-Arbeitsbereich automatisch auf. Operationen geben dessen workspace_id und Repository-Wurzel zurück, sodass ein Client einen fehlgeleiteten Aufruf erkennen kann; die ID kann explizit übergeben werden, wenn ein Server mehrere Wurzeln koordiniert.

Lebenszyklusändernde Operationen verwenden die monotone version der Aufgabe als expected_version. Wenn zwei Agenten auf derselben Version handeln, gelingt nur der erste Übergang. Die Zuweisung lässt die Arbeit in assigned, bis der genannte Agent transfer_work mit action: "accept" verwendet; ein Übergabeangebot behält ebenfalls das Eigentum beim Sender, bis der Empfänger akzeptiert. Jede Eigentumsänderung wird in einem append-only Audit-Verlauf aufbewahrt.

Was Sie bekommen

SQLite ist die lokale Quelle der Wahrheit, aufbewahrt im .concord/ an der Wurzel des Repos, in dem die Arbeit stattfindet. Der MCP-Server löst diese Wurzel aus CONCORD_REPO_ROOT auf, falls gesetzt, dann aus Claude Codes CLAUDE_PROJECT_DIR (das Claude Code automatisch setzt, auch für einen benutzerbezogenen Server), dann aus seinem Arbeitsverzeichnis – so teilen sich alle Agenten in einem Repo einen Speicher. Setzen Sie CONCORD_REPO_ROOT, wenn Sie den Server an einem Ort ausführen, dessen Arbeitsverzeichnis nicht im Repo liegt.

Verknüpfte Git-Worktrees folgen den commondir-Metadaten von Git zum primären Checkout, sodass der Haupt-Checkout und alle verknüpften Worktrees absichtlich eine Concord-Datenbank und Workspace-ID teilen.

Um die explizite Workspace-Auswahl einzuschränken, setzen Sie CONCORD_ALLOWED_ROOTS auf eine pfadgetrennte Liste erlaubter Repository-Wurzeln. Ohne Allowlist müssen dekodierte Wurzeln weiterhin existieren und Verzeichnisse sein.

concord setup fügt .concord/ zur .gitignore des Repositorys hinzu, sodass der generierte Arbeitsbereich standardmäßig lokal bleibt. Teams, die ausgewählte Artefakte in PRs wünschen, können diese Regel entfernen oder die menschenlesbaren Dateien per Force-Add hinzufügen:

.concord/
├── concord.db          local source of truth
├── HANDOFF.md          human-readable handoff
├── REVIEW_PACKET.md    review-ready evidence
└── WORK_STATE.json     generated export (optional)

CLI

Concord unterstützt sowohl typisierte MCP-Tools als auch eine reguläre CLI. MCP-fähige Agenten können die Tools direkt aufrufen; Menschen und CLI-orientierte Agenten können mit demselben gemeinsamen Arbeitsbereich über concord-Befehle arbeiten.

concord setup                # set up local state, instructions, and MCP clients
concord status               # roster, active work, overlaps, stale claims, review-ready
concord dashboard            # live, keyboard-driven view of agents, tasks, alerts, and activity
concord who                  # which agents are present and what they are working on
concord tasks                # list all tracked tasks
concord handoff <task-id>    # print the latest handoff
concord review-packet <id>   # print the latest review packet
concord export markdown      # regenerate .concord/ artifacts
concord doctor               # workspace checks + per-task tool adoption
concord adapters status      # global harness delivery capability matrix

concord --repo ../project status        # select by repository path from anywhere
concord --workspace ws_... status       # select an id returned by a Concord operation

--repo und --workspace sind globale, sich gegenseitig ausschließende Optionen. Die CLI verwendet dieselbe CONCORD_REPO_ROOTCLAUDE_PROJECT_DIR → Arbeitsverzeichnis-Priorität und dieselbe verknüpfte Worktree-Kanonisierung wie MCP.

concord dashboard ist eine schreibgeschützte, Vollbild-lokale TUI. Sie aktualisiert sich jede Sekunde aus dem gemeinsamen SQLite-Arbeitsbereich und hält Agenten, Aufgaben, Warnungen, Kontext und Zeitachse in einem festen Terminal-Viewport. Verwenden Sie Tab, um Bereiche zu wechseln, j/k oder die Pfeiltasten, um Arbeit auszuwählen, / zum Filtern, ? für Hilfe und q zum Beenden.

Upgrade

npm install -g @concord-ai/concord-mcp@latest
concord --version

Concord prüft täglich und zeigt verfügbare Updates in der CLI, den MCP-Tools und dem Dashboard an; concord setup kann eines mit Bestätigung installieren, und CONCORD_NO_UPDATE_CHECK=1 deaktiviert die Prüfungen.

Was dies ist / nicht ist

Gemeinsamer Arbeitszustand und Aufgaben-Gedächtnis für Coding-Agenten, die denselben lokalen Checkout verwenden. Kein Orchestrator, Code-Reviewer, gehosteter Sync-Dienst, Speicher- Vektor-DB oder autonomer Coding-Agent.

Siehe auch: Warum nicht einfach Markdown?

Mitwirken

Siehe CONTRIBUTING.md und CLAUDE.md. Dieses Repo ist streng typisiert (kein any, keine Typecasts) und modular. Gute erste Aufgaben sind mit good first issue gekennzeichnet.

Stern-Verlauf

Datenschutz & Telemetrie

Concord sendet Produkt- und Koordinationstelemetrie an getconcord.ai. Dazu gehören zufällige Installations-/Aufruf-Identifikatoren; irreversible Installations-, Workspace- und Task-Flow-Pseudonyme; Concord-/Node-/Plattform-Versionen; normalisierte Client- Metadaten; Operationsnamen, -ergebnisse und -dauern; aggregierte Überlappungs-/Bearbeitungsschutz- Ergebnisse; Nachrichtenzustellungsstufen und -latenzen; Task-Lebenszyklusübergänge und verstrichene Zeiten; sowie explizit gemeldete Akzeptanz-, Integrations-, menschliche Eingriffs- und Nacharbeitsergebnisse.

Concord sendet niemals Code, rohe Datei- oder Repository-Pfade, Remotes, Benutzernamen, rohe Task- oder Agenten-Identifikatoren, Nachrichten-IDs oder -inhalte, Befehlsargumente, Tool-Eingaben/-Ausgaben oder Task-Inhalte. Der empfangende Server speichert die Anfrage-IP-Adresse und leitet daraus ein Ländercode ab/speichert ihn. Diese serverseitigen Felder haben derzeit keinen automatischen Ablauf. Setzen Sie CONCORD_TELEMETRY_DISABLED=1 (oder DO_NOT_TRACK=1), um Telemetrie zu deaktivieren. Die Zustellung erfolgt nach bestem Bemühen und kann niemals dazu führen, dass eine Concord-Operation fehlschlägt.

Lizenz

MIT

Available Tools

5 tools
finish_workFinish workB

Record completion evidence and atomically leave the task active as a handoff, mark it review-ready, or close it with a complete/closed outcome.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoAudited terminal reason; defaults to the change summary
outcomeNoFinal task state; handoff records evidence without changing lifecycle statecomplete
task_idYesStable task identifier, e.g. TASK-12
agent_idNoUsually omit — Concord derives your identity from your session. Pass only the id your client told you (Codex); a session Concord can see always wins.
decisionsNoNotable decisions and why
diff_sizeNoRough diff size, e.g. +120 / -30
tests_runNoTest commands run
next_stepsNoRemaining work or follow-ups
provenanceNoEvidence source for review claims
assumptionsNoAssumptions made
known_risksNoKnown risks introduced
what_changedYesConcise summary of what changed
workspace_idNoWorkspace id returned by a Concord operation. Omit to use the automatically resolved repository workspace.
changed_filesNoFiles that changed
open_questionsNoUnresolved review questions
expected_versionYesTask version last read by the caller; stale versions are rejected
reported_outcomeNoOptional measured acceptance, integration, or intervention result
needs_review_fromNoWho should review
guardrails_checkedNoGuardrails checked

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses atomicity and that the handoff outcome does not change lifecycle state, which is useful. However, it does not mention other behaviors like version staleness rejection, permission requirements, or idempotency—only the schema covers these.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core action and concisely lists the three outcome alternatives. Every word earns its place without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 19-parameter schema with full descriptions and no output schema, the description provides key behavioral context (recording evidence and state transitions). It is adequate for the tool's primary purpose, though it leaves the return value or side effects unexplained, which is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds minimal semantic value beyond the schema; it ties outcomes to lifecycle changes, but that is already documented in the outcome property. No additional parameter context is offered.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('record') and resource ('completion evidence') and enumerates the three possible task state outcomes. It clearly identifies the tool as the finalization step, though it does not explicitly contrast with update_work or transfer_work.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does but provides no explicit guidance on when to use it versus the sibling tools (e.g., update_work, transfer_work). The outcome choices are described, but the description lacks conditions or exclusions that would help an agent decide to pick this tool over alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_workInspect workA
Read-onlyIdempotent

Read the workspace, one task, one agent communication inbox/outbox, or one durable prompt/reply thread by supplying at most one selector.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idNoTask to inspect; omit for the whole workspace state
agent_idNoAgent communication inbox/outbox to inspect
message_idNoPrompt/reply thread to inspect
workspace_idNoWorkspace id returned by a Concord operation. Omit to use the automatically resolved repository workspace.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare this as read-only, idempotent, and non-destructive, so the description correctly aligns with them. Beyond that, it adds the constraint that only one selector can be supplied at a time and clarifies the different scopes (workspace, task, agent, message). This additional behavioral context is valuable and not present in the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core action ('Read') and lists the scope. There is zero fluff; every word earns its place, and the selector constraint is clearly stated at the end.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only inspection tool with four optional parameters, the description adequately explains the various selection modes and the workspace resolution behavior. It does not describe the return format, but given the tool name and the read-only nature, the output is self-evident. With no output schema, this would be a minor gap, but the description covers enough for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter already has a clear description. The tool description adds the global constraint of 'at most one selector' and restates the resource types, but it does not provide deeper semantics beyond the schema. This meets the baseline for a well-covered schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Read' and lists the distinct resources (workspace, task, agent inbox/outbox, prompt/reply thread), making the tool's purpose unmistakable. It also clearly distinguishes it from the sibling tools (start_work, update_work, etc.) which are all actions, while this is the only inspection tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by stating that at most one selector can be supplied, which is useful for invoking the tool correctly. However, it does not explicitly state when to use this tool versus alternatives, nor does it provide any exclusions or conditions. The distinction from siblings is obvious from the tool names, but the description itself does not verbalize it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_workStart workA

Enter one task before editing: register or refresh this agent, accept addressed work when needed, claim the declared scope, and return actionable overlap warnings.

ParametersJSON Schema
NameRequiredDescriptionDefault
cwdNoAgent working directory
pidNoAgent process id, if known
kindYesAgent type or provider, e.g. claude-code or codex
modelNoModel the agent is running
notesNoConcise task notes
ownerNoHuman accountable for this agent and task
titleYesShort human-readable title
branchNoGit branch, if known
domainsNoProduct domains touched
modulesNoLogical modules touched
summaryNoOne-line description of the current work
task_idYesStable task identifier, e.g. TASK-12
agent_idNoUsually omit — Concord derives your identity from your session. Pass only the id your client told you (Codex); a session Concord can see always wins.
worktreeNoGit worktree path, if used
risk_tagsNoRisk tags shared with related work
workspace_idNoWorkspace id returned by a Concord operation. Omit to use the automatically resolved repository workspace.
expected_filesNoFiles expected to change
parent_task_idNoParent task for a smaller claimed unit

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden, and it does well: it discloses the multi-step side effects (register/refresh agent, accept addressed work, claim scope) and the return value ('actionable overlap warnings'). It communicates stateful behavior agents would not otherwise know from the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single compact sentence, efficiently front-loaded with the when ('Enter one task before editing') before the action list. The list of steps is dense but each item earns its place; no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex 18-parameter workflow tool, the description captures the essential journey (register, accept, claim, return warnings) and names the output. The required parameters are covered by the schema, so nothing critical is missing for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so every parameter is already documented and the baseline is 3. The description's mention of 'claim the declared scope' and 'overlap warnings' loosely maps to workspace_id/risk_tags/expected_files, but it adds no concrete format or syntax guidance beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Enter one task before editing: register or refresh this agent, accept addressed work when needed, claim the declared scope') with a clear resource and purpose. It implicitly differentiates from siblings (inspect/update/transfer/finish) by being the task-entry and scope-claiming action, though it doesn't name them explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Enter one task before editing' establishes when to use the tool as a pre-edit registration step, and 'accept addressed work when needed' gives conditional context. However, it never names alternatives such as update_work or finish_work or states when NOT to use it, leaving selection to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transfer_workTransfer workC

Apply one versioned ownership action: assign, accept, decline, release, reassign, offer an evidence-bearing handoff, or reopen terminal work.

ParametersJSON Schema
NameRequiredDescriptionDefault
forceNo
actionYesOwnership action to apply through the versioned task state machine
reasonNo
task_idYesStable task identifier, e.g. TASK-12
agent_idNoUsually omit — Concord derives your identity from your session. Pass only the id your client told you (Codex); a session Concord can see always wins.
decisionsNoNotable decisions and why
tests_runNoTest commands run
handoff_idNoPending handoff to resolve; inferred from the task when omitted
next_stepsNoRemaining work or follow-ups
assumptionsNoAssumptions made
known_risksNoKnown risks introduced
to_agent_idNoRequired for assign, reassign, and offer
what_changedNoRequired for offer
workspace_idNoWorkspace id returned by a Concord operation. Omit to use the automatically resolved repository workspace.
changed_filesNoFiles that changed
lease_secondsNo
expires_secondsNo
expected_versionYesTask version last read by the caller; stale versions are rejected
guardrails_checkedNoGuardrails checked

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It hints at 'versioned' and 'evidence-bearing handoff' but does not explain what versioning entails, whether actions are reversible, what state transitions occur, or what happens on failure. The description is too sparse to convey the operational impact of this mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently conveys the core action set and concept. It contains no filler and gets to the point immediately. For a tool with 19 parameters, it is appropriately terse, though it could arguably benefit from more structure to improve scannability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (19 parameters, no output schema, no annotations), the description is severely incomplete. It does not explain the versioning mechanism, the required fields for each action, the nature of an 'evidence-bearing handoff', or how these actions fit into the broader workflow with siblings. An agent would need to infer too much to use it correctly and safely.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 79%, which is high, so the baseline is 3. The tool description adds no parameter-specific details beyond listing the action enum values, which are already present in the schema. Since the schema already documents parameters like task_id, action, expected_version, and to_agent_id, the description's lack of parameter elaboration does not significantly hinder understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb ('Apply') and a specific resource ('versioned ownership action') and enumerates all seven allowed actions, making the tool's purpose unambiguous. It does not explicitly contrast with sibling tools, but the action list clearly distinguishes it from start_work, update_work, and finish_work, so the purpose is well-defined.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus its siblings. The description does not mention that this is for transferring ownership between agents, nor does it reference start_work, update_work, or finish_work, or any conditions that would make this tool the right choice. An agent is left to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_workUpdate workC

Record task context or deliver a live prompt/reply to another promptable workspace agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNoKind of task-scoped update
contentYesConcise context another agent needs
task_idNoRequired for record; optional context for prompts
agent_idNoUsually omit — Concord derives your identity from your session. Pass only the id your client told you (Codex); a session Concord can see always wins.
operationNoDefaults to record; prompt and reply deliver live inter-agent messages
to_agent_idNoRecipient required for prompt
workspace_idNoWorkspace id returned by a Concord operation. Omit to use the automatically resolved repository workspace.
delivery_modeNoLive delivery mode; steer is the only mode in v1
idempotency_keyNoRequired for prompt and reply; makes delivery safe to retry
reply_to_message_idNoMessage being answered for reply

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'live' delivery for prompts/replies but does not disclose idempotency requirements, delivery semantics, persistence of records, or any side effects. The schema covers idempotency_key requirement for prompt/reply, but that is in the schema, not this description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short and front-loaded, which is efficient, but for a tool with 10 parameters and 3 operations it is too underspecified to be adequately informative. It is not verbose, but it fails to convey the operational complexity or usage nuances, so it earns a middle score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex tool with 10 parameters, three distinct operations, no annotations, and no output schema. The description merely lists two high-level capabilities and provides no clarity on operation selection, delivery behavior, or any edge cases. It is grossly incomplete for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds no parameter-level detail beyond what the schema already provides. It does not clarify the distinction between operations (record/prompt/reply) or explain any parameter interactions, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Record' and 'deliver') with a resource ('task context' and 'live prompt/reply'), clearly distinguishing this tool from siblings like start_work and finish_work by its messaging capability. However, it doesn't explicitly name sibling alternatives, so it stops short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives; the description only states what it does without any conditions, prerequisites, or exclusions. It does not explain which operation (record vs. prompt vs. reply) to choose based on context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv0.1.0
    • First observedfinish_work
    • First observedinspect_work
    • First observedstart_work
    • First observedtransfer_work
    • First observedupdate_work

TDQS

A3.7/5.0
Disambiguation5/5

Each tool targets a distinct phase of the work lifecycle: starting, inspecting, updating, transferring ownership, and finishing. The actions are clearly separated with no overlap or ambiguous boundaries.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with 'work' as the noun, using only snake_case and imperative verbs (start, inspect, update, transfer, finish). The pattern is fully uniform.

Tool Count5/5

Five tools is well-scoped for a workflow management server. Each tool covers a necessary stage without redundancy or bloat, making the set easy to navigate.

Completeness5/5

The tool set covers the entire task lifecycle: start, inspect (read), update (modify/communicate), transfer (ownership changes), and finish (close/handoff). It handles all major operations including reopening via transfer_work, so no critical gaps are apparent.

Maintenance

ActivityActive
ResponsivenessSlow

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    C
    maintenance
    This is a powerful Model Context Protocol (MCP) server that integrates multiple AI coding agents—Anthropic Claude Code, OpenAI Codex, and Google Gemini—directly into your workflow. It enables seamless cross-provider analysis, leveraging Gemini's massive token window, Codex's specialized coding capabilities, and Claude's advanced reasoning.
    10
    19
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables MCP clients like Claude Code and Cursor to use multiple AI models (Gemini, GPT, Grok, DeepSeek, Kimi, Ollama) via a unified chat tool with conversation memory.
    3
    1
    Apache 2.0

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Get-Concord-AI/concord-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server