Skip to main content
Glama

Pensamiento profundo de Claude 3.5 Soneto CLINE MCP

insignia de herrería

Un servidor de Protocolo de Contexto de Modelo (MCP) que combina las capacidades de razonamiento de DeepSeek R1 con la generación de respuestas de Claude 3.5 Sonnet mediante OpenRouter. Esta implementación utiliza un proceso de dos etapas donde DeepSeek proporciona razonamiento estructurado que posteriormente se incorpora a la generación de respuestas de Claude.

Características

  • Procesamiento en dos etapas :

    • Utiliza DeepSeek R1 para el razonamiento inicial (contexto de 50k caracteres)

    • Utiliza el soneto Claude 3.5 para la respuesta final (contexto de 600 000 caracteres)

    • Se accede a ambos modelos a través de la API unificada de OpenRouter

    • Inyecta los tokens de razonamiento de DeepSeek en el contexto de Claude

  • Gestión inteligente de conversaciones :

    • Detecta conversaciones activas utilizando tiempos de modificación de archivos

    • Maneja múltiples conversaciones simultáneas

    • Filtra automáticamente las conversaciones finalizadas

    • Admite la limpieza del contexto cuando es necesario

  • Parámetros optimizados :

    • Límites del contexto específico del modelo:

      • DeepSeek: 50.000 caracteres para un razonamiento enfocado

      • Claude: 600.000 caracteres para respuestas completas

    • Configuraciones recomendadas:

      • Temperatura: 0,7 para una creatividad equilibrada

      • top_p: 1.0 para distribución de probabilidad completa

      • repetition_penalty: 1.0 para evitar la repetición

Related MCP server: OpenRouter MCP Multimodal Server

Instalación

Instalación mediante herrería

Para instalar DeepSeek Thinking con Claude 3.5 Sonnet para Claude Desktop automáticamente a través de Smithery :

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

Instalación manual

  1. Clonar el repositorio:

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. Instalar dependencias:

npm install
  1. Cree un archivo .env con su clave API de 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. Construir el servidor:

npm run build

Uso con Cline

Agregue a su configuración de Cline MCP (generalmente en ~/.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 de herramientas

El servidor proporciona dos herramientas para generar y supervisar respuestas:

generar_respuesta

Herramienta principal para generar respuestas con los siguientes 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
}

comprobar_estado_de_respuesta

Herramienta para comprobar el estado de una tarea de generación de respuesta:

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

Encuesta de respuesta

El servidor utiliza un mecanismo de sondeo para gestionar solicitudes de larga duración:

  1. Solicitud inicial:

    • generate_response regresa inmediatamente con un ID de tarea

    • Formato de respuesta: {"taskId": "uuid-here"}

  2. Comprobación de estado:

    • Utilice check_response_status para sondear el estado de la tarea

    • Nota: Las respuestas pueden tardar hasta 60 segundos en completarse.

    • El estado progresa a través de: pendiente → razonamiento → respondiendo → completo

Ejemplo de uso en 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
}

Desarrollo

Para desarrollo con reconstrucción automática:

npm run watch

Cómo funciona

  1. Etapa de razonamiento (DeepSeek R1) :

    • Utiliza la función de tokens de razonamiento de OpenRouter

    • El mensaje se modifica para mostrar "hecho" mientras se captura el razonamiento

    • El razonamiento se extrae de los metadatos de respuesta.

  2. Etapa de respuesta (Soneto Claude 3.5) :

    • Recibe el mensaje original y el razonamiento de DeepSeek

    • Genera una respuesta final incorporando el razonamiento

    • Mantiene el contexto y el historial de la conversación.

Licencia

Licencia MIT: consulte el archivo LICENCIA para obtener más detalles.

Créditos

Basado en el concepto RAT (Retrieval Augmented Thinking) de Skirano , que mejora las respuestas de la IA a través del razonamiento estructurado y la recuperación de conocimiento.

Esta implementación combina específicamente las capacidades de razonamiento de DeepSeek R1 con la generación de respuestas de Claude 3.5 Sonnet a través de la API unificada de OpenRouter.

Available Tools

2 tools
check_response_statusB

