Content
# Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP
[](https://smithery.ai/server/@newideas99/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
## Installation
### Installing via Smithery
To install DeepSeek Thinking with Claude 3.5 Sonnet for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@newideas99/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP):
```bash
npx -y @smithery/cli install @newideas99/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP --client claude
```
### Manual Installation
1. Clone the repository:
```bash
git clone https://github.com/yourusername/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP.git
cd Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP
```
2. Install dependencies:
```bash
npm install
```
3. Create a `.env` file with your OpenRouter API key:
```env
# 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
```
4. Build the server:
```bash
npm run build
```
## Usage with Cline
Add to your Cline MCP settings (usually in `~/.vscode/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`):
```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:
```typescript
{
"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:
```typescript
{
"taskId": string // Required: The task ID from generate_response
}
```
### Response Polling
The server uses a polling mechanism to handle long-running requests:
1. Initial Request:
- `generate_response` returns immediately with a task ID
- Response format: `{"taskId": "uuid-here"}`
2. Status Checking:
- Use `check_response_status` to poll the task status
- **Note:** Responses can take up to 60 seconds to complete
- Status progresses through: pending → reasoning → responding → complete
Example usage in Cline:
```typescript
// 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
}
```
## Development
For development with auto-rebuild:
```bash
npm run watch
```
## How It Works
1. **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
2. **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
## License
MIT License - See LICENSE file for details.
## Credits
Based on the RAT (Retrieval Augmented Thinking) concept by [Skirano](https://x.com/skirano/status/1881922469411643413), which enhances AI responses through structured reasoning and knowledge retrieval.
This implementation specifically combines DeepSeek R1's reasoning capabilities with Claude 3.5 Sonnet's response generation through OpenRouter's unified API.
You Might Also Like
OpenWebUI
Open WebUI is an extensible web interface for customizable applications.

NextChat
NextChat is a light and fast AI assistant supporting Claude, DeepSeek, GPT4...

cherry-studio
Cherry Studio is a multilingual project for creative collaboration.
gibber-mcp
A cryptography MCP Server for key generation, secret derivation, and message...
gibber-mcp
Tiny MCP server with cryptography tools, sufficient to establish end-to-end...
video-editing-mcp
A server for uploading, editing, and generating videos using Video Jungle.