Deepseek Thinking & Claude 3.5 Sonnet

Combina as capacidades de raciocínio

Documentação

Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP

smithery badge

Um servidor Model Context Protocol (MCP) que combina as capacidades de raciocínio do DeepSeek R1 com a geração de respostas do Claude 3.5 Sonnet por meio do OpenRouter. Esta implementação usa um processo de dois estágios em que o DeepSeek fornece raciocínio estruturado que é então incorporado à geração de respostas do Claude.

Recursos

  • Processamento em Dois Estágios:

    • Usa o DeepSeek R1 para raciocínio inicial (contexto de 50 mil caracteres)
    • Usa o Claude 3.5 Sonnet para a resposta final (contexto de 600 mil caracteres)
    • Ambos os modelos acessados por meio da API unificada do OpenRouter
    • Injeta os tokens de raciocínio do DeepSeek no contexto do Claude
  • Gerenciamento Inteligente de Conversas:

    • Detecta conversas ativas usando horários de modificação de arquivos
    • Lida com múltiplas conversas simultâneas
    • Filtra conversas encerradas automaticamente
    • Suporta limpeza de contexto quando necessário
  • Parâmetros Otimizados:

    • Limites de contexto específicos por modelo:
      • DeepSeek: 50.000 caracteres para raciocínio focado
      • Claude: 600.000 caracteres para respostas abrangentes
    • Configurações recomendadas:
      • temperature: 0.7 para criatividade equilibrada
      • top_p: 1.0 para distribuição completa de probabilidade
      • repetition_penalty: 1.0 para evitar repetição

Instalação

Instalação via Smithery

Para instalar o DeepSeek Thinking com Claude 3.5 Sonnet para Claude Desktop automaticamente via Smithery:

npx -y @smithery/cli install @newideas99/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP --client claude

Instalação Manual

  1. Clone o repositório:
git clone https://github.com/yourusername/Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP.git
cd Deepseek-Thinking-Claude-3.5-Sonnet-CLINE-MCP
  1. Instale as dependências:
npm install
  1. Crie um arquivo .env com sua chave de API do OpenRouter:
# 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
  1. Compile o servidor:
npm run build

Uso com Cline

Adicione às configurações MCP do seu Cline (geralmente em ~/.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": []
    }
  }
}

Uso das Ferramentas

O servidor fornece duas ferramentas para gerar e monitorar respostas:

generate_response

Ferramenta principal para gerar respostas com os seguintes parâmetros:

{
  "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

Ferramenta para verificar o status de uma tarefa de geração de resposta:

{
  "taskId": string  // Required: The task ID from generate_response
}

Polling de Respostas

O servidor usa um mecanismo de polling para lidar com solicitações de longa duração:

  1. Solicitação Inicial:

    • generate_response retorna imediatamente com um ID de tarefa
    • Formato da resposta: {"taskId": "uuid-here"}
  2. Verificação de Status:

    • Use check_response_status para consultar o status da tarefa
    • Nota: As respostas podem levar até 60 segundos para serem concluídas
    • O status progride por: pendente → raciocinando → respondendo → concluído

Exemplo de uso no 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
}

Desenvolvimento

Para desenvolvimento com recompilação automática:

npm run watch

Como Funciona

  1. Estágio de Raciocínio (DeepSeek R1):

    • Usa o recurso de tokens de raciocínio do OpenRouter
    • O prompt é modificado para gerar 'done' enquanto captura o raciocínio
    • O raciocínio é extraído dos metadados da resposta
  2. Estágio de Resposta (Claude 3.5 Sonnet):

    • Recebe o prompt original e o raciocínio do DeepSeek
    • Gera a resposta final incorporando o raciocínio
    • Mantém o contexto e o histórico da conversa

Licença

Licença MIT - Consulte o arquivo LICENSE para obter detalhes.

Créditos

Baseado no conceito RAT (Retrieval Augmented Thinking) por Skirano, que aprimora as respostas de IA por meio de raciocínio estruturado e recuperação de conhecimento.

Esta implementação combina especificamente as capacidades de raciocínio do DeepSeek R1 com a geração de respostas do Claude 3.5 Sonnet por meio da API unificada do OpenRouter.