Skip to main content
Glama

Server Details

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

Ownership verified
Status
Healthy
Uptime
100.0% over 71 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
joleschmidt/palim-mcp-examples
GitHub Stars
0
Server Listing
palim-mcp-examples

TDQS

A3.6/5.0

Scored across 11 tools

Disambiguation3/5

Several tools share overlapping purposes: palim_checkpoint and palim_save_context are both framed as 'checkpoints'/'handoffs', and palim_get_context, palim_search, and palim_resume all retrieve prior session content with blurry boundaries. Descriptions do attempt to differentiate (lightweight vs. full transcript, distilled profile vs. topic search), but an agent could still hesitate between checkpoint/save_context and get_context/search.

Naming Consistency4/5

All tools share the palim_ prefix and a mostly verb_noun pattern (add_memory, delete_session, get_brain, save_session). A few tools drop the noun (checkpoint, resume, search, help), a minor deviation but overall predictable and readable.

Tool Count5/5

11 tools is well-scoped for a memory/session persistence server, with each operation (store, retrieve, search, delete, resume, checkpoint, help) earning a distinct place. No bloat or glaring redundancy in count.

Completeness4/5

Core lifecycle is covered: create (save/add), read (get/search/resume/brain), and delete for both sessions and memories. However, update operations are absent from the surface, and palim_save_session references palim_update_session_metadata and palim_update_session_references, which are not present as actual tools—a minor dead end an agent could hit.

Available Tools

11 tools
palim_add_memoryBInspect

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

NameRequiredDescriptionDefault
tagsNoTags for categorization
typeYesType of memory
contentYesContent of the memory
metadataNoAdditional metadata
source_session_idNoOptional reference to source session

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write-and-safe profile is covered structurally. The description adds nothing beyond that: it does not mention idempotency behavior, duplicate handling, persistence scope, or auth requirements, despite idempotentHint=false making duplicate-write behavior a real question.

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

Conciseness4/5

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

A single front-loaded sentence with zero filler and the write purpose stated immediately. It is efficient, though the brevity is partly what leaves the usage and behavioral gaps unaddressed.

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

Completeness4/5

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

An output schema exists, so return values need no explanation, and 100% schema coverage plus annotations carry the structural weight. The description is adequate for invoking the tool correctly, with the only real gap being when-to-use routing among the many sibling save/checkpoint/search tools.

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 all five parameters (content, type, tags, metadata, source_session_id) are already documented in the schema. The description names a few memory categories that partly mirror the type enum but adds no format, constraint, or interaction detail beyond the schema, making the baseline 3 correct.

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 states a specific verb (Store) and resource (memory, fact, decision, preference), so the agent understands this is a write operation for persisting knowledge. It clearly contrasts in nature with read-oriented siblings like palim_search or palim_get_context, but never names an alternative explicitly, keeping it just short of a 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 phrase 'for later retrieval' weakly implies the purpose, but there is no guidance on when to choose this tool over palim_save_context, palim_checkpoint, or palim_save_session, nor any stated exclusions or prerequisites. The agent must infer the routing decision entirely on its own.

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

palim_checkpointC
Idempotent
Inspect

Call after connecting AND again after each meaningful chunk of work. Claude Code: reuse claude-code-.

NameRequiredDescriptionDefault
tagsNoOptional search tags.
titleNoChat title when visible.
originNohuman (default) or automation (hooks/cron).
statusNoOptional status, e.g. laufend or abgeschlossen.
contextYesHandoff another AI can continue from: goal, state, constraints, next steps.
projectNoOptional project name.
created_atNoOptional ISO 8601 chat date from the client.
key_topicsNoMain topics.
open_itemsNoOpen tasks.
session_idNoStable chat ID. Reuse it so checkpoints update one row. Claude Code/Codex: claude-code-<client session id>.
source_urlsNoOptional URLs.
tool_sourceNoClient: cursor, claude, chatgpt, … Optional; defaults from the MCP client name, else unknown.
continues_fromNoOptional session_id from palim_resume that this chat continues.
decisions_madeNoDecisions in this chat.
referenced_filesNoRelevant files.
resolved_open_itemsNoPreviously open items that are now done; quote a leading fragment.

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

