Skip to main content
Glama

Codex DSH MCP

Eine kostenbewusste MCP-Brücke, die es Codex ermöglicht, routinemäßige, kontextintensive Arbeiten an DeepSeek Harness zu delegieren – während Codex Architektur, Review und finale Verifikation unter Kontrolle behält.

Codex DSH MCP führt jeden DeepSeek-Worker in einem isolierten Git-Worktree aus, der aus dem committeten HEAD erstellt wird. Es übernimmt niemals automatisch Änderungen am Haupt-Workspace: Codex und der menschliche Reviewer erhalten zuerst ein kompaktes Ergebnis, einen Markdown-Bericht und einen Patch zur Prüfung.

Warum verwenden?

  • Repository-Erkundung, Routineimplementierungen, Refactorings, Tests und gewöhnliche Fixes an DeepSeek auslagern.

  • Hochriskante Architektur, Sicherheit, finales Review und Abnahme bei Codex behalten.

  • Eine fehlgeschlagene Delegation höchstens einmal wiederholen, dann ESCALATED_TO_CODEX zurückgeben, statt Aufrufe zu verschwenden.

  • Aufrufe, Dauer, Erfolgsquote und klar gekennzeichnete geschätzte/gemeldete Token-Nutzung pro Projekt verfolgen.

  • Den Haupt-Checkout geschützt halten: Worker arbeiten nur in isolierten Worktrees.

Related MCP server: dsh_agentlink

Schnellstart

  1. Klonen Sie dieses Repository und öffnen Sie den Ordner im Windows Explorer.

  2. Doppelklicken Sie auf install-windows.bat (oder führen Sie install-windows.ps1 in PowerShell aus).

  3. Führen Sie config.toml.example in %USERPROFILE%\.codex\config.toml zusammen und aktualisieren Sie den Brückenpfad.

  4. Führen Sie AGENTS.md in Ihre globalen oder projektspezifischen Codex-Anweisungen zusammen.

  5. Starten Sie Codex neu und bestätigen Sie, dass der deepseek-MCP-Server fünf Tools bereitstellt.

Was es bereitstellt

  • deepseek_explore – schreibgeschützte Repository-Erkundung/-Suche.

  • deepseek_task – normale Implementierungs-/Refactoring-/Testarbeit in einem isolierten Worktree.

  • deepseek_fix – Diagnose-Edit-Test-Schleife für Bugs/fehlgeschlagene Tests in einem isolierten Worktree.

  • deepseek_review – schreibgeschütztes fokussiertes Review.

  • deepseek_stats – schreibgeschützte Brückenstatistiken (Summen, Tool-Zähler, Erfolgsquote, durchschnittliche Dauer, Metadaten der letzten 10 Aufgaben).

Wie das Routing funktioniert

AGENTS.md weist Codex an, für kleine, kritische, architektonische, sicherheitsrelevante, destruktive oder bereits eskalierte Arbeiten DIRECT_CODEX zu wählen. Für breite Erkundung und Routinearbeit wählt es DELEGATE_DEEPSEEK – insbesondere wenn mehr als etwa drei Dateien gelesen, mehr als etwa zwei Dateien geändert werden müssen oder eine Edit-/Test-/Fix-Schleife wahrscheinlich ist. Codex scannt das Repository nicht zuerst, nur um diese Entscheidung zu treffen.

User
 ↓
Codex Router
 ├── Small / Critical ──→ Codex
 │
 └── Delegatable
       ↓
    DeepSeek
       ↓
 ┌─────┴─────┐
Success     Failure
 ↓             ↓
Review      Retry once
               ↓
          Failure again
               ↓
             Codex

Der Wiederholungsversuch ist ein fokussierter Bugfix-Versuch mit derselben Aufgaben-ID. Ein zweiter Fehlschlag gibt ESCALATED_TO_CODEX zurück; Codex übernimmt und darf dasselbe Problem nicht ein drittes Mal delegieren.

Anforderungen

  • Windows 10/11 (die Brücke hat auch einen POSIX-Pfad).

  • Node.js 20+.

  • Codex mit MCP-Unterstützung.

  • DeepSeek Harness als dsh verfügbar und bereits für das DeepSeek-Modell/den Dienst konfiguriert/authentifiziert, den Sie verwenden möchten.

Installation unter Windows

Öffnen Sie PowerShell in diesem Ordner:

Set-ExecutionPolicy -Scope Process Bypass
.\install-windows.ps1

Oder doppelklicken Sie auf install-windows.bat; es ist ein dünner Windows-Wrapper um denselben Installer.

Verifizieren Sie dann DeepSeek Harness unabhängig, bevor Sie Codex einbeziehen:

dsh --profile headless "Reply with exactly READY"

Wenn das nicht funktioniert, beheben Sie zuerst dsh. Die MCP-Brücke verwaltet DeepSeek-Anmeldedaten bewusst nicht selbst.

Codex konfigurieren

Führen Sie config.toml.example in %USERPROFILE%\.codex\config.toml zusammen und ersetzen Sie den Beispielpfad:

[mcp_servers.deepseek]
command = "node"
args = ["C:/tools/codex-deepseek-bridge/src/index.mjs"]
startup_timeout_sec = 20
tool_timeout_sec = 7200

[mcp_servers.deepseek.env]
DSH_BATCH_CONTROLLER = "C:/Users/Administrator/.codex/skills/dsh-batch-subagents/scripts/dsh-batch-agents.mjs"
DSH_COMMAND = "dsh"
DSH_TIMEOUT_MS = "1800000"
DSH_MAX_OUTPUT_CHARS = "6000"
DSH_AUTO_RETRY = "true"
DSH_MAX_RETRIES = "1"
DSH_STATS_ENABLED = "true"
DSH_TOKEN_STATS = "true"
DEEPSEEK_ALLOWED_ROOT = "D:/Projects"

Starten Sie Codex neu. In der Codex-TUI sollte /mcp den deepseek-MCP-Server und fünf Tools anzeigen.

Den Delegations-Prompt installieren

Für ein einzelnes Repository legen Sie AGENTS.md im Repository-Stamm ab (oder führen Sie den DeepSeek-Delegationsabschnitt in eine vorhandene AGENTS.md zusammen).

Für eine globale persönliche Richtlinie führen Sie den Inhalt in %USERPROFILE%\.codex\AGENTS.md zusammen. Projektspezifische Anweisungen können diese weiterhin überschreiben.

Vorgeschlagener erster Test

In einem Wegwerf-Git-Repository fragen Sie Codex:

Finden Sie heraus, wo die CLI-Argumente geparst werden. Verwenden Sie DeepSeek für die Repository-Erkundung und melden Sie die relevanten Dateien. Ändern Sie nichts.

Versuchen Sie dann eine harmlose Schreibaufgabe:

Fügen Sie einen kleinen Unit-Test für einen vorhandenen reinen Helfer hinzu. Delegieren Sie die Implementierung an DeepSeek, prüfen Sie dann den Diff und führen Sie den fokussierten Test selbst aus, bevor Sie den Erfolg melden.

Verifizieren Sie dann die Statistiken:

Führen Sie deepseek_stats aus, um die Brückennutzung und Token-Ersparnisse zu prüfen.

Umgebungsvariablen

Kern

Variable

Beschreibung

Standard

DSH_BATCH_CONTROLLER

Absoluter Pfad zum Controller für isolierte Worktrees

(erforderlich)

DSH_COMMAND

dsh oder ein absolutes DSH-JavaScript-Launcher-Modul, das sicher an den Controller übergeben wird

dsh

DSH_TIMEOUT_MS

Standard-Timeout für delegierte Aufgaben; begrenzt auf 10 s – 2 h

1800000 (30 Min)

DSH_MAX_OUTPUT_CHARS

Maximale Zeichen, die an den Codex-Kontext zurückgegeben werden

6000

DEEPSEEK_ALLOWED_ROOT

Optionales Wurzelverzeichnis; schränkt ein, auf welche Verzeichnisse DeepSeek zugreifen kann

(keines)

Automatische Wiederholung

Variable

Beschreibung

Standard

DSH_AUTO_RETRY

