Skip to main content
Glama

dsh-tools-mcp

deepseek-harness(DeepSeek AI がオープンソース化した agent harness)から ミニマルモード(minimal)スタンダードモード(standard) の tools を抽出し、MCP(Model Context Protocol) サーバーとしてラップします。--mode パラメータで公開するツールセットを制御します。

ツールの schema、説明文、出力エンベロープ(read<path>/<type>/<content> 形式、str_replace_editor の view/create/str_replace/insert セマンティクス、[exit code: N] マーカーなど)は、すべて元リポジトリの apps/cli/config/agent-presets/{minimal,standard}/agent.cordis.yml と対応する packages/*/tool-* 実装から忠実に再現しています。

モードとツール対照表

モード

パラメータ

ツール

ミニマルモード

--mode minimal

永続 shell(POSIX は bash、win32 は pwsh、状態は呼び出しをまたいで保持)+ str_replace_editor

スタンダードモード

--mode standard

bash/pwsh(単回実行)、readwriteeditread_imageglobgrepjob_output/job_list/job_killtodo_writeask_user_questionweb_searchget_goal/create_goal/update_goalplan_mode/exit_plan_modeskill

スタンダードモードは --with-web-fetch により web_fetch を追加公開することもできます(元の standard プリセットはデフォルトで fetch: false)。

Related MCP server: deepseek-agent-mcp

クイックスタート

cd dsh-tools-mcp
npm install
npm run build          # 输出到 dist/

# 极简模式
node dist/index.js --mode minimal --cwd D:/develop/project/dsh-tools-mcp

# 标准模式
node dist/index.js --mode standard --cwd D:/develop/project/dsh-tools-mcp

MCP クライアント設定

// mcp.json / WorkBuddy 自定义连接器
{
  "mcpServers": {
    "dsh-minimal": {
      "command": "node",
      "args": ["D:/develop/project/dsh-tools-mcp/dist/index.js", "--mode", "minimal", "--cwd", "D:/develop/project/dsh-tools-mcp"]
    },
    "dsh-standard": {
      "command": "node",
      "args": ["D:/develop/project/dsh-tools-mcp/dist/index.js", "--mode", "standard", "--cwd", "D:/develop/project/dsh-tools-mcp"]
    }
  }
}

2つのエントリを同時に登録でき、必要に応じてミニマル/スタンダードのツールセットを選択できます。

全パラメータ

--mode <minimal|standard>    Agent 预设模式(默认 minimal)
--cwd <path>                 工作区根目录,文件工具基于它解析相对路径(默认 process.cwd())
--shell <auto|bash|pwsh>     shell 后端;auto = win32 用 pwsh,其余用 bash
--shell-timeout-ms <n>       持久 shell 单条命令超时(默认 300000)
--max-output-chars <n>       输出截断上限(默认 16000)
--skills-dir <path>          启用 skill 工具,扫描该目录下的 SKILL.md 子目录
--search-provider <duckduckgo|tavily|bing>   web 搜索后端(默认 duckduckgo)
--search-api-key <key>       tavily/bing 的 API key
--proxy <url>                web 工具的 HTTP(S) 代理,如 http://127.0.0.1:7897
--with-web-fetch             额外暴露 web_fetch
--allow-outside-root         允许文件工具访问 --cwd 之外的路径(默认禁止)
--tools <a,b,c>              显式指定工具/套件清单覆盖模式(见下)
--help / --version

--tools オーバーライド

--tools はツール名またはスイート名を受け付け、必要に応じてサブセットを公開します:

# 只要文件相关
node dist/index.js --mode standard --tools read,write,edit,glob,grep

# 只要极简模式的编辑器 + 后台任务
node dist/index.js --mode minimal --tools str_replace_editor,job_output,job_list,job_kill

スイート名:shell(永続 shell)、one-shotfssearchjobstodowebask-usergoalplanskill

設計上の注意

  • 永続 shell:node-pty に依存せず、stdio パイプで常駐 bash/powershell 子プロセスを駆動します。コマンドはランダムな UUID マーカーで囲んで完了状態と終了コードを確実に捕捉します。cd/export などの状態は呼び出しをまたいで保持され、タイムアウトまたは shell 終了時に自動リセットされます(元の tool-bash-persistent セマンティクスと一致)。

  • パス安全性:デフォルトのファイルツールは --cwd ワークスペース内のパスのみアクセスを許可し、範囲外の場合はエラーとなり --allow-outside-root の追加を促します。

  • web_search はデフォルトで DuckDuckGo(キー不要)。中国国内のネットワークでは --proxy http://127.0.0.1:7897 を推奨。または --search-provider tavily --search-api-key <key> に切り替えます。

  • 状態はすべてプロセス内(セッションレベル):todo/goal/plan/バックグラウンドタスクの状態はサーバープロセスのライフサイクルに従い、再起動するとクリアされます——元の「セッションレベル状態」と同等です。

元の dsh との差異(明確な説明)

項目

元の dsh

本 MCP ラッパー

永続 shell

node-pty PTY ターミナル

stdio パイプ常駐プロセス(対話プロンプトなし、状態保持は同等)

ask_user_question

dsh UI 質問ブリッジ

MCP stdio では同期対話ができないため、質問テキストを返し、モデルにユーザーへ伝えるよう指示

plan_mode/exit_plan_mode

UI 承認フロー

サーバー側フラグ + プランテキストの返信

subagent_*/workflow/ralph

dsh ランタイムに依存(LLM サブエージェント、ワークフローエンジン)

未ラップ——完全な dsh ランタイムが必要。詳細は下記参照

grep エンジン

内蔵 ripgrep バイナリ

node 正規表現による実装(一般的な構文は同等、一部の ripgrep 機能は非対応)

未ラップのツール(元の standard プリセット内のランタイム結合ツールで、完全な dsh runtime が必要):subagent_controllist_agentssubagentsubagent_forkworkflowralph。これらの機能が必要な場合は、deepseek-harness 本体を直接使用してください。

テスト

npm run build
npm test          # 冒烟测试:两种模式工具暴露 + 核心工具行为 + --tools 覆写
node scripts/state-test.mjs   # 持久 shell 状态保持 / 退出码 / 优雅重置(PROXY=... 可测 web_search)
node scripts/bash-test.mjs    # bash 后端验证

ソースコード参照

deepseek-ai/deepseek-harness(MIT License、master ブランチ)から抽出:

  • モード定義:apps/cli/config/agent-presets/minimal/agent.cordis.yml.../standard/agent.cordis.yml

  • ツール実装:packages/shell/tool-bash-persistentpackages/fs/tool-str-replace-editorpackages/fs/tool-fspackages/fs/tool-fs-searchpackages/jobs/tool-jobspackages/todo/tool-todopackages/web/tool-webpackages/interaction/tool-ask-userpackages/goal/tool-goalpackages/plan/plan-modepackages/skill/tool-skill など

Install Server
F
license - not found
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer

  • MCP server for AI dialogue using various LLM models via AceDataCloud

  • Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.

View all MCP Connectors

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/hqzqaq/dsh-tools-mcp'

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