Model Context Protocol server for the current DeepSeek V4 API.
As of April 24, 2026, DeepSeek's public API reference documents:
POST /chat/completionswithdeepseek-v4-flashanddeepseek-v4-proPOST /beta/completionsfor V4 Pro FIM completionGET /modelsGET /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.
chat_completion: DeepSeek V4 chat. Defaults todeepseek-v4-flash. Supportsthinking: { "type": "enabled" | "disabled" },reasoning_effort: "high" | "max", JSON output, function tools, logprobs, streaming, and conversation memory.completion: DeepSeek V4 Pro FIM completion. Defaults todeepseek-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.
- 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_TOKENClaude 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));'DEEPSEEK_API_KEY="REPLACE_WITH_DEEPSEEK_KEY" npx -y deepseek-mcp-serverDocker:
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.0Required:
DEEPSEEK_API_KEY=your-api-keyOptional:
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=200npm 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:remoteThe 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.
- MCP Registry name:
io.github.DMontgomery40/deepseek - npm package:
deepseek-mcp-server - OCI package:
docker.io/dmontgomery40/deepseek-mcp-server:0.5.0
- DeepSeek chat completions: https://api-docs.deepseek.com/api/create-chat-completion
- DeepSeek FIM completions: https://api-docs.deepseek.com/api/create-completion
- DeepSeek models: https://api-docs.deepseek.com/api/list-models
- DeepSeek balance: https://api-docs.deepseek.com/api/get-user-balance
- MCP specification: https://modelcontextprotocol.io/specification/2025-11-25
MIT