Ob bei vorübergehenden Fehlern automatisch wiederholt werden soll

true

DSH_MAX_RETRIES

Maximale Wiederholungen (über den ersten Versuch hinaus, also 1 = 2 Versuche insgesamt)

1

Statistiken

Variable

Beschreibung

Standard

DSH_STATS_ENABLED

Statistik-Persistenz aktivieren

true

DSH_STATS_FILE

Pfad zur Statistikdatei; absolut oder relativ zum Workspace

.codex-deepseek/stats.json

DSH_TOKEN_STATS

Token-Nutzungsverfolgung aktivieren

true

Ergebnisformat

Jedes Delegations-Tool gibt ein kompaktes strukturiertes JSON-Objekt zurück mit:

Feld

Beschreibung

status

success, failed oder escalated_to_codex

tool

Der Tool-Name (z. B. deepseek_task)

task_id

Eindeutige ID: ds_YYYYMMDD_shortid

attempt

Aktuelle Versuchsnummer

attempts

Tatsächliche Anzahl abgeschlossener Versuche

max_attempts

Konfiguriertes Maximum (erster Versuch + Wiederholungen)

duration_ms

Wanduhr-Dauer dieses Versuchs

exit_code

Exit-Code des Batch-Controllers

changed_files

Array der geänderten Dateipfade

tests

{ ran, passed, summary }

usage

Token-Nutzung mit source (reported/estimated) und estimated-Boolescher Wert

summary

Kurzbeschreibung dessen, was getan wurde

artifact_paths

{ run_dir, report, patch }

failure_type

timeout, controller_error, malformed_output, unable_to_complete, test_failure, no_changes oder null

retry_recommended

Ob dieser Fehlertyp für eine Wiederholung geeignet ist

will_retry

Ob tatsächlich ein weiterer Versuch unter dem konfigurierten Limit läuft

escalated

Boolescher Wert; true, wenn alle Versuche ausgeschöpft sind

escalation_marker

"ESCALATED_TO_CODEX", wenn ausgeschöpft

Eskalationsablauf

Tool call → attempt 1 (fails) → retry → attempt 2 (fails) → return escalated_to_codex

Wenn eine Delegation status: "escalated_to_codex" zurückgibt, sollte Codex die Ursache untersuchen und über die nächsten Schritte entscheiden. Die Brücke ruft niemals die Codex-API auf.

Token-Statistiken

Die Token-Nutzung wird aus der DeepSeek/Harness-Ausgabe geparst, wenn ein Nutzungs-JSON-Block verfügbar ist (source: "reported", estimated: false). Andernfalls wird sie aus den Zeichenzahlen von Prompt/Ergebnis mit etwa einem Token pro vier Zeichen approximiert (source: "estimated", estimated: true). Gemeldete Nutzung sind Anbieterdaten; geschätzte Nutzung ist nur eine Fallback-Annäherung.

Die projektbezogene Datei .codex-deepseek/stats.json speichert begrenzte Metadaten für höchstens 100 Versuche und wird über eine temporäre Datei mit anschließender Umbenennung geschrieben. Sie speichert niemals den vollständigen Aufgaben-Prompt, die Ergebniszusammenfassung, den Diff, die geänderten Dateipfade oder Artefaktpfade. deepseek_stats gibt Summen, Erfolgsquote, durchschnittliche Dauer, Zähler pro Tool und die letzten 10 Metadateneinträge zurück.

estimated_codex_tokens_avoided verwendet die Menge des von DeepSeek verarbeiteten Kontexts als groben Näherungswert für Kontext, den Codex nicht verarbeiten musste. Es ist immer mit estimate_only: true gekennzeichnet. Es ist keine OpenAI- oder Codex-Kontingentmessung und sollte nur verwendet werden, um zu beurteilen, ob Delegation in die richtige Richtung sinnvoll ist.

Sicherheitsmodell

deepseek_task und deepseek_fix erlauben DeepSeek Harness, nur einen isolierten Git-Worktree zu bearbeiten. Berichte und Patches werden außerhalb des Repositorys für Codex und menschliche Prüfung aufbewahrt. Nichts wird automatisch zusammengeführt oder angewendet.