Check the status of a response generation task

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesThe task ID returned by generate_response

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool checks status but doesn't explain what the status values mean, whether it's read-only or has side effects, or any rate limits or authentication needs. This leaves significant gaps in understanding how the tool behaves beyond its basic function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It is appropriately sized and front-loaded, making it easy to grasp immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (checking task status) and the lack of annotations and output schema, the description is incomplete. It doesn't explain what status information is returned, potential outcomes, or error conditions, leaving the agent without enough context to fully understand the tool's behavior and results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'taskId' parameter clearly documented as 'The task ID returned by generate_response.' The description adds no additional parameter semantics beyond this, so it meets the baseline score of 3 where the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('check') and resource ('status of a response generation task'), making it immediately understandable. However, it doesn't explicitly differentiate from its sibling tool 'generate_response' beyond the implied relationship, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by referencing 'taskId returned by generate_response,' suggesting this tool should be used after initiating a task with its sibling. However, it lacks explicit guidance on when to use it versus alternatives or any prerequisites beyond the task ID, leaving some ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_responseC

Generate a response using DeepSeek's reasoning and Claude's response generation through OpenRouter.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesThe user's input prompt
showReasoningNoWhether to include reasoning in response
clearContextNoClear conversation history before this request
includeHistoryNoInclude Cline conversation history for context

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the AI models involved (DeepSeek and Claude) and the platform (OpenRouter), but doesn't describe key behavioral traits like rate limits, authentication needs, response format, error handling, or whether it's a read/write operation. The description adds some context about the implementation but lacks crucial operational details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states the core functionality without unnecessary words. It's appropriately sized for the tool's complexity and gets straight to the point. Every word earns its place by specifying both the action and the implementation method.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain what the tool returns, how to interpret results, error conditions, or operational constraints. For a tool that presumably generates AI responses through external services, more context about response format, limitations, and integration details would be needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents all 4 parameters. The description adds no parameter-specific information beyond what's in the schema. It doesn't explain how parameters interact (e.g., how 'clearContext' and 'includeHistory' relate) or provide usage examples. This meets the baseline of 3 when schema coverage is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Generate a response') and specifies the implementation method ('using DeepSeek's reasoning and Claude's response generation through OpenRouter'). It distinguishes from the sibling tool 'check_response_status' by focusing on generation rather than status checking. However, it doesn't specify what type of response is generated (e.g., text completion, analysis, etc.), keeping it at a 4 rather than a perfect 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to use it over other response generation methods or when the sibling tool 'check_response_status' would be appropriate. There's no context about use cases, prerequisites, or limitations, leaving the agent with minimal usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv1.0.0
    • First observedcheck_response_status
    • First observedgenerate_response

TDQS

B3.1/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: one checks the status of a response generation task, while the other initiates the generation of a response. There is no overlap or ambiguity between these functions, making it easy for an agent to select the correct tool.

Naming Consistency5/5

Both tools follow a consistent verb_noun naming pattern (check_response_status and generate_response), using snake_case throughout. The verbs 'check' and 'generate' appropriately describe their actions, and there are no deviations in style or convention.

Tool Count2/5

With only 2 tools, the server feels thin for its apparent purpose of response generation through OpenRouter. A more complete surface might include tools for managing tasks, handling errors, or configuring parameters, but the current set is minimal and may limit agent workflows.

Completeness2/5

The tool surface is severely incomplete for response generation tasks. While it covers initiating and checking status, it lacks tools for canceling tasks, retrieving results beyond status, handling errors, or managing task history. This will likely cause agent failures in more complex scenarios.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    A Model Context Protocol server that combines DeepSeek R1's reasoning capabilities with Claude 3.5 Sonnet's response generation, enabling two-stage AI processing where DeepSeek's structured reasoning enhances Claude's final outputs.
    2
    3
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides access to multiple AI models (Grok, Gemini 2.5 Pro, Kimi, Qwen3 Coder, GLM-4.5) through OpenRouter, enabling users to query different specialized models for reasoning, coding, translation, and general tasks with automatic fallback to free variants.
    9 npm
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Provides advanced AI reasoning capabilities through step-by-step thinking framework, enabling complex problem-solving with dynamic thought revision, multi-path reasoning, and adaptive planning for sophisticated analysis tasks.
    1
    MIT