C2.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true and destructiveHint=false. The description adds one behavioral detail consistent with those annotations — reusing the session_id updates a single row (upsert) — but says nothing about what gets overwritten, permission needs, or the effect of omitting session_id.

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

Conciseness3/5

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

Two short, front-loaded sentences with no padding, so it is not verbose. But the brevity is under-specification rather than economical conciseness — the sentences carry usage timing while omitting the tool's purpose entirely.

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?

For a 16-parameter persistence tool with many siblings performing similar saves, the description omits what a checkpoint is, what the context field should contain beyond the bare schema hint, and how it relates to palim_resume/palim_save_context. Output-schema coverage excuses return-value explanation, but the write-side guidance is still thin.

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% and the schema already documents all 16 parameters, including the session_id reuse convention. The description's only parameter remark ('reuse claude-code-<client session id>') repeats what the schema already states, so it adds no meaning beyond structured fields. Baseline 3 is appropriate.

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

Purpose2/5

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

The description never states what the tool does — it only says when to call it ('after connecting AND again after each meaningful chunk of work'). An agent must infer from the name/title that this writes a checkpoint record. It does not distinguish the tool from its near-identical siblings palim_save_context, palim_save_session, or palim_add_memory.

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?

It gives concrete timing ('after connecting AND again after each meaningful chunk of work'), which is genuine when-to-use guidance. However, it names no alternatives and provides no when-not to use it, leaving the agent unable to choose between this and palim_save_context/palim_save_session.

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

palim_delete_memoryA
DestructiveIdempotent
Inspect

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

NameRequiredDescriptionDefault
memory_idYesID of the memory to permanently delete

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is covered structurally. The description still adds the concrete consequence that the deletion is permanent and irreversible, which is useful context beyond the boolean hints.

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?

Two tight sentences with the action and scope front-loaded and the irreversibility warning immediately after. No filler or restatement of the name.

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

Completeness4/5

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

An output schema exists, so return values need no explanation, and annotations carry the safety semantics. Only minor gaps remain, such as behavior when the ID does not exist or is already deleted.

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 coverage is 100% and the single parameter's description ('ID of the memory to permanently delete') fully documents it. The tool description adds no syntax or format detail beyond what the schema already supplies, so baseline 3 applies.

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?

States a specific verb+resource ('Permanently delete one stored memory by ID'), which is immediately actionable. It implicitly distinguishes from palim_delete_session via the 'memory' resource, but never names or contrasts the sibling explicitly.

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

Usage Guidelines4/5

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

'Use for user-requested cleanup or deletion' gives a clear triggering context, and 'this cannot be undone' warns against casual use. It stops short of naming when-not to use it or pointing to an alternative for session/context deletion.

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

palim_delete_sessionA
DestructiveIdempotent
Inspect

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

NameRequiredDescriptionDefault
session_idYesThe session ID to delete
hard_deleteNoIf true, permanently deletes all data. Default: false (soft delete).

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, so the safety profile is covered. The description adds the genuinely useful behavioral fact that the default path is a reversible soft delete and only hard_delete=true destroys data permanently, which the annotations alone cannot express.

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?

Three short sentences, front-loaded with the action and default behavior, then the opt-in for permanence. Every sentence carries distinct information and none is wasted.

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

Completeness4/5

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

For a two-parameter tool with an output schema and full annotation coverage, the description supplies everything needed to call it correctly, including which mode is destructive. It stops short of noting any side effects on related data (memories, context) that a session deletion might cascade to.

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% and both parameters are documented there, including the default for hard_delete. The description restates that same soft/hard dichotomy without adding format, identifier, or response details, so it sits at the baseline for a fully covered schema.

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

Purpose5/5

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

States a specific verb and resource ('Delete a chat session') and immediately scopes the operation by naming the two deletion modes. It is clearly distinguishable from siblings like palim_delete_memory or palim_save_session, whose resources are memory and session creation respectively.

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

Usage Guidelines4/5

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

Gives an explicit condition for selecting the harder mode ('Use hard_delete=true for permanent deletion'), and frames the default as reversible. It does not, however, say when an agent should delete a session at all versus using palim_save_session or palim_checkpoint, so no cross-tool routing is provided.

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