deepseek_explore und deepseek_review laufen ebenfalls in isolierten Worktrees. Ihr schreibgeschütztes Verhalten bleibt eine Richtlinie auf Prompt-Ebene, aber versehentliche Schreibvorgänge können den Haupt-Workspace nicht berühren.

deepseek_stats ist schreibgeschützt und greift nur auf die Statistikdatei zu.

Warum dies Codex-Nutzung spart

Die teure Schleife ist normalerweise Repository-Suche → viele Dateilesevorgänge → Implementierung → Tests → Fehleranalyse → Wiederholung. Die Brücke verschiebt diese Schleife in eine separate DeepSeek-Harness-Sitzung. Nur DeepSeeks kompaktes strukturiertes Ergebnis kehrt zu Codex zurück; Codex kann dann den resultierenden Diff prüfen und gezielte Verifikation durchführen.

Autor

Erstellt und gepflegt von @sakurameishi.

Lizenz

MIT © 2026 sakurameishi.

Available Tools

5 tools
deepseek_exploreA
Read-onlyIdempotent

Delegate repository exploration, code search, dependency tracing, or implementation-location discovery to DeepSeek Harness. Read-only: DeepSeek is instructed not to modify files. Returns compact structured JSON.

NameRequiredDescriptionDefault
cwdNoWorkspace directory. Defaults to the MCP server process working directory.
taskYesThe concrete coding task to delegate to DeepSeek Harness.
timeout_minutesNoOptional timeout override in minutes.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds that DeepSeek is 'instructed not to modify files' and returns 'compact structured JSON,' which reinforces the read-only nature and provides output format context. This adds value beyond the annotations without contradicting them.

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 two sentences, front-loaded with the core purpose, and includes a read-only note and output format. Every sentence earns its place with no fluff.

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 tool's complexity (delegation to an external harness), the description covers the purpose, read-only behavior, and output format. It lacks details on how the task is executed or what 'compact structured JSON' contains, but with no output schema and good annotations, the description is reasonably complete for an agent to decide and invoke.

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 the schema already documents all three parameters (cwd, task, timeout_minutes). The description does not add additional parameter semantics beyond what the schema provides. Baseline 3 is appropriate since the schema does the heavy lifting.

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 clearly states the tool's purpose: 'Delegate repository exploration, code search, dependency tracing, or implementation-location discovery to DeepSeek Harness.' It uses specific verbs (explore, search, trace, discover) and a clear resource (repository). It distinguishes from siblings by focusing on exploration/discovery rather than task execution, fixing, reviewing, or stats.

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

Usage Guidelines4/5

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

The description implies when to use this tool: for exploration, code search, dependency tracing, and implementation-location discovery. It does not explicitly state when not to use it or name alternatives, but the sibling tools (deepseek_task, deepseek_fix, deepseek_review, deepseek_stats) provide context. The description could be more explicit about exclusions, but the purpose is clear enough for an agent to infer usage.

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

deepseek_fixA

Delegate a bug-fix or failing-test loop to DeepSeek Harness in an isolated Git worktree. The main workspace is never modified automatically. Returns compact structured JSON.

NameRequiredDescriptionDefault
cwdNoWorkspace directory. Defaults to the MCP server process working directory.
taskYesThe concrete coding task to delegate to DeepSeek Harness.
evidenceNoOptional error message, failing test output, stack trace, or symptoms already observed by Codex.
timeout_minutesNoOptional timeout override in minutes.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=false, idempotentHint=false, destructiveHint=false, but the description adds important context: the tool operates in an isolated Git worktree and never modifies the main workspace automatically. This goes beyond the annotations and clarifies the safety profile. It also mentions the return format (compact structured JSON), which is useful. No contradiction with 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 two sentences, front-loaded with the core purpose, and includes a key safety guarantee and return format. Every sentence earns its place with no fluff.

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 tool's moderate complexity (4 params, no output schema, no nested objects), the description is fairly complete. It explains the isolation mechanism, the safety guarantee, and the return format. It could mention what happens on failure or how the worktree is cleaned up, but the annotations and schema cover the basics. A 4 is appropriate.

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 the schema already documents all four parameters. The description adds minimal extra meaning beyond what the schema provides, but it does mention the 'evidence' parameter implicitly by saying 'failing-test loop' and 'symptoms already observed'. Since the schema covers everything, a baseline of 3 is appropriate.

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 clearly states the tool's purpose: delegating a bug-fix or failing-test loop to DeepSeek Harness in an isolated Git worktree. It specifies the action (delegate), the resource (bug-fix/failing-test loop), and the isolation mechanism (worktree), which distinguishes it from siblings like deepseek_task or deepseek_explore.

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

