Palim

Hosted MCP memory: save sessions/decisions once, search from Claude, Cursor, ChatGPT. EU-hosted FTS.

¿Debería usar esto?

Calidad y seguridad

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

Hallazgos (2)

  • LOWTool 'palim_get_brain' description lacks action verben palim_get_brain
  • LOWTool 'palim_add_memory' description lacks action verben palim_add_memory

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

Costo de contexto

~3,265Tokens (definiciones de herramientas)
~3.0 KBTamaño de respuesta típico
Impacto significativo en la atención (2.55% 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": {
    "palim": {
      "url": "https://api.usepalim.com/mcp"
    }
  }
}

Puntos de conexión remotos

https://api.usepalim.com/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (11)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢palim_resume(tool_source, project, within_hours, include_messages)

Continue the user's most recent Palim thread. Call first in a new chat, no args. Ignore the result if it is unrelated. Project filter is case-insensitive and returns the most recently updated match.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "tool_source": {
      "type": "string",
      "description": "Optional: only consider threads from one client (cursor, claude, codex, chatgpt, ...)."
    },
    "project": {
      "type": "string",
      "description": "Optional: only consider threads belonging to this project (case-insensitive; Logisoft ≡ logisoft)."
    },
    "within_hours": {
      "type": "number",
      "description": "Optional: ignore threads older than this many hours. Omit to always return the latest thread."
    },
    "include_messages": {
      "type": "boolean",
      "description": "Optional: append the tail of the transcript when the thread has stored messages. Default false."
    }
  },
  "required": []
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
⚪palim_checkpoint(session_id, title, context, continues_from, tool_source, ...)

Call after connecting AND again after each meaningful chunk of work. Claude Code: reuse claude-code-<client session id>.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "session_id": {
      "type": "string",
      "description": "Stable chat ID. Reuse it so checkpoints update one row. Claude Code/Codex: claude-code-<client session id>."
    },
    "title": {
      "type": "string",
      "description": "Chat title when visible."
    },
    "context": {
      "type": "string",
      "description": "Handoff another AI can continue from: goal, state, constraints, next steps."
    },
    "continues_from": {
      "type": "string",
      "description": "Optional session_id from palim_resume that this chat continues."
    },
    "tool_source": {
      "type": "string",
      "description": "Client: cursor, claude, chatgpt, …"
    },
    "created_at": {
      "type": "string",
      "description": "Optional ISO 8601 chat date from the client."
    },
    "project": {
      "type": "string",
      "description": "Optional project name."
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Optional search tags."
    },
    "status": {
      "type": "string",
      "description": "Optional status, e.g. laufend or abgeschlossen."
    },
    "origin": {
      "type": "string",
      "description": "human (default) or automation (hooks/cron).",
      "enum": [
        "human",
        "automation"
      ]
    },
    "source_urls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Optional URLs."
    },
    "key_topics": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Main topics."
    },
    "open_items": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Open tasks."
    },
    "resolved_open_items": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Previously open items that are now done; quote a leading fragment."
    },
    "decisions_made": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Decisions in this chat."
    },
    "referenced_files": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Relevant files."
    }
  },
  "required": [
    "context",
    "tool_source"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🟡palim_save_context(session_id, title, context, continues_from, tool_source, ...)

Lightweight checkpoint: self-contained handoff, no transcript. Reuse session_id in this chat. Proactive after results and decisions, not only once.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "session_id": {
      "type": "string",
      "description": "Stable chat ID. Reuse it so checkpoints update one row. Claude Code/Codex: claude-code-<client session id>."
    },
    "title": {
      "type": "string",
      "description": "Chat title when visible."
    },
    "context": {
      "type": "string",
      "description": "Handoff another AI can continue from: goal, state, constraints, next steps."
    },
    "continues_from": {
      "type": "string",
      "description": "Optional session_id from palim_resume that this chat continues."
    },
    "tool_source": {
      "type": "string",
      "description": "Client: cursor, claude, chatgpt, …"
    },
    "created_at": {
      "type": "string",
      "description": "Optional ISO 8601 chat date from the client."
    },
    "project": {
      "type": "string",
      "description": "Optional project name."
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Optional search tags."
    },
    "status": {
      "type": "string",
      "description": "Optional status, e.g. laufend or abgeschlossen."
    },
    "origin": {
      "type": "string",
      "description": "human (default) or automation (hooks/cron).",
      "enum": [
        "human",
        "automation"
      ]
    },
    "source_urls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Optional URLs."
    },
    "key_topics": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Main topics."
    },
    "open_items": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Open tasks."
    },
    "resolved_open_items": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Previously open items that are now done; quote a leading fragment."
    },
    "decisions_made": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Decisions in this chat."
    },
    "referenced_files": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Relevant files."
    }
  },
  "required": [
    "context",
    "tool_source"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🟡palim_save_session(session_id, title, messages, overwrite, created_at, ...)

Save or append a full chat transcript (messages + summary). Prefer palim_save_context for compact handoffs. For metadata-only or URL updates use palim_update_session_metadata / palim_update_session_references. When appending: reuse session_id + title, fetch existing messages first, send only new ones. Always pass a complete summary and metadata.tool_source.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "session_id": {
      "type": "string",
      "description": "Session id. Reuse across saves in this chat; else from chat URL or a new UUID."
    },
    "title": {
      "type": "string",
      "description": "Session title. Reuse across saves; else the exact chat title from the client UI."
    },
    "messages": {
      "type": "array",
      "description": "Messages to save (role + content). When appending, only unsaved messages.",
      "items": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "user",
              "assistant",
              "system",
              "model"
            ],
            "description": "Sender role. \"model\" maps to \"assistant\"."
          },
          "content": {
            "type": "string",
            "description": "Message content"
          }
        },
        "required": [
          "role",
          "content"
        ]
      }
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace all existing messages instead of appending. Default: false."
    },
    "created_at": {
      "type": "string",
      "description": "Optional ISO 8601 creation date from the AI client (new sessions only)."
    },
    "summary": {
      "type": "object",
      "description": "Full-conversation summary. Required arrays may be empty.",
      "properties": {
        "summary_text": {
          "type": "string",
          "description": "2-5 sentence summary of the entire conversation."
        },
        "key_topics": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "3-5 main topics discussed."
        },
        "open_items": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Open tasks or questions remaining."
        },
        "resolved_open_items": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Prior open items now done (quote wording); moved into Resolved."
        },
        "decisions_made": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Decisions reached during the conversation."
        },
        "referenced_files": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Files, paths, or key concepts referenced."
        },
        "user_insights": {
          "type": "object",
          "description": "Optional long-term profile patch only (relationships, life_phases, personality, preferences, interests, goals, employer/role/location). No filenames, paths, env vars, or session todos. See docs for field shapes."
        }
      },
      "required": [
        "summary_text",
        "key_topics",
        "open_items",
        "decisions_made",
        "referenced_files"
      ]
    },
    "metadata": {
      "type": "object",
      "description": "Session metadata. tool_source is required.",
      "properties": {
        "project": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "Lifecycle: laufend | abgeschlossen | referenz | archiviert."
        },
        "origin": {
          "type": "string",
          "description": "Producer: automation for cron/routines without a human; default human.",
          "enum": [
            "human",
            "automation"
          ]
        },
        "tool_source": {
          "type": "string",
          "description": "AI platform this session originates from.",
          "enum": [
            "cursor",
            "claude",
            "chatgpt",
            "gemini",
            "perplexity",
            "copilot",
            "bing",
            "web"
          ]
        },
        "source_urls": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Related URLs (chat link, sources)."
        }
      },
      "required": [
        "tool_source"
      ]
    }
  },
  "required": [
    "title",
    "messages"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🟢palim_get_context(topic, project, tags, status, max_sessions)

Get formatted context for a specific topic by searching and retrieving relevant sessions.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "description": "Topic to get context for."
    },
    "project": {
      "type": "string",
      "description": "Optional filter by project"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Filter by metadata tags (match any)."
    },
    "status": {
      "type": "string",
      "description": "Optional filter by metadata.status (e.g. \"laufend\", \"abgeschlossen\")."
    },
    "max_sessions": {
      "type": "number",
      "description": "Maximum number of sessions to include (default: 3)",
      "default": 3
    }
  },
  "required": [
    "topic"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🟢palim_get_brain(topic, limit)

Distilled knowledge profile. No args: recent topic index (capped). With topic: full document. Pass limit for a larger or full index.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "description": "Optional topic slug or name. When set, returns the full topic document instead of the index."
    },
    "limit": {
      "type": "number",
      "description": "Max topics in the index (most recently updated first). Default 20 when omitted. Pass 0 for every topic."
    }
  },
  "required": []
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🟢palim_search(query, tags, project, status, tool_source, ...)