palim_get_brainA
Read-onlyIdempotent
Inspect

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

NameRequiredDescriptionDefault
limitNoMax topics in the index (most recently updated first). Default 20 when omitted. Pass 0 for every topic.
topicNoOptional topic slug or name. When set, returns the full topic document instead of the index.

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds that the index is capped by default and can be expanded, which is modest extra context, but it says nothing about size limits, rate behavior, or what 'distilled' implies about completeness.

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

Conciseness4/5

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

Three short clauses, front-loaded with the resource and mode behavior; nothing is padded. The telegraphic fragment style is efficient but slightly terse for an agent parsing mode semantics.

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

Completeness4/5

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

With an output schema present, return-value detail is not required, and the description covers both call shapes adequately. The remaining gap is the absence of any guidance on choosing this over palim_get_context or palim_search.

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 documents both parameters fully, including defaults and the 0-for-everything case. The description's 'Pass limit for a larger or full index' merely restates schema content, so the baseline 3 applies.

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?

States a specific verb+resource ('Distilled knowledge profile') and describes both operating modes: no args returns a topic index, with topic returns the full document. However, 'brain' is internal jargon and the description never distinguishes this from sibling tools like palim_get_context or palim_search, which an agent must choose between.

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?

It clearly explains the two modes and what the limit parameter changes, which is useful conditional guidance. But it gives no when-to-use context relative to siblings such as palim_get_context, palim_search, or palim_resume, so routing remains an inference.

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

palim_get_contextA
Read-onlyIdempotent
Inspect

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

NameRequiredDescriptionDefault
tagsNoFilter by metadata tags (match any).
topicYesTopic to get context for.
statusNoOptional filter by metadata.status (e.g. "laufend", "abgeschlossen").
projectNoOptional filter by project
max_sessionsNoMaximum number of sessions to include (default: 3)

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds that the output is 'formatted context' assembled by searching and retrieving sessions, which is useful but modest; it says nothing about pagination, ordering, or how many results are returned when max_sessions is exceeded.

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?

A single front-loaded sentence that names the action, the output artifact, the scoping input, and the retrieval mechanism with no filler. Nothing in it is redundant.

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

Completeness4/5

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

With an output schema present, full parameter coverage, and annotations covering the safety profile, the description does not need to explain return values or side effects. It is nearly complete for a 5-parameter retrieval tool; the only real gap is the unstated relationship to sibling retrieval tools like palim_search.

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 every parameter (tags, topic, status, project, max_sessions) is already documented in the schema with examples and a default. The description adds no syntax, format, or interaction detail beyond what the schema provides, making the baseline 3 correct.

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 states a specific verb (get) and resource (formatted context for a topic) and even describes the mechanism (searching and retrieving relevant sessions). It is clear on what the tool produces, but it does not distinguish it from siblings like palim_search or palim_get_brain, whose names suggest overlapping retrieval behavior.

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?

Usage is implied by the phrase 'for a specific topic', which tells the agent the tool is topic-scoped. However, there is no explicit when-to-use/when-not guidance and no mention of alternatives such as palim_search or palim_resume, so the agent must infer the boundary between this and its retrieval siblings.

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

palim_helpA
Read-onlyIdempotent
Inspect

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

NameRequiredDescriptionDefault
categoryNoFilter by category. Default: all.

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds only that the payload is a tool overview plus usage instructions, which is modest supplementary context with no rate limits, auth needs, or side effects to disclose.

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?

A single front-loaded sentence with the action and the returned content, no filler or redundancy.

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

Completeness4/5

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

An output schema exists and annotations cover the behavioral profile, so the description need not explain return values or safety. For a zero-required-parameter help tool it is essentially complete, with only the category-filtering affordance left solely to the schema.

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% and the single category parameter is documented in the schema itself, including its enum values and default. The description adds no meaning beyond that, so the baseline 3 applies.

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 states a concrete verb ("Show") and resource ("overview of all available Palim tools and usage instructions"), which is unmistakably distinct from data-oriented siblings like palim_search or palim_add_memory. It is clear, though it does not explicitly name siblings to route against.

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?

Usage is only implied: an agent can infer this is the discovery/onboarding call, and the category enum hints at scoped lookups. There is no explicit when-to-use statement, no when-not-to-use, and no mention of alternatives.

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

palim_resumeA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
projectNoOptional: only consider threads belonging to this project (case-insensitive; Logisoft ≡ logisoft).
tool_sourceNoOptional: only consider threads from one client (cursor, claude, codex, chatgpt, ...).
within_hoursNoOptional: ignore threads older than this many hours. Omit to always return the latest thread.
include_messagesNoOptional: append the tail of the transcript when the thread has stored messages. Default false.

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description goes beyond that by disclosing that the returned thread may be unrelated and should be discarded, and that the project filter matches to the most recently updated thread — useful behavior an agent would otherwise have to infer.

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

Conciseness4/5

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

Four short sentences, front-loaded with purpose and the calling instruction, with zero padding. The final sentence on project filtering partly duplicates the schema description, costing a bit of density.

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

Completeness4/5

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

An output schema exists, so return-value explanation is unnecessary, and all four params are schema-documented. The description covers the primary calling pattern and a fallback rule; what's left out (no-thread behavior, how the resume interacts with session state) is minor for a read-only resumption helper.

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 all four optional params are already documented. The description restates the project filter's case-insensitive, most-recently-updated matching (which the schema already says) and says 'no args', adding little beyond the schema, so baseline 3 applies.

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?

States a specific verb+resource: 'Continue the user's most recent Palim thread.' The scope ('most recent') is precise, but it never names a sibling (e.g., palim_get_context, palim_search) to distinguish itself from the other thread/context retrieval tools.

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

Usage Guidelines4/5

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

'Call first in a new chat, no args' gives explicit timing guidance and a calling pattern, and 'Ignore the result if it is unrelated' tells the agent how to handle an off-target result. No alternatives or when-not-to-use conditions are named, so it stops short of a 5.

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

palim_save_contextA
Idempotent
Inspect

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

NameRequiredDescriptionDefault
tagsNoOptional search tags.
titleNoChat title when visible.
originNohuman (default) or automation (hooks/cron).
statusNoOptional status, e.g. laufend or abgeschlossen.
contextYesHandoff another AI can continue from: goal, state, constraints, next steps.
projectNoOptional project name.
created_atNoOptional ISO 8601 chat date from the client.
key_topicsNoMain topics.
open_itemsNoOpen tasks.
session_idNoStable chat ID. Reuse it so checkpoints update one row. Claude Code/Codex: claude-code-<client session id>.
source_urlsNoOptional URLs.
tool_sourceNoClient: cursor, claude, chatgpt, … Optional; defaults from the MCP client name, else unknown.
continues_fromNoOptional session_id from palim_resume that this chat continues.
decisions_madeNoDecisions in this chat.
referenced_filesNoRelevant files.
resolved_open_itemsNoPreviously open items that are now done; quote a leading fragment.

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare idempotent=true, destructive=false and readOnly=false, so the safety profile is covered. The description adds real behavioral context beyond them: what is stored ('no transcript', self-contained handoff) and that repeated calls should reuse session_id to update one row rather than create duplicates.

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?

Three short fragments, no filler: what it is, the key operational constraint, and when to invoke it. Purpose and the session_id instruction are front-loaded before the timing advice.

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

Completeness4/5

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

With an output schema present, return values need no explanation, and the schema covers all parameters. The description supplies purpose and cadence but leaves the relationship to palim_save_session, palim_checkpoint and palim_resume unstated, which matters given the crowded sibling set.

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 all 16 parameters are already documented in the schema, including the session_id reuse semantics and the origin enum. The description adds no format or syntax detail beyond what the schema provides, making the baseline 3 appropriate.

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 states a specific action and scope: a lightweight checkpoint that produces a 'self-contained handoff, no transcript.' This distinguishes it in substance from a transcript-heavy sibling like palim_save_session, but it never names that sibling or any other, so the agent must infer the contrast from the sibling list.

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

Usage Guidelines4/5

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

It gives concrete timing guidance ('Proactive after results and decisions, not only once') and an operational instruction ('Reuse session_id in this chat'), which is more than most definitions offer. It stops short of naming alternatives (palim_save_session, palim_checkpoint) or stating when not to use this tool.

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

