deepseek-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@deepseek-mcp Explain the difference between TCP and UDP"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
deepseek-mcp
An MCP server that bridges CLI harnesses to the DeepSeek API. Callers (Claude Code, Codex, opencode, or any MCP client) connect over stdio and get DeepSeek chat completions — plus the option to hand work back to a local harness session.
Quickstart
One-shot install straight from the repo (clone lives in ~/.deepseek-mcp, override with DEEPSEEK_MCP_HOME). Fresh installs prompt for your API key — it opens the key page and reads a hidden paste. Updates keep your existing .env untouched:
curl -fsSL https://raw.githubusercontent.com/Korck-lab/deepseek-mcp/main/scripts/install.sh | bashPrefer reviewing the script first, or hit terminal weirdness (no controlling tty: SSH without -t, CI)? Download then run — stdin stays yours, no pipe tricks:
curl -fsSL https://raw.githubusercontent.com/Korck-lab/deepseek-mcp/main/scripts/install.sh -o /tmp/deepseek-mcp-install.sh
bash /tmp/deepseek-mcp-install.shManual clone:
git clone https://github.com/Korck-lab/deepseek-mcp
cd deepseek-mcp
npm install
npm run build
cp .env.example .env # paste your DEEPSEEK_API_KEY
npm run install:cli # interactive: pick claude/codex/opencode + scopeThen run claude mcp list, codex mcp list, or opencode mcp list to confirm the deepseek server shows Connected, and use it from that client. See Interactive installer for flags and scope details.
Related MCP server: DeepSeek MCP Server
Features
Chat completions — OpenAI-style
messages→ DeepSeek. Supportsdeepseek-v4-flash/deepseek-v4-proreasoning models, includingreasoning_content.Model discovery —
list_modelsfetches available model ids from the API.Harness bridge —
use_harnessruns a prompt in a headless host CLI (claude -p,codex exec,opencode run, or any command you configure), letting the DeepSeek model drive local agents, skills, plugins, and MCP tools configured on that host.Locked by default — the bridge is off until you explicitly allowlist hosts.
Zero shell — harness commands run as
spawnargument arrays, never through a shell. Prompts are positional args, so no injection surface.dotenvconfig — keys and harness commands live in.env.
Tools
Tool | Description |
| Send a chat completion request; returns assistant text (reasoning + answer for reasoning models). |
| List models available on the DeepSeek API. |
| Run a prompt in a configured host CLI. Host must be allowlisted. |
| Show configured harness hosts and their commands. |
Setup
npm install
cp .env.example .env # add your DEEPSEEK_API_KEY
npm run build
npm test # protocol smoke test + live API + harness bridgeRun the server:
npm startConfiguration
Variable | Default | Purpose |
| — | Required. DeepSeek API key. |
|
| API base URL. |
|
| Default model for |
| (empty = locked) | Comma-separated hosts the bridge may drive. |
| — | Headless command for a host, e.g. |
Example bridge config (opencode is a TUI and needs a PTY wrapper on macOS):
HARNESS_ALLOW_HOSTS=claude,codex,opencode
HARNESS_CMD_CLAUDE=claude -p
HARNESS_CMD_CODEX=codex exec --skip-git-repo-check
HARNESS_CMD_OPENCODE=script -q /dev/null opencode runMCP client config
{
"mcpServers": {
"deepseek": {
"command": "node",
"args": ["/absolute/path/to/deepseek-mcp/dist/index.js"]
}
}
}Interactive installer
Register the server with Claude Code, Codex, and/or opencode — no manual config editing:
npm run install:cliPrompts ask which CLI(s) to install and the scope:
global — your user config (
~/.claude.json,~/.codex/config.toml,~/.config/opencode/opencode.json)project — local to this repo (Claude
--scope local,.codex/config.toml,./opencode.json; gitignored)
Optionally embeds DEEPSEEK_API_KEY into the client config (recommended for global scope, so the server works outside this repo). Scriptable:
npm run install:cli -- --clis claude,codex,opencode --scope global --embed key --yesFlags: --clis a,b,c, --scope global|project, --embed key|skip, --yes.
Auto-versioning
Local git hooks bump the version and tag releases automatically from conventional commit messages — no manual version edits, no CI needed.
npm run hooks:install # git config core.hooksPath .githooks (per-repo)On every commit it reads the commit message and:
Commit type | Example | Bump |
breaking |
| major |
|
| minor |
|
| patch |
anything else |
| none |
After the commit is created, a post-commit hook reads the real message from COMMIT_EDITMSG (the message is not available earlier — pre-commit runs before it exists), bumps package.json (+package-lock.json), amends the commit so the bump is included, then creates an annotated tag vX.Y.Z. Merge commits never re-bump; amends do re-bump (tag already exists, so it just skips). Run npm version manually at any time to override.
Security
The bridge is disabled until you allowlist hosts. With
HARNESS_ALLOW_HOSTSempty,use_harnesserrors.Harness commands run without a shell; the prompt is a single positional argument.
The API key lives only in
.env(gitignored) and is sent only to the DeepSeek API.Each harness call spawns a fresh headless session — no access to the calling client's session state. Note that a harness CLI runs with its own configured tools and credentials; only allowlist hosts you trust.
Development
npm run build— compilesrc/→dist/npm run dev— run from source withtsxnpm test— MCP protocol smoke test (handshake, tools/list, live chat, model list, harness bridge)
Requires Node.js >= 20.
License
Available Tools
4 toolschatA
Send a chat completion request to DeepSeek. Accepts an OpenAI-style message list and returns the assistant's reply text.
Inputs: messages (required), model, max_tokens, temperature.
list_harnessesA
List harness hosts the bridge can drive (from HARNESS_ALLOW_HOSTS / HARNESS_CMD_* config) with their commands.
Inputs: no named parameters.
list_modelsA
List models available on the DeepSeek API.
Inputs: no named parameters.
use_harnessA
Run a prompt in a headless host CLI (claude -p, codex exec, opencode run, ...). Lets the DeepSeek model drive local agents, skills, plugins, and MCP tools configured on that host. Host must be in HARNESS_ALLOW_HOSTS.
Inputs: host (required), prompt (required), cwd, timeout_ms.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
chat and use_harness both send prompts, but one targets the DeepSeek API and the other targets local harness CLIs, which is clearly distinguished in descriptions. list_models and list_harnesses are distinct list operations for different resources.
All tool names follow a clear verb style: chat, list_models, list_harnesses, use_harness. The naming is consistent and predictable, with list_* for listing operations and direct verbs for actions.
Four tools is well-scoped for a bridge server that provides chat completion, model listing, and harness control. Each tool serves a distinct purpose without redundancy.
The core workflow of sending prompts and listing models/harnesses is covered. A minor gap is lack of streaming or more detailed model/harness management, but the essential lifecycle for the stated purpose is present.
Related MCP Connectors
MCP server for OpenAI API (chat completions, image generation, embeddings) via AceDataCloud
MCP server for AI dialogue using various LLM models via AceDataCloud
MCP server for GLM chat completions using Zhipu AI models via AceDataCloud
BeautySpark MCP server for ChatGPT, Claude and other MCP clients
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables integration of DeepSeek's language models with MCP-compatible applications, offering features like chat completion, custom model selection, and parameter control for enhancing language-based interactions.11555 npm363MIT
- AlicenseDqualityDmaintenanceAllows seamless integration of DeepSeek's language models with MCP-compatible applications like Claude Desktop, supporting features such as model selection, temperature control, and multi-turn conversations with automatic model fallback.2555 npm2MIT
- AlicenseAqualityAmaintenanceMCP server for DeepSeek AI models (Chat + Reasoner). Supports multi-turn sessions, model fallback with circuit breaker, function calling, thinking mode, JSON output, multimodal input, and cost tracking.3611 npm26MIT
- AlicenseNot gradedqualityDmaintenanceA Node.js + TypeScript MCP server that proxies to DeepSeek's Chat, Image, and TTS APIs for conversation, image generation, and text-to-speech.MIT