Search saved sessions and memories. Query matches session text or memory content/id. Supports metadata filtering via tags/project/status/tool_source. Omit query for tags-only or project-only session filtering. Project match is case-insensitive.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Full-text search query. Omit for tags-only or project-only filtering."
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Filter by metadata tags (match any)."
    },
    "project": {
      "type": "string",
      "description": "Optional case-insensitive project filter (Logisoft ≡ logisoft). Allowed without query or tags."
    },
    "status": {
      "type": "string",
      "description": "Optional filter by metadata.status (e.g. \"laufend\", \"abgeschlossen\", \"referenz\", \"archiviert\")."
    },
    "tool_source": {
      "type": "string",
      "description": "Optional explicit filter by tool source (cursor, claude, chatgpt, web, etc.)."
    },
    "limit": {
      "type": "number",
      "description": "Maximum number of results (default: 5)",
      "default": 5
    }
  },
  "required": []
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🟡palim_add_memory(content, type, tags, source_session_id, metadata)

Store a memory, fact, decision, or preference for later retrieval.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "content": {
      "type": "string",
      "description": "Content of the memory"
    },
    "type": {
      "type": "string",
      "enum": [
        "fact",
        "decision",
        "preference",
        "insight",
        "note"
      ],
      "description": "Type of memory"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Tags for categorization"
    },
    "source_session_id": {
      "type": "string",
      "description": "Optional reference to source session"
    },
    "metadata": {
      "type": "object",
      "description": "Additional metadata"
    }
  },
  "required": [
    "content",
    "type"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🔴palim_delete_memory(memory_id)

Permanently delete one stored memory by ID. Use for user-requested cleanup or deletion; this cannot be undone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "memory_id": {
      "type": "string",
      "description": "ID of the memory to permanently delete"
    }
  },
  "required": [
    "memory_id"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🔴palim_delete_session(session_id, hard_delete)

Delete a chat session. Soft delete by default (reversible). Use hard_delete=true for permanent deletion.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "session_id": {
      "type": "string",
      "description": "The session ID to delete"
    },
    "hard_delete": {
      "type": "boolean",
      "description": "If true, permanently deletes all data. Default: false (soft delete).",
      "default": false
    }
  },
  "required": [
    "session_id"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}
🟢palim_help(category)

Show an overview of all available Palim tools and usage instructions.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "all",
        "sessions",
        "search",
        "memory",
        "setup",
        "encryption"
      ],
      "description": "Filter by category. Default: all."
    }
  },
  "required": []
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Human-readable tool result text."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": true
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada11 herramientas
verificadoversión no registrada11 herramientas
verificadoversión no registrada10 herramientas