palim_save_sessionA
Destructive
Inspect

Save or append a full chat transcript (messages + summary). Exclude children's personal data under 16/higher consent age, HIPAA PHI, PCI payment card data, and adult content; request redaction before saving. 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.

NameRequiredDescriptionDefault
titleYesSession title. Reuse across saves; else the exact chat title from the client UI.
summaryNoFull-conversation summary. Required arrays may be empty.
messagesYesMessages to save (role + content). When appending, only unsaved messages.
metadataNoSession metadata. tool_source is required.
overwriteNoReplace all existing messages instead of appending. Default: false.
created_atNoOptional ISO 8601 creation date from the AI client (new sessions only).
session_idNoSession id. Reuse across saves in this chat; else from chat URL or a new UUID.

Output Schema

NameRequiredDescription
messageYesHuman-readable tool result text.

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only flag destructiveHint/openWorldHint/readOnlyHint; the description goes well beyond by defining what is destroyed (overwrite replaces all existing messages vs. append), mandating pre-save redaction, and enumerating prohibited content classes (under-16, HIPAA PHI, PCI, adult content). That is substantive behavioral context an agent could not derive from annotations or schema.

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?

Purpose is front-loaded, then routing, then compliance, then append procedure — each sentence carries distinct operational value with no restatement of the name or schema text.

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

Completeness5/5

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

For a destructive, nested-schema, multi-mode save tool with an output schema present, the description covers mode selection (append vs overwrite), call sequencing, compliance preconditions and sibling routing without needing to describe return values.

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

Parameters4/5

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

Schema coverage is 100%, so the schema already documents title, summary shape, messages, metadata and overwrite; baseline is 3. The description adds cross-call semantics the schema does not carry — reuse session_id/title across saves, fetch existing messages before appending, and always supply a complete summary plus metadata.tool_source — which is genuinely useful but partial.

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

Purpose5/5

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

Opens with a specific verb+resource pair ('Save or append a full chat transcript') and immediately scopes what the resource contains (messages + summary). It explicitly distinguishes itself from palim_save_context, palim_update_session_metadata and palim_update_session_references, so an agent can route without opening a schema.

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

Usage Guidelines5/5

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

