MCPcopy Index your code
hub / github.com/DMontgomery40/deepseek-mcp-server

github.com/DMontgomery40/deepseek-mcp-server @v0.5.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.5.0 ↗ · + Follow
87 symbols 174 edges 15 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

DeepSeek MCP Server

DeepSeek Official List Official MCP Registry npm version npm downloads OCI package GitHub stars Glama MCP Listing Listed on Spark Install via Spark

Model Context Protocol server for the current DeepSeek V4 API.

As of April 24, 2026, DeepSeek's public API reference documents:

  • POST /chat/completions with deepseek-v4-flash and deepseek-v4-pro
  • POST /beta/completions for V4 Pro FIM completion
  • GET /models
  • GET /user/balance

This server exposes only those documented API surfaces. It does not ship a V4 monitor, speculative image/video/upload tools, or automatic model substitution.

Tools

  • chat_completion: DeepSeek V4 chat. Defaults to deepseek-v4-flash. Supports thinking: { "type": "enabled" | "disabled" }, reasoning_effort: "high" | "max", JSON output, function tools, logprobs, streaming, and conversation memory.
  • completion: DeepSeek V4 Pro FIM completion. Defaults to deepseek-v4-pro.
  • list_models: Reads the live DeepSeek model list.
  • get_user_balance: Reads account balance and availability.
  • reset_conversation: Clears an in-memory conversation.
  • list_conversations: Lists in-memory conversation IDs.

Hosted Remote

  • URL: https://deepseek-mcp.ragweld.com/mcp
  • Auth: Authorization: Bearer <token>

Codex CLI:

export DEEPSEEK_MCP_AUTH_TOKEN="REPLACE_WITH_TOKEN"
codex mcp add deepseek --url https://deepseek-mcp.ragweld.com/mcp --bearer-token-env-var DEEPSEEK_MCP_AUTH_TOKEN

Claude Code:

export DEEPSEEK_MCP_AUTH_TOKEN="REPLACE_WITH_TOKEN"
claude mcp add --transport http deepseek https://deepseek-mcp.ragweld.com/mcp --header "Authorization: Bearer $DEEPSEEK_MCP_AUTH_TOKEN"

Cursor:

node -e 'const fs=require("fs"),p=process.env.HOME+"/.cursor/mcp.json";let j={mcpServers:{}};try{j=JSON.parse(fs.readFileSync(p,"utf8"))}catch{};j.mcpServers={...(j.mcpServers||{}),deepseek:{url:"https://deepseek-mcp.ragweld.com/mcp",headers:{Authorization:"Bearer ${env:DEEPSEEK_MCP_AUTH_TOKEN}"}}};fs.mkdirSync(process.env.HOME+"/.cursor",{recursive:true});fs.writeFileSync(p,JSON.stringify(j,null,2));'

Local Stdio

DEEPSEEK_API_KEY="REPLACE_WITH_DEEPSEEK_KEY" npx -y deepseek-mcp-server

Docker:

docker pull docker.io/dmontgomery40/deepseek-mcp-server:0.5.0
docker run --rm -i -e DEEPSEEK_API_KEY="REPLACE_WITH_DEEPSEEK_KEY" docker.io/dmontgomery40/deepseek-mcp-server:0.5.0

Environment

Required:

DEEPSEEK_API_KEY=your-api-key

Optional:

DEEPSEEK_BASE_URL=https://api.deepseek.com
DEEPSEEK_REQUEST_TIMEOUT_MS=120000
DEEPSEEK_DEFAULT_MODEL=deepseek-v4-flash
MCP_TRANSPORT=stdio
MCP_HTTP_HOST=127.0.0.1
MCP_HTTP_PORT=3001
MCP_HTTP_PATH=/mcp
MCP_HTTP_STATEFUL_SESSION=false
CONVERSATION_MAX_MESSAGES=200

Verification

npm run build
npm test
DEEPSEEK_API_KEY="REPLACE_WITH_DEEPSEEK_KEY" npm run test:live
DEEPSEEK_MCP_AUTH_TOKEN="REPLACE_WITH_TOKEN" npm run test:remote

The live smoke test performs real DeepSeek requests for model listing, balance, non-thinking chat, thinking streaming chat with reasoning_content, FIM completion, and MCP tool calls.

Registry Identity

  • MCP Registry name: io.github.DMontgomery40/deepseek
  • npm package: deepseek-mcp-server
  • OCI package: docker.io/dmontgomery40/deepseek-mcp-server:0.5.0

Official References

License

MIT

Extension points exported contracts — how you extend this code

Harness (Interface)
(no doc)
test/mcp-server.test.ts
RuntimeConfig (Interface)
(no doc)
src/config.ts
DeepSeekMcpServerOptions (Interface)
(no doc)
src/mcp-server.ts
DeepSeekApiClientOptions (Interface)
(no doc)
src/deepseek/client.ts
StreamableHttpRuntime (Interface)
(no doc)
src/transports/http.ts
RequestOptions (Interface)
(no doc)
src/deepseek/client.ts
StreamableHttpOptions (Interface)
(no doc)
src/transports/http.ts
CompletionDeltaToolCall (Interface)
(no doc)
src/deepseek/client.ts

Core symbols most depended-on inside this repo

assert
called by 15
scripts/live-smoke.mjs
isObject
called by 10
src/deepseek/client.ts
get
called by 6
src/conversation-store.ts
createChatCompletion
called by 6
src/deepseek/client.ts
runEndpoint
called by 5
scripts/live-smoke.mjs
makeToolErrorResult
called by 4
src/mcp-server.ts
createCompletion
called by 4
src/deepseek/client.ts
listModels
called by 4
src/deepseek/client.ts

Shape

Function 37
Interface 26
Method 18
Class 6

Languages

TypeScript100%

Modules by API surface

src/deepseek/client.ts25 symbols
src/deepseek/types.ts18 symbols
src/mcp-server.ts11 symbols
src/conversation-store.ts9 symbols
src/transports/http.ts6 symbols
src/config.ts6 symbols
test/deepseek-client.test.ts3 symbols
src/index.ts3 symbols
scripts/live-smoke.mjs3 symbols
test/mcp-server.test.ts2 symbols
scripts/remote-smoke.mjs1 symbols

For agents

$ claude mcp add deepseek-mcp-server \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact