Chat history lives in the MCP process and is addressed by a conversation id, so multi-turn threads continue without you resending them — and disappear when the process does. When generation starts failing, the balance read is what separates an account problem from a request problem.
An MCP wrapper over DeepSeek's documented V4 API — chat, fill-in-the-middle completion, the model list and the balance endpoint — with conversation memory kept in the server process. Nothing beyond those documented surfaces is exposed.
- Single-turn or multi-turn generation, defaulting to deepseek-v4-flash with deepseek-v4-pro on hand for higher-capability reasoning
- Thinking mode enabled by default and switchable off per call, with reasoning effort exposed as its own argument at low, high or max
- Fill-in-the-middle completion from a prompt and a suffix, returning raw completion text rather than chat formatting, defaulting to deepseek-v4-pro
- The sampling surface passed straight through: temperature, top_p, frequency and presence penalties, stop sequences, max tokens, logprobs, JSON output, streaming and function tools
- A stateless call against DeepSeek's Responses API when you want structured input, server-side web search and semantic streaming instead of the chat shape
- Conversation state addressed by an id — list the ids currently held, or clear one thread's history while keeping its id
- The account balance and availability status, and the model list to validate an id against before you pass it
A DeepSeek API key in DEEPSEEK_API_KEY with balance behind it, and Node.js or the published Docker image — or neither, if you use the hosted endpoint at https://deepseek-mcp.ragweld.com/mcp with a bearer token. Conversation history lives in the process and is capped by CONVERSATION_MAX_MESSAGES, so it goes when the server stops. Browser-based clients additionally need their origin in MCP_HTTP_ALLOWED_ORIGINS, or the request is rejected with a 403. MIT.
One command plus a key — DEEPSEEK_API_KEY="REPLACE_WITH_DEEPSEEK_KEY" npx -y deepseek-mcp-server, then supply credentials