Gives explicit when-to-use alternatives ('Prefer palim_save_context for compact handoffs', 'For metadata-only or URL updates use palim_update_session_metadata / palim_update_session_references') plus the append recipe (reuse session_id + title, fetch existing messages first, send only new ones). Nothing is left to inference.

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 updates
    • Changedpalim_checkpoint2 fields changed
      • changedInput schema / properties / tool_source / description
        Previous value: -"Client: cursor, claude, chatgpt, …"New value: +"Client: cursor, claude, chatgpt, … Optional; defaults from the MCP client name, else unknown."
      • changedInput schema / required
        Previous value: -[
        -  "context",
        -  "tool_source"
        -]New value: +[
        +  "context"
        +]
    • Changedpalim_save_context2 fields changed
      • changedInput schema / properties / tool_source / description
        Previous value: -"Client: cursor, claude, chatgpt, …"New value: +"Client: cursor, claude, chatgpt, … Optional; defaults from the MCP client name, else unknown."
      • changedInput schema / required
        Previous value: -[
        -  "context",
        -  "tool_source"
        -]New value: +[
        +  "context"
        +]
  2. 1 tool update
    • Addedpalim_delete_memory
  3. 2 tool updates
    • Changedpalim_resume1 field changed
      • changedInput schema / properties / project / description
        Previous value: -"Optional: only consider threads belonging to this project."New value: +"Optional: only consider threads belonging to this project (case-insensitive; Logisoft ≡ logisoft)."
    • Changedpalim_search2 fields changed
      • changedInput schema / properties / project / description
        Previous value: -"Optional filter by project"New value: +"Optional case-insensitive project filter (Logisoft ≡ logisoft). Allowed without query or tags."
      • changedInput schema / properties / query / description
        Previous value: -"Full-text search query. Omit for tags-only filtering."New value: +"Full-text search query. Omit for tags-only or project-only filtering."
  4. 1 tool update
    • Addedpalim_checkpoint
  5. 3 tool updates
    • Addedpalim_delete_session
    • Removedpalim_preview_session_tag_cleanup
    • Addedpalim_save_session
  6. 1 tool update
    • Changedpalim_get_brain1 field changed
      • addedInput schema / properties / limit
        Added value: +{
        +  "description": "Max topics in the index (most recently updated first). Default 20 when omitted. Pass 0 for every topic.",
        +  "type": "number"
        +}
  7. 2 tool updates
    • Removedpalim_delete_session
    • Addedpalim_preview_session_tag_cleanup
  8. 38 tool updates
    • Removedpalim_add_user_rule
    • Removedpalim_backfill_blind_index
    • Removedpalim_backfill_brain
    • Removedpalim_browse_sessions
    • Removedpalim_clean_session_tags
    • Removedpalim_create_connection_url
    • Removedpalim_create_summary
    • Removedpalim_delete_memory
    • Removedpalim_delete_user_rule
    • Removedpalim_export_brain
    • Removedpalim_export_session
    • Removedpalim_find_similar
    • Removedpalim_get_session
    • Removedpalim_get_sessions
    • Removedpalim_get_stats
    • Removedpalim_get_summary
    • Removedpalim_get_user_context
    • Removedpalim_get_user_profile
    • Removedpalim_list_sessions
    • Removedpalim_list_summaries
    • Removedpalim_list_user_rules
    • Removedpalim_login
    • Removedpalim_logout
    • Removedpalim_migrate_encryption
    • Removedpalim_register
    • Removedpalim_repair_brain_hooks
    • Changedpalim_save_context14 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Concise but self-contained handoff: goal, relevant background, work completed, current state, constraints, and next steps. Write it so another AI can continue without the transcript."New value: +"Handoff another AI can continue from: goal, state, constraints, next steps."
      • changedInput schema / properties / continues_from / description
        Previous value: -"Optional. session_id of the thread this chat continues, as reported by palim_resume. Keep your own new session_id; this only records the link."New value: +"Optional session_id from palim_resume that this chat continues."
      • changedInput schema / properties / created_at / description
        Previous value: -"Optional chat creation date from the AI client (ISO 8601)."New value: +"Optional ISO 8601 chat date from the client."
      • changedInput schema / properties / decisions_made / description
        Previous value: -"Decisions reached in this chat."New value: +"Decisions in this chat."
      • changedInput schema / properties / key_topics / description
        Previous value: -"Main topics covered."New value: +"Main topics."
      • changedInput schema / properties / open_items / description
        Previous value: -"Remaining tasks or unresolved questions."New value: +"Open tasks."
      • changedInput schema / properties / origin / description
        Previous value: -"Who produced this checkpoint. Use \"automation\" for scheduled routines, cron jobs and capture hooks — anything saved without a human in the loop. Defaults to \"human\". Automated saves are counted separately in palim_get_stats so they cannot be mistaken for real usage."New value: +"human (default) or automation (hooks/cron)."
      • changedInput schema / properties / referenced_files / description
        Previous value: -"Relevant files or resources."New value: +"Relevant files."
      • changedInput schema / properties / resolved_open_items / description
        Previous value: -"Open items from earlier sessions on this topic that are now DONE. Quote the wording of the item (a leading fragment is enough); it is moved out of Open Items into a dated Resolved section. Use this whenever a chat finishes something previously listed as open, otherwise the worklist keeps showing completed work."New value: +"Previously open items that are now done; quote a leading fragment."
      • changedInput schema / properties / session_id / description
        Previous value: -"Stable chat ID, reused for every checkpoint in this chat so the record is updated instead of duplicated. In Claude Code / Codex use `claude-code-<the client session id>` — the Stop hook keeps that same row's live tail current, and sharing the ID keeps your handoff and that tail on one row. Otherwise reuse the ID returned by your first checkpoint in this chat."New value: +"Stable chat ID. Reuse it so checkpoints update one row. Claude Code/Codex: claude-code-<client session id>."
      • changedInput schema / properties / source_urls / description
        Previous value: -"Optional chat URL and referenced URLs."New value: +"Optional URLs."
      • changedInput schema / properties / status / description
        Previous value: -"Optional lifecycle status such as laufend or abgeschlossen."New value: +"Optional status, e.g. laufend or abgeschlossen."
      • changedInput schema / properties / title / description
        Previous value: -"Exact chat title when visible. Omit if unavailable; Palim derives a short title from context."New value: +"Chat title when visible."
      • changedInput schema / properties / tool_source / description
        Previous value: -"AI platform this chat originates from, for example codex, cursor, claude, chatgpt, gemini, perplexity, granola, or web."New value: +"Client: cursor, claude, chatgpt, …"
    • Removedpalim_save_session
    • Removedpalim_search_by_date_range
    • Removedpalim_search_memories
    • Removedpalim_set_user_context
    • Removedpalim_show_session
    • Removedpalim_update_brain_topic
    • Removedpalim_update_memory
    • Removedpalim_update_session_metadata
    • Removedpalim_update_session_references
    • Removedpalim_update_user_profile
    • Removedpalim_update_user_rule
  9. 45 tool updates
    • Changedpalim_add_memory1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_add_user_rule1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_backfill_blind_index1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_backfill_brain1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_browse_sessions1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_clean_session_tags1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_create_connection_url1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_create_summary1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_delete_memory1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_delete_session1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_delete_user_rule1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_export_brain1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_export_session1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_find_similar1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_get_brain1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_get_context1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_get_session1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_get_sessions1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_get_stats1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_get_summary1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_get_user_context1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_get_user_profile1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_help1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_list_sessions1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_list_summaries1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_list_user_rules1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_login1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_logout1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_migrate_encryption1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_register1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_repair_brain_hooks1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_resume1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_save_context1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_save_session1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_search1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_search_by_date_range1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_search_memories1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_set_user_context1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_show_session1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_update_brain_topic1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_update_memory1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_update_session_metadata1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_update_session_references1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_update_user_profile1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
    • Changedpalim_update_user_rule1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "properties": {
        +    "message": {
        +      "description": "Human-readable tool result text.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "message"
        +  ],
        +  "type": "object"
        +}
  10. 45 tool updates
    • First observedpalim_add_memory
    • First observedpalim_add_user_rule
    • First observedpalim_backfill_blind_index
    • First observedpalim_backfill_brain
    • First observedpalim_browse_sessions
    • First observedpalim_clean_session_tags
    • First observedpalim_create_connection_url
    • First observedpalim_create_summary
    • First observedpalim_delete_memory
    • First observedpalim_delete_session
    • First observedpalim_delete_user_rule
    • First observedpalim_export_brain
    • First observedpalim_export_session
    • First observedpalim_find_similar
    • First observedpalim_get_brain
    • First observedpalim_get_context
    • First observedpalim_get_session
    • First observedpalim_get_sessions
    • First observedpalim_get_stats
    • First observedpalim_get_summary
    • First observedpalim_get_user_context
    • First observedpalim_get_user_profile
    • First observedpalim_help
    • First observedpalim_list_sessions
    • First observedpalim_list_summaries
    • First observedpalim_list_user_rules
    • First observedpalim_login
    • First observedpalim_logout
    • First observedpalim_migrate_encryption
    • First observedpalim_register
    • First observedpalim_repair_brain_hooks
    • First observedpalim_resume
    • First observedpalim_save_context
    • First observedpalim_save_session
    • First observedpalim_search
    • First observedpalim_search_by_date_range
    • First observedpalim_search_memories
    • First observedpalim_set_user_context
    • First observedpalim_show_session
    • First observedpalim_update_brain_topic
    • First observedpalim_update_memory
    • First observedpalim_update_session_metadata
    • First observedpalim_update_session_references
    • First observedpalim_update_user_profile
    • First observedpalim_update_user_rule

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Persistent memory API for AI agents — store, recall, and inject semantically-searchable context across sessions. EU-hosted, GDPR-compliant. Supports Claude, Cursor, Cline, and any MCP-compatible client.
    4
    2
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Persistent project memory and task management for AI coding agents through MCP. Lets Claude Code, Cursor, Codex and other MCP clients save decisions and bug fixes, search relevant context, and reuse it across sessions.
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.