
Deepseek Thinking & Claude 3.5 Sonnet
โ 3from niko91i
Combines DeepSeek's reasoning capabilities with Claude 3.5 Sonnet's response generation through OpenRouter.
Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP
A Model Context Protocol (MCP) server that combines DeepSeek R1's reasoning capabilities with Claude 3.5 Sonnet's response generation through OpenRouter. This implementation uses a two-stage process where DeepSeek provides structured reasoning which is then incorporated into Claude's response generation.
Features
-
Two-Stage Processing:
- Uses DeepSeek R1 for initial reasoning (50k character context)
- Uses Claude 3.5 Sonnet for final response (600k character context)
- Both models accessed through OpenRouter's unified API
- Injects DeepSeek's reasoning tokens into Claude's context
-
Smart Conversation Management:
- Detects active conversations using file modification times
- Handles multiple concurrent conversations
- Filters out ended conversations automatically
- Supports context clearing when needed
-
Optimized Parameters:
- Model-specific context limits:
- DeepSeek: 50,000 characters for focused reasoning
- Claude: 600,000 characters for comprehensive responses
- Recommended settings:
- temperature: 0.7 for balanced creativity
- top_p: 1.0 for full probability distribution
- repetition_penalty: 1.0 to prevent repetition
- Model-specific context limits:
Development
For development with auto-rebuild:
npm run watchHow It Works
-
Reasoning Stage (DeepSeek R1):
- Uses OpenRouter's reasoning tokens feature
- Prompt is modified to output 'done' while capturing reasoning
- Reasoning is extracted from response metadata
-
Response Stage (Claude 3.5 Sonnet):
- Receives the original prompt and DeepSeek's reasoning
- Generates final response incorporating the reasoning
- Maintains conversation context and history
npx -y @smithery/cli install @newideas99/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP --client claudeBefore it works, you'll need: OPENROUTER_API_KEY
Installation
Installing via Smithery
To install DeepSeek Thinking with Claude 3.5 Sonnet for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @newideas99/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP --client claudeManual Installation
- Clone the repository:
git clone https://github.com/yourusername/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP.git
cd Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP- Install dependencies:
npm install- Create a
.envfile with your OpenRouter API key:
# Required: OpenRouter API key for both DeepSeek and Claude models
OPENROUTER_API_KEY=your_openrouter_api_key_here
# Optional: Model configuration (defaults shown below)
DEEPSEEK_MODEL=deepseek/deepseek-r1 # DeepSeek model for reasoning
CLAUDE_MODEL=anthropic/claude-3.5-sonnet:beta # Claude model for responses- Build the server:
npm run buildUsage with Cline
Add to your Cline MCP settings (usually in ~/.vscode/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):
{
"mcpServers": {
"deepseek-claude": {
"command": "/path/to/node",
"args": ["/path/to/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP/build/index.js"],
"env": {
"OPENROUTER_API_KEY": "your_key_here"
},
"disabled": false,
"autoApprove": []
}
}
}Tool Usage
The server provides two tools for generating and monitoring responses:
generate_response
Main tool for generating responses with the following parameters:
{
"prompt": string, // Required: The question or prompt
"showReasoning"?: boolean, // Optional: Show DeepSeek's reasoning process
"clearContext"?: boolean, // Optional: Clear conversation history
"includeHistory"?: boolean // Optional: Include Cline conversation history
}check_response_status
Tool for checking the status of a response generation task:
{
"taskId": string // Required: The task ID from generate_response
}Response Polling
The server uses a polling mechanism to handle long-running requests:
-
Initial Request:
generate_responsereturns immediately with a task ID- Response format:
{"taskId": "uuid-here"}
-
Status Checking:
- Use
check_response_statusto poll the task status - Note: Responses can take up to 60 seconds to complete
- Status progresses through: pending โ reasoning โ responding โ complete
- Use
Example usage in Cline:
// Initial request
const result = await use_mcp_tool({
server_name: "deepseek-claude",
tool_name: "generate_response",
arguments: {
prompt: "What is quantum computing?",
showReasoning: true
}
});
// Get taskId from result
const taskId = JSON.parse(result.content[0].text).taskId;
// Poll for status (may need multiple checks over ~60 seconds)
const status = await use_mcp_tool({
server_name: "deepseek-claude",
tool_name: "check_response_status",
arguments: { taskId }
});
// Example status response when complete:
{
"status": "complete",
"reasoning": "...", // If showReasoning was true
"response": "..." // The final response
}No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
Licensed under MITโ you can use, modify, and redistribute it under that license's terms.
License
MIT License - See LICENSE file for details.