solucortex-mcp

Living technical memory for AI agents: recall approved project context, record what was learned.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
97%
Integridad del esquema
91%
Calidad de los nombres
80%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~1,726Tokens (definiciones de herramientas)
~2.2 KBTamaño de respuesta típico
Impacto moderado en la atención (1.35% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "solucortex-mcp": {
      "command": "uvx",
      "args": [
        "solucortex-mcp"
      ]
    }
  }
}

Paquetes ejecutables

pypisolucortex-mcp1.1.2stdio

Puntos de conexión remotos

https://mcp.solucortex.ai/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (6)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢solucortex_recall(query, project_id)

Build living context for a task (POST /context/build). Call this at the START of a task, before touching code: returns approved, active memories (decisions, conventions, risks, sensitive modules, architecture) ranked by semantic similarity + importance. Uses OpenAI embeddings (slower, 20 req/min).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Describe the current task/module in natural language, e.g. 'implement API key rotation in the secrets module'. Used to semantically retrieve the most relevant memories.",
      "title": "Query",
      "type": "string"
    },
    "project_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Project UUID. If omitted, the session default applies, else the backend infers it from the API key.",
      "title": "Project Id"
    }
  },
  "required": [
    "query"
  ],
  "title": "solucortex_recallArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "solucortex_recallDictOutput"
}
🟢solucortex_search(query, limit, project_id)

Ad-hoc semantic search of memories (POST /search/semantic). Use for specific questions during a task (e.g. 'how is authentication implemented?'), distinct from recall which builds the full startup context. Uses OpenAI embeddings (20 req/min).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Question or topic to search across the project's memories.",
      "title": "Query",
      "type": "string"
    },
    "limit": {
      "default": 10,
      "description": "Max memories to return.",
      "maximum": 50,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    },
    "project_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Project UUID. If omitted, the session default applies, else the backend infers it from the API key.",
      "title": "Project Id"
    }
  },
  "required": [
    "query"
  ],
  "title": "solucortex_searchArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "solucortex_searchDictOutput"
}
🟢solucortex_remember(type, title, content, importance, project_id)

Record a memory in SoluCortex (POST /memories). Call when closing a task or making a relevant technical decision. As an authorized agent (Bearer api_key), the memory is stored with status 'approved' and traced. Never store real secrets: if you find one, record location/type/severity and action taken, with a redacted reference.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "type": {
      "description": "Memory type. The backend validates the value. Canonical vocabulary: architecture, decision, risk, convention, bug_history, tech_debt, sensitive_module, learning, external_integration. (Older backends may use technical_decision, historical_bug, current_state, task_closure.) On HTTP 422, retry with the alternate vocabulary.",
      "title": "Type",
      "type": "string"
    },
    "title": {
      "description": "Short, clear title (~80 chars max).",
      "maxLength": 120,
      "title": "Title",
      "type": "string"
    },
    "content": {
      "description": "Full content: what to remember, why it matters, where it applies and what it prevents. NEVER include real secrets (tokens, passwords, .env, credentials).",
      "title": "Content",
      "type": "string"
    },
    "importance": {
      "default": 5,
      "description": "Priority 1-10. Default 5. 6-7 high; 8-9 important decision/risk/convention; 10 critical.",
      "maximum": 10,
      "minimum": 1,
      "title": "Importance",
      "type": "integer"
    },
    "project_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Project UUID. If omitted, the session default applies, else the backend infers it from the API key.",
      "title": "Project Id"
    }
  },
  "required": [
    "type",
    "title",
    "content"
  ],
  "title": "solucortex_rememberArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "solucortex_rememberDictOutput"
}
🟡solucortex_update_memory(memory_id, content, title, importance, type)

Correct an existing memory (PATCH /memories/{id}). Agents propose, humans govern: the edit is applied but the memory returns to PENDING until a human re-approves it. ALWAYS tell the user the change awaits their approval in the SoluCortex panel. Status changes are not possible here.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "memory_id": {
      "description": "UUID of the memory to correct.",
      "title": "Memory Id",
      "type": "string"
    },
    "content": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Corrected full content.",
      "title": "Content"
    },
    "title": {
      "anyOf": [
        {
          "maxLength": 120,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Corrected title.",
      "title": "Title"
    },
    "importance": {
      "anyOf": [
        {
          "maximum": 10,
          "minimum": 1,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Corrected priority 1-10.",
      "title": "Importance"
    },
    "type": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Corrected memory type (one of the 9 canonical types).",
      "title": "Type"
    }
  },
  "required": [
    "memory_id"
  ],
  "title": "solucortex_update_memoryArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "solucortex_update_memoryDictOutput"
}
⚪solucortex_flag_memory(memory_id, reason, suggested_action)

Flag a memory as outdated/incorrect (POST /memories/{id}/flag). The memory is marked for human review in the SoluCortex panel; nothing is deleted or unpublished. ALWAYS tell the user a memory awaits their decision in the panel. Deletion is human-only by design.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "memory_id": {
      "description": "UUID of the memory to flag.",
      "title": "Memory Id",
      "type": "string"
    },
    "reason": {
      "description": "Why it needs review: outdated, incorrect, duplicated... (10-500 chars).",
      "maxLength": 500,
      "minLength": 10,
      "title": "Reason",
      "type": "string"
    },
    "suggested_action": {
      "default": "review",
      "description": "What you suggest the human does: update, archive, delete or review.",
      "title": "Suggested Action",
      "type": "string"
    }
  },
  "required": [
    "memory_id",
    "reason"
  ],
  "title": "solucortex_flag_memoryArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "solucortex_flag_memoryDictOutput"
}
🟢solucortex_list_memories(limit, project_id)

List the project's memories without semantic search (GET /memories). Useful for quick inspection/audit or to confirm a just-created memory was stored. Does not consume OpenAI quota.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 20,
      "description": "Max memories to return.",
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    },
    "project_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Project UUID. If omitted, the session default applies, else the backend infers it from the API key.",
      "title": "Project Id"
    }
  },
  "title": "solucortex_list_memoriesArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "solucortex_list_memoriesDictOutput"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada6 herramientas
verificadoversión no registrada6 herramientas