Usage Guidelines4/5

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

The description implies when to use this tool: when there is a bug-fix or failing-test loop to delegate. It also notes that the main workspace is never modified automatically, which is a key usage consideration. However, it does not explicitly state when not to use it or name alternative tools, so it falls short of a 5.

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

deepseek_reviewA
Read-onlyIdempotent

Delegate a focused code review to DeepSeek Harness. Read-only: DeepSeek is instructed not to modify files. Returns only material findings. Returns compact structured JSON.

NameRequiredDescriptionDefault
cwdNoWorkspace directory. Defaults to the MCP server process working directory.
taskYesThe concrete coding task to delegate to DeepSeek Harness.
focusNoOptional review focus such as correctness, concurrency, security, performance, or API compatibility.
timeout_minutesNoOptional timeout override in minutes.

TDQS

A4/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true and destructiveHint=false, and the description reinforces this with 'Read-only: DeepSeek is instructed not to modify files.' It adds value by explaining the agent will not make changes and by stating the output behavior: 'Returns only material findings. Returns compact structured JSON.' Though it doesn't mention advanced details like auth or rate limits, it enriches beyond the annotations with output expectations.

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 exceedingly concise—two sentences—yet packs in all key information: action, read-only guarantee, output filtering, and output format. It front-loads the primary purpose and delivers maximum information density 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?

For a simple delegation tool with 4 parameters (1 required) and no output schema, the description adequately contextualizes the tool's role and output expectations. It covers the core aspects: what it does, its safety profile, and partial output details. While it could elaborate on 'material findings' or the exact JSON structure, the description is sufficient for an agent to use the tool effectively without confusion.

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?

The input schema has 100% description coverage, with parameters like task and focus clearly documented. However, the description adds no additional semantic meaning beyond what's in the schema. It simply outlines the tool's high-level behavior without elaborating on parameter usage or providing examples. Thus, it meets the baseline but doesn't exceed it.

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 clearly states the tool's function with a specific verb and resource: 'Delegate a focused code review to DeepSeek Harness.' It distinctly identifies the operation (delegating a code review) and differentiates it from sibling tools like deepseek_task or deepseek_fix, which likely handle task execution or bug fixes. The 'focused' modifier adds precision, and the description leaves no ambiguity about what the tool does.

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 ('Delegate a focused code review') but does not explicitly state when to prefer this tool over siblings or provide exclusions. There's no mention of alternatives or when not to use it. A 3 reflects that the usage context is implied but not explicitly guided.

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

deepseek_statsA
Read-onlyIdempotent

Read-only bridge statistics. Returns concise totals, tool counts, success rate, average duration, and last 10 task metadata. Results are drawn from the project-level stats file (.codex-deepseek/stats.json).

NameRequiredDescriptionDefault
cwdNoWorkspace directory used to locate the stats file. Defaults to the MCP server process working directory.

TDQS

A4/5.0
Behavior4/5

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

Beyond annotations (readOnlyHint, idempotentHint), the description adds that results are drawn from a project-level stats file (.codex-deepseek/stats.json), providing extra context about data provenance. 'Read-only' aligns with annotations, and no contradictions exist.

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 concise and well-structured: two sentences, front-loaded with purpose ('Read-only bridge statistics'), and each clause provides useful information 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 simple tool (1 optional param, no output schema), the description explains the return categories (totals, counts, success rate, duration, last 10 task metadata) sufficiently. It might be slightly more complete with mention of failure modes (e.g., missing stats file), but that is not essential for this tool.

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?

