Skip to main content
Glama

dsh-cordis-mcp

DeepSeek Harness の動的 Cordis ツールセットMCP(Streamable HTTP)として Claude Code に公開します。Claude Code は DSH の動的プラグインをリアルタイムにロード、定義、実行、更新、停止、削除できます。DSH セッションで cordis_define / cordis_run / cordis_stop / cordis_undefine / cordis_inspect_* を使うのとまったく同じ能力、同じランタイムエージェントです。

┌─────────────┐   MCP (Streamable HTTP, loopback)   ┌───────────────────────────┐
│ Claude Code │ ────── http://127.0.0.1:8090/mcp ──▶ │ DSH host (本插件)           │
│  (claude)   │ ────── JSON-RPC 2.0 ───────────────▶ │  dynamicCordisRunner      │
└─────────────┘                                       │  cordisInspect            │
                                                      │  agents (会话解析)         │
                                                      └───────────────────────────┘

プラグインは既存の Web ポートにマウントされ、新しいポートを開いたりサービスを公開したりしません。MCP エンドポイントはBearer 認証を必須とし、トークンは DSH 設定 → dsh-cordis-mcp ページで設定します(初回は自動生成され、カスタマイズ/再生成が可能です)。

機能(10 ツール)

MCP ツール

対応 DSH ツール

説明

dsh_status

ブリッジ状態: セッション解決、ライブセッション一覧、プラグイン数

dsh_sessions

管理可能なライブ DSH セッションを一覧表示(プラグインはセッション単位)

dsh_plugins_list

cordis_inspect_self(無引数)

対象セッションの全動的プラグインと状態を一覧表示

dsh_plugin_inspect

cordis_inspect_self(引数あり)

プラグイン/パッケージの詳細。packageId を指定するとソースコードを返す

dsh_inspect_providers

cordis_inspect_list

Inspect プロバイダディレクトリ(host + client)

dsh_inspect_query

cordis_inspect_query

読み取り専用の inspect クエリを 1 回実行(サービス/イベント/ビルトイン/スロット/テーマ/ツールディレクトリ)

dsh_plugin_define

cordis_define

不変 Package を定義(新規プラグイン作成またはバージョン追加)

dsh_plugin_run

cordis_run

Package をアクティベート(run / update)。awaiting-approval を返す場合あり

dsh_plugin_stop

cordis_stop

実行を停止し、未承認の承認をキャンセル。定義とバージョンは保持

dsh_plugin_undefine

cordis_undefine

プラグインを完全削除(全 Package、認可、バージョンポインタを含む)

Client half を含むパッケージの初回実行は、引き続き DSH の承認フローを経由します。dsh_plugin_runawaiting-approval を返し、DSH Web GUI の Run カードで許可をクリックすると非同期に完了します——DSH セッション内と同じです。

Related MCP server: cc-plugin-mcp

ワンクリックインストール

curl -fsSL https://raw.githubusercontent.com/GeekRicardo/dsh-cordis-mcp/main/install.sh | bash

スクリプトが行うこと(事前に --dry-run でプレビュー可能):

  1. ~/.dsh/profiles/web/package.json に依存関係 "dsh-cordis-mcp": "github:GeekRicardo/dsh-cordis-mcp" を書き込む。

  2. dsh-cordis-mcpdsh.profile.bundles に追加する。

  3. cd ~/.dsh/profiles/web && pnpm install を実行する。

  4. bundles が登録されたことを検証し、再起動を促す。

DSH を再起動してページをハードリフレッシュすると、MCP エンドポイントが Web サービスとともに利用可能になります:

pm2 restart dsh-web   # 若用 pm2 托管;否则用你的启动方式重启

Claude Code への接続

# 端口换成你 DSH web 的实际端口(启动日志会打印完整地址)
claude mcp add dsh --transport http http://127.0.0.1:8090/mcp
claude mcp list          # 确认 connected

認証(必須、直接接続不可)

MCP エンドポイントはBearer 認証を必須とし、トークンがない場合はすべて 401(トークン未設定の場合は 503)を返します。トークンは DSH 設定 → dsh-cordis-mcp ページで設定します。初回使用時に自動生成されて永続化され、ページで表示/コピー/カスタマイズ/再生成が可能です。トークンを .mcp.json のリクエストヘッダーに記入します:

{
  "mcpServers": {
    "dsh": {
      "type": "http",
      "url": "http://127.0.0.1:8090/mcp",
      "headers": { "Authorization": "Bearer <设置页里的 token>" }
    }
  }
}

トークンの解決優先順位: 設定ページの設定 > DSH_MCP_TOKEN 環境変数 > 自動生成。トークンを変更すると即座に有効になります(再起動不要)。再生成後は古いトークンが即座に無効になるため、Claude Code の設定も同期して更新する必要があります。

セッションセマンティクス(重要)

動的プラグインはセッション単位で、プロセスのメモリ状態です(DSH を再起動すると消去されます)。ブリッジのセッション解決順序:

  1. 呼び出しパラメータの sessionIddsh_sessions で確認可能)。

  2. 環境変数 DSH_MCP_DEFAULT_SESSION で指定。

  3. 現在の唯一のライブセッション。

  4. ライブセッションが複数あるが未指定の場合 → エラーで選択肢を列挙し、sessionId を渡すよう要求。

その他の環境変数

変数

デフォルト

説明

DSH_MCP_PATH

/mcp

MCP エンドポイントのパス(webServer にマウント)

DSH_MCP_TOKEN

なし

認証トークンのフォールバック元(設定ページで未設定の場合に使用)

DSH_MCP_DEFAULT_SESSION

なし

sessionId を明示的に渡さない場合の対象セッション

セキュリティ境界

  • Bearer 認証を必須:トークンがない場合はすべて 401 / 503。エンドポイントは常に直接接続不可。

  • loopback Host(127.* / localhost / ::1)のみ受け入れ、外部からのアクセスはすべて拒否。

  • sec-fetch-site: cross-site のブラウザリクエストを拒否し、CORS ヘッダーは決して返さない——Web ページはレスポンスを読み取れない。

  • 設定ページのルート /dsh-cordis-mcp/settings は同一オリジンの loopback のみ許可(MCP トークンは不要だが、変更できるのはトークン設定自体のみ)。

  • このエンドポイントはプラグインの define/run/削除が可能で、シェル権限と同等です。ポートをローカル以外に公開しないでください。

動作原理

ファイル

役割

lib/mcp-protocol.js

純粋な MCP JSON-RPC レイヤー(initialize / ping / tools/list / tools/call)。DSH 依存ゼロ

lib/tools.js

10 ツールの入力検証 + セッション解決。dynamicCordisRunner / cordisInspect をラップ

lib/token.js

純粋なトークン解決/生成(設定 > env > 自動生成)

lib/http.js

MCP ルートの HTTP レイヤー: 必須認証、body 読み取り、loopback/クロスサイト保護

lib/index.js

Cordis プラグイン: 5 つのホストサービス、settings 名前空間、/mcp + /dsh-cordis-mcp/settings の 2 つのルートを注入

lib/client.js

設定ページ UI: トークンの表示/コピー/カスタマイズ/再生成 + エンドポイントアドレス

アンインストール

# 1. 从 ~/.dsh/profiles/web/package.json 的 dsh.profile.bundles 移除 "dsh-cordis-mcp"
# 2. 移除 dependencies 里的 "dsh-cordis-mcp"
# 3. cd ~/.dsh/profiles/web && pnpm install
# 4. 重启 DSH;claude mcp remove dsh

前提条件

  • DeepSeek Harness が web profile を初期化済み(~/.dsh/profiles/web が存在)で、現在のセッションが Cordis ツールセット付きの preset で動作していること(ホスト側の dynamicCordisRunner サービスが存在。デフォルトで有り)。

  • ローカルに Claude Code CLI がインストールされ、ログイン済みであること。

  • Node.js ≥ 20、pnpm が利用可能であること。

Troubleshooting

現象

原因と対処

claude mcp list が disconnected を表示

DSH が再起動されていない / ポートが正しくない。再起動後、DSH 起動ログの [dsh-cordis-mcp] MCP endpoint ready の行を探し、表示されたアドレスを使う

dsh_plugin_runawaiting-approval を返す

Client half を含むパッケージは DSH Web GUI の Run カードで許可する必要がある。承認後、dsh_plugin_run を再実行

multiple live DSH sessions エラー

ライブセッションが複数ある。まず dsh_sessions で id を確認し、呼び出しで sessionId を渡す

no live DSH session エラー

DSH Web GUI でセッションが開かれていない。開いてから再試行

401 / missing or invalid bearer token

.mcp.json のトークンが期限切れまたは誤っている。設定ページで現在のトークンをコピーして更新

503 / auth-not-configured

ホストがトークンを初期化していない(異常状態)。設定ページで任意のトークンを保存するか、DSH を再起動

プラグインが再起動後に消える

動的プラグインはプロセスのメモリ状態であり、想定通り。このブリッジは実行中の DSH プロセスのみを管理する

License

MIT

A
license - permissive license
Not graded
quality - not tested
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

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables MCP clients to spawn and control Codex CLI and Claude Code sessions on the host machine, with session management and filesystem access.
    4
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Exposes self-owned AI agent plugins as tools to Claude Code via a stdio MCP server, allowing Claude to call system info, calculator, or scribe transcriber directly.
    3
    MIT

View all related MCP servers

Related MCP Connectors

  • Generate AI music via the Lacuna Music API from MCP clients like Claude Desktop & Code.

  • Augments MCP Server - A comprehensive framework documentation provider for Claude Code

  • Manage SRG+ hubs, channels, content, assets, users, and workspaces from any MCP-aware AI agent.

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/GeekRicardo/dsh-cordis-mcp'

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