The schema description coverage is 100% (the single 'cwd' parameter is fully described in the input schema). The tool description does not add any parameter details beyond the schema, so it meets the baseline but offers no extra semantic value.

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 clearly states the tool's function: returns bridge statistics including totals, tool counts, success rate, average duration, and last 10 task metadata. It distinguishes from sibling tools (task/fix/explore/review) by being a stats aggregator, and the verb 'Returns' is specific.

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 for obtaining overall statistics but does not explicitly say when to use it over alternatives or when not to use it. Context from sibling names helps, but there is no direct guidance on selection.

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

deepseek_taskA

Delegate a normal implementation/refactor/debug task to DeepSeek Harness in an isolated Git worktree. The main workspace is never modified automatically; Codex must review the report and patch before applying anything. Returns compact structured JSON with status, task_id, retry information, usage, and artifact paths.

NameRequiredDescriptionDefault
cwdNoWorkspace directory. Defaults to the MCP server process working directory.
taskYesThe concrete coding task to delegate to DeepSeek Harness.
timeout_minutesNoOptional timeout override in minutes.

TDQS

A3.8/5.0
Behavior4/5

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

Beyond the raw annotations (readOnly:false, destructive:false), the description adds valuable behavioral context: the isolation guarantee ('main workspace is never modified automatically') and the mandatory review gate ('Codex must review the report and patch before applying anything'). This paints a coherent safety model — the operation produces work but is gated — that the annotations alone don't fully convey. It stops short of addressing failure paths, but for this complexity level it's strong.

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?

Three sentences, each earning its place: (1) what and where, (2) safety/review gate, (3) return format. Front-loaded with the purpose statement, zero fluff, and optimally scannable for an agent parsing the definition.

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 3-param tool with no output schema, the description covers the key facets: delegation target, isolation model, safety gate, and return contract (status, task_id, retry info, usage, artifact paths). Remaining minor gaps: no guidance on error/failure behavior or how task_id might chain with sibling tools, but neither is critical given the explicit safety workflow.

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% — cwd, task, and timeout_minutes already have meaningful descriptions with defaults, constraints, and types. The description adds no additional parameter semantics on top of the schema, so the baseline of 3 is appropriate. The 'Returns compact structured JSON...' sentence describes the output, not the parameters.

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 pairs a specific verb ('Delegate') with a resource ('DeepSeek Harness in an isolated Git worktree') and a clear scope ('normal implementation/refactor/debug task'). The word 'normal' implicitly contrasts with the specialized sibling tools (fix/explore/review/stats), though it stops short of explicitly naming them as alternatives.

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?

Usage is implied rather than stated: 'normal implementation/refactor/debug task' signals this is the general-purpose sibling, while deepseek_explore/review/fix/stats handle specialization. However, there are no explicit when-to-use, when-not-to-use, or named-alternative statements, and the safety workflow note ('Codex must review the report and patch before applying anything') is about execution behavior rather than selection criteria.

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.

  1. 5 tool updatesv0.2.0
    • First observeddeepseek_explore
    • First observeddeepseek_fix
    • First observeddeepseek_review
    • First observeddeepseek_stats
    • First observeddeepseek_task

TDQS

A4.2/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: task delegation, bug fixing, exploration, review, and statistics. The descriptions explicitly differentiate read-only operations and the action types, leaving no ambiguity.

Naming Consistency5/5

All tools follow the identical `deepseek_` prefix with a verb indicating the action (task, fix, explore, review, stats). This consistent pattern makes the API predictable and easy to navigate.

Tool Count5/5

With only 5 tools, the set is tightly scoped to the core operations of the DeepSeek Harness bridge. Each tool serves a distinct necessary function without redundancy or bloat.

Completeness4/5

The tools cover the primary workflows (delegation, fixing, exploration, review, and stats). A minor gap is the lack of explicit task status or cancellation tools, though the stats tool implicitly provides an overview. The surface is otherwise well-rounded.

Maintenance

ActivityStale
ResponsivenessNo recent community issues

Related MCP Connectors

Related MCP Servers