Skip to main content
Glama

Version License Python MCP Storage

Release status — 2026-08-16: v0.3.0 has a fully validated immutable release candidate, but the public GitHub Release and PyPI publication are still pending. Until PyPI publication is verified, install from this repository instead of assuming pipx install persistent-memory-mcp is available publicly. See Releasing and Issue #53.

What is Persistent Memory MCP?

Persistent Memory MCP is an open-source Model Context Protocol server that gives coding assistants durable, searchable project memory. It stores architecture, technical decisions, tasks, warnings, repository evidence, checkpoints and continuation state so compatible clients can resume work without reconstructing the project from scratch.

The product is intentionally personal and local-first:

  • one local installation;

  • SQLite by default;

  • localhost-only Dashboard and Galaxy UI;

  • explicit owner/project isolation;

  • no automatic execution of repository code;

  • optional self-managed Supabase/PostgreSQL adapters;

  • no hosted team workspace, public collaborative dashboard or SaaS role hierarchy.

Related MCP server: memory-mcp

Core capabilities

Capability

What it provides

Durable project memory

Decisions, tasks, warnings, checkpoints, sessions and file context survive client restarts

Git-aware context

Bind memory and repository evidence to repository, branch and commit state

Context Packet v1

Versioned, provenance-aware context under a hard token budget

Progressive retrieval

Expand repository map → files → symbols → exact fragments instead of loading whole repos

Persistent symbol evolution

Track logical symbols across commits, moves and conservative rename matches

Context-quality gates

Detect retrieval, token-budget, provenance and safety regressions in CI

Operational map / Galaxy

Inspect bounded owner-scoped project risk and evidence relationships

Automatic continuation

Persist bounded resume-ready state for close, handoff and idle expiry

Deterministic pagination

Stable owner/project-scoped keyset pagination with bounded cursors

Verified backup

WAL-safe SQLite backup with integrity validation and SHA-256 manifest

Health diagnostics

Read-only SQLite integrity, foreign-key, disk and backup-readiness checks

Confirmed restore

Preview → signed confirmation → safety backup → atomic restore → verification/rollback

Versioned migrations

Explicit, backup-first, checksum-verified schema upgrades

Confirmed deletion

Exact scoped preview plus short-lived single-use confirmation

Private Dashboard

Localhost-only operational and maintenance UI

Application composition

Explicit create_application(settings) runtime composition boundary

Idempotent MCP Tool Registry

Centralized dynamic tool registration/replacement through public MCP APIs

Quick start

1. Install from the repository

Public PyPI publication is not yet complete. Use the validated source tree for now:

git clone https://github.com/dannymaaz/memory-mcp.git
cd memory-mcp
python -m venv .venv
source .venv/bin/activate  # Windows PowerShell: .venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -e .

For a non-editable installation from the repository:

pip install "git+https://github.com/dannymaaz/memory-mcp.git"

After v0.3.0 is published and publicly smoke-tested on PyPI, the intended package command is:

pipx install persistent-memory-mcp

Do not rely on that PyPI command until Issue #53 records successful public installation evidence.

2. Initialize the local installation

memory-mcp init

The normal local database is:

~/.memory-mcp/memory.db

3. Check the installation

memory-mcp doctor
memory-mcp status
memory-mcp health

For full SQLite integrity validation:

memory-mcp health --full

4. Register it in an MCP client

{
  "mcpServers": {
    "persistent-memory-mcp": {
      "command": "memory-mcp",
      "env": {
        "MEMORY_BACKEND": "sqlite",
        "OWNER_ID": "your-stable-local-identifier",
        "MEMORY_CONFIRMATION_SECRET": "your-private-confirmation-secret"
      }
    }
  }
}

The server uses stdio when launched by an MCP client. It can also be started manually:

memory-mcp serve

Optional storage adapters

SQLite is the default and recommended local path. Remote adapters are opt-in and self-managed:

pip install -e ".[supabase]"
pip install -e ".[postgresql]"

These adapters do not change the product into a hosted multi-user service.

MCP SDK compatibility

Current post-v0.3 main uses the installed MCP Python SDK v2 MCPServer API and constrains the dependency to:

mcp>=2,<3

The runtime has no local MCP fallback. Dynamic tools are registered or replaced through the public MCP v2 add_tool() / remove_tool() APIs, while the existing application-level handler/schema mirrors remain synchronized.

The immutable v0.3.0 release candidate is intentionally separate: it remains pinned to its already validated MCP v1 compatibility state and must not be rebuilt from current main. See MCP SDK compatibility and Issue #53.

Context Compiler

The completed Context Compiler phase adds five evidence-driven layers:

  1. Context Packet + token accounting — PR #60 / Quality #226.

  2. Progressive repository retrieval — PR #62 / Quality #235.

  3. Persistent code provenance/symbol evolution — PR #64 / Quality #250.

  4. Context-quality and adversarial regression gates — PR #66 / Quality #262.

  5. Operational project map / risk-oriented Galaxy — PR #68 / Quality #282.

See:

Data-safety model

Persistent Memory MCP treats destructive local operations as explicit workflows, not hidden maintenance:

  • migrations are previewed and applied explicitly;

  • existing stale schemas fail closed on serve rather than auto-migrating;

  • restore requires a signed plan tied to the exact backup state;

  • restore creates a verified safety backup immediately before replacement;

  • deletion requires an exact preview and short-lived single-use confirmation;

  • backup verification uses SHA-256 manifests without storing memory contents in the manifest;

  • Dashboard maintenance remains bound to localhost.

See Upgrading, Releasing and Security Policy.

Upgrading from 0.2.0

Version 0.3.0 introduces explicit versioned SQLite migrations. Existing databases are never silently migrated on MCP startup.

Preview first:

memory-mcp-migrate --env ~/.memory-mcp/.env

Apply only after reviewing the plan:

memory-mcp-migrate --env ~/.memory-mcp/.env --apply --yes

The apply step creates a verified pre-migration backup before mutation. Keep the backup and its JSON manifest until the upgraded installation has been verified.

v0.3.0 release chain

The public v0.3.0 release must be created from the immutable release-only commit:

9e0a084dd9b179612082edef99e1c3c9bf563ffa

That commit was produced by PR #89 after Quality #361 passed the complete Ubuntu/Windows/macOS × Python 3.11–3.13 release matrix, release artifact checks and installed v0.2.0 upgrade validation.

Current main includes later post-v0.3 work — including the MCP v2 runtime migration — and must not be tagged as v0.3.0.

The repository-side PyPI workflow was merged in PR #91 after Quality #368. It requires the future v0.3.0 GitHub Release to resolve exactly to the immutable release commit, downloads its wheel/sdist/SHA256SUMS, verifies them and publishes those exact distributions through PyPI Trusted Publishing without rebuilding them.

Remaining release operations are tracked in Issue #53.

Development validation

The Quality workflow covers:

  • Ubuntu, Windows and macOS;

  • Python 3.11, 3.12 and 3.13;

  • compile and Ruff lint checks;

  • unit/integration tests;

  • agent evaluation regressions;

  • Context Compiler reference gates;

  • dependency audit including optional extras;

  • wheel/sdist build and metadata validation;

  • SHA-256 release checksums;

  • clean wheel installation;

  • installed v0.2.0 → candidate upgrade validation.

Run the core local checks with:

python -m compileall persistent_memory_mcp src tests
ruff check .
pytest -q

Documentation

Security

Do not report suspected vulnerabilities in a public issue. Follow SECURITY.md for private reporting guidance.

Contributing

Contributions are welcome when they preserve the local-first safety boundary and include appropriate deterministic tests. See CONTRIBUTING.md.

License

MIT — see LICENSE.

Available Tools

22 tools
add_warningC

Registra advertencias inteligentes.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
messageNo
severityNomedium
owner_idNo
interfaceNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only says 'Registers intelligent warnings.' No disclosure of side effects, permissions, or behavior like whether duplicates are allowed.

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?

Very concise single sentence, but it sacrifices clarity and completeness. Minimalist but does not earn its place due to lack of detail.

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

Completeness1/5

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

Given 5 undocumented parameters and a sibling tool for reading warnings, the description provides almost no contextual information about the tool's role, output, or relationship to other tools.

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

Parameters1/5

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

5 parameters exist with 0% schema description coverage, and the description adds no parameter information. The field names alone are insufficient for understanding usage.

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?

Description states verb 'Registra' (registers) and resource 'advertencias' (warnings), making the action clear. However, 'inteligentes' is vague and does not differentiate from sibling tool get_active_warnings.

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?

No guidance on when to use this tool versus alternatives like get_active_warnings. No exclusions or prerequisites provided.

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

apply_retention_policyC

Aplica politicas de retencion y archivo.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
owner_idNo
keep_recent_sessionsNo
keep_recent_decisionsNo
archive_after_daysNo
summarize_archivedNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.2/5.0
Behavior1/5

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

No annotations are present, so the description bears full responsibility for behavioral disclosure. It fails to mention any side effects (e.g., data deletion, archiving), permission requirements, or reversibility. This is a severe gap for a tool that likely modifies or removes data.

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?

The description is a single sentence, achieving conciseness, but it is too brief to be adequately informative. While it states the core purpose, it sacrifices necessary detail; it is not earn every sentence because it omits critical information.

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

Completeness1/5

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

Given the tool's complexity (6 parameters, no annotations, no schema descriptions, and an output schema), the description is grossly insufficient. It provides no context about return values, behavior, or operational semantics, leaving the agent completely uninformed.

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

Parameters1/5

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

With 0% schema description coverage, the description should compensate by explaining key parameters, but it does not mention any (e.g., project_id, owner_id, retention counts). The agent has no context on how parameters influence behavior, making correct invocation unlikely.

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 'Aplica politicas de retencion y archivo' clearly states the tool's action (applies policies) and resource (retention and archiving), making its purpose understandable. However, it does not distinguish from siblings, though no direct siblings exist for this specific function.

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?

No guidance is provided on when to use this tool versus alternatives. The description lacks context about prerequisites, typical scenarios, or when not to use it, which is critical given the potentially destructive nature of applying retention policies.

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

capture_project_memoryC

Guarda automaticamente decisiones, tareas, checkpoints, archivos y estado en una sola llamada.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
owner_idNo
summaryNo
what_was_doneNo
what_is_leftNo
next_stepNo
decisionsNo
tasksNo
blockersNo
warningsNo
file_memoryNo
prompt_patternsNo
session_stateNo
tagsNo
repo_pathNo
auto_checkpointNo
auto_sync_sessionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.1/5.0
Behavior2/5

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

No annotations are present, so the description must carry the full burden. It only mentions 'automatically' but does not explain what automatic behavior entails (e.g., auto-detection of changes). It fails to disclose side effects, required permissions, or data persistence details.

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?

The description is a single short sentence, which is concise, but it is in Spanish and may not be optimal for all agents. It is front-loaded but lacks structural clarity or valuable detail.

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

Completeness1/5

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

Given the high parameter count (17) and lack of output schema details, the description is woefully incomplete. It does not cover return values, error conditions, or the interaction of parameters, leaving an agent without sufficient information to invoke the tool correctly.

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

Parameters1/5

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

Schema description coverage is 0% and the description does not add any parameter meaning. With 17 parameters and no explanations, an agent cannot determine what values to provide or how they relate to the tool's functionality.

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

Purpose3/5

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

The description states the tool saves decisions, tasks, checkpoints, files, and state in a single call, which gives a general purpose. However, it does not distinguish from sibling tools like save_checkpoint or save_file_memory, leaving ambiguity about when to use this bulk save vs. individual saves.

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?

No usage guidance is provided. The description does not indicate when to use this tool instead of alternatives, nor does it mention prerequisites or context required for effective use.

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

create_projectC

Crea un proyecto con metadata de repo y workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
slugNo
descriptionNo
owner_idNo
repo_pathNo
repo_urlNo
workspace_idNo
workspace_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

The description only states it creates a project, implying a write operation, but provides no details on side effects, required permissions, idempotency, or behavior under duplicate names. With no annotations, the description carries the full burden and fails to disclose critical behavioral traits.

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?

The description is a single concise sentence with no unnecessary words. However, it could benefit from being front-loaded with more structure, such as listing key parameters or behavior.

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

Completeness2/5

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

Given the complexity of 8 optional parameters and no schema descriptions, the description is too brief. It does not mention return values, required fields, or provide enough context for correct invocation. The output schema exists but is not leveraged in the description.

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

Parameters2/5

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

Schema description coverage is 0%, and the description only hints at 'repo and workspace metadata' without explaining the 8 parameters individually. It adds minimal meaning beyond the schema, which lacks descriptions, and fails to compensate for the low coverage.

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?

The description clearly states the tool creates a project with repo and workspace metadata. The verb 'create' and resource 'project' are specific, and it distinguishes from sibling tools like list_projects or resolve_project by indicating the inclusion of metadata.

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?

No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, scenarios where other tools (e.g., create_session) might be more appropriate, or when not to use it.

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

create_sessionC

Crea una sesion y guarda contexto git.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
interfaceNo
model_nameNo
owner_idNo
repo_pathNo
current_goalNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations provided, so the description must disclose behavioral traits. It mentions saving git context but does not explain side effects (e.g., modifies local repo?), required permissions, or whether the session is persistent. The description is insufficient for a tool with no annotation support.

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?

The description is a single sentence, which is concise but lacks necessary detail. It front-loads the verb but omits important context. Given the complexity (6 parameters), this is under-specified rather than effective conciseness.

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

Completeness1/5

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

With 6 undocumented parameters, no annotations, and no output schema details (though output schema exists), the description is completely inadequate. It fails to explain core concepts like 'session', 'git context', or how parameters relate to functionality. The agent cannot correctly invoke this tool based on the description alone.

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

Parameters1/5

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

Schema description coverage is 0%, meaning the input schema contains no parameter descriptions. The tool description does not explain any of the 6 parameters (e.g., project_id, interface, model_name, owner_id, repo_path, current_goal). The agent gets no guidance on what these parameters mean or how to use them.

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 the tool creates a session and saves git context. This is a specific verb+resource, but the term 'git context' is vague. It broadly distinguishes from sibling tools (e.g., create_project, capture_project_memory), but lacks precision on what 'session' means in this context.

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?

No guidance on when to use this tool versus alternatives such as create_project, resume_project, sync_session_state, or load_unified_context. There is no mention of prerequisites (e.g., does a project need to exist?) or exclusions.

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

end_sessionC

Finaliza una sesion y genera resumen automatico.

ParametersJSON Schema
NameRequiredDescriptionDefault
session_idNo
project_idNo
owner_idNo
completed_workNo
remaining_workNo
next_stepNo
blockersNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries full responsibility for behavioral disclosure. It mentions ending a session and generating a summary but omits side effects like whether it destroys session data, requires permissions, or has irreversible consequences.

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

Conciseness2/5

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

The description is a single sentence, which is concise but severely under-specified given the tool has 7 parameters and an output schema. It sacrifices clarity for brevity.

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?

Despite having an output schema, the description fails to address the purpose of most parameters or provide context for when the tool is used. It is incomplete for an agent to make informed decisions.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain any of the 7 parameters. The agent has no clue what fields like 'session_id', 'completed_work', or 'remaining_work' mean or how they affect behavior.

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

Purpose4/5

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

The description clearly states the tool ends a session and generates an automatic summary. However, it does not explicitly differentiate from sibling tools like 'capture_project_memory' or 'save_checkpoint' that also involve session-related actions.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool vs alternatives. It does not mention prerequisites, conditions, or scenarios where this tool is appropriate or not.

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

export_memory_bundleC

Exporta memoria a JSON o Markdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
owner_idNo
formatNojson

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description fails to disclose behavioral traits such as read-only nature, side effects, or authorization needs. It only mentions output formats but not whether the export is destructive or what happens without parameters.

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?

The description is extremely concise (one sentence), but this brevity sacrifices necessary detail. While efficient, it under-specifies the tool's capabilities and constraints.

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

Completeness2/5

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

Given three optional parameters and no annotations, the description is too sparse. It does not cover parameter meanings, output details, or usage context, making it incomplete for effective tool selection and invocation.

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

Parameters2/5

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

The description adds minimal value beyond the schema. It specifies the format options (JSON or Markdown) which are not enumerated in the schema, but does not explain the purpose of project_id or owner_id parameters, leaving their semantics unclear.

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

Purpose4/5

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

The description clearly states the tool exports memory to JSON or Markdown, using a specific verb and resource. However, it does not elaborate on what a 'memory bundle' is or differentiate from similar tools like import_memory_bundle or capture_project_memory.

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?

No guidance on when to use this tool versus alternatives. There is no mention of prerequisites, context, or when export is appropriate compared to other memory-related tools in the sibling list.

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

get_active_warningsC

Lista advertencias activas.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
owner_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, and the description only mentions 'active warnings'. It does not disclose whether the operation is read-only, if it returns all warnings or paginated, or any other behavioral traits beyond the minimal listing.

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?

The description is very short (three words), which is concise but lacks structure. It is front-loaded but may be too minimal to be helpful.

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

Completeness2/5

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

Given that there is an output schema (unknown content) and two optional parameters, the description provides insufficient context. It does not cover return values, parameter usage, or typical use cases.

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

Parameters1/5

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

Schema description coverage is 0%, and the tool description does not explain the meaning or effect of the two parameters (project_id, owner_id). The agent is left to infer from parameter names alone.

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 'List active warnings' clearly states the action (list) and resource (active warnings). However, it does not differentiate from sibling tools like add_warning, and the Spanish language might be confusing for English-oriented agents.

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?

No guidance on when to use this tool versus alternatives (e.g., add_warning). There is no context about prerequisites or exclusions.

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

get_interface_analyticsD

Resume uso por interfaz.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
owner_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior1/5

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

With no annotations, the description must disclose behavioral traits. It does not state that this is a read operation, mention any side effects, authentication needs, or limits. The tool's behavior is opaque.

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

Conciseness2/5

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

The description is extremely short (three words), which is under-specification rather than efficient conciseness. It lacks front-loaded essential information and wastes the opportunity to clarify the tool's function.

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

Completeness1/5

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

Given the tool has two optional parameters and an output schema, the description is severely incomplete. It does not explain what 'interface analytics' entails, what data is returned, or how the parameters affect results.

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

Parameters1/5

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

Schema description coverage is 0%, yet the description adds no meaning to the two parameters (project_id, owner_id). Their purpose and required format are unexplained, forcing reliance on the parameter names alone.

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 'Resume uso por interfaz' is Spanish for 'Resume usage by interface,' which vaguely suggests retrieving usage summaries per interface but lacks specificity. It fails to distinguish this tool from siblings like get_project_timeline or get_active_warnings, and the verb 'resume' is ambiguous.

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

Usage Guidelines1/5

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

No guidance is provided on when to use this tool versus alternatives. No prerequisites, context, or exclusions are mentioned, leaving the agent without direction.

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

get_project_timelineC

Devuelve la linea de tiempo del proyecto.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
owner_idNo
limitNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior2/5

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

No annotations are present, so the description carries the full burden. It only states that the tool returns a timeline, but does not disclose whether it is read-only, requires authentication, or has any side effects or rate limits.

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

Conciseness2/5

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

The description is extremely brief (one sentence of 6 words), which sacrifices necessary detail for brevity. It is under-specified rather than effectively concise.

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

Completeness1/5

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

For a tool with three optional parameters and no schema descriptions, the description is grossly incomplete. It fails to explain the return value, filtering logic, or any constraints on parameters, leaving the agent with insufficient information to use the tool correctly.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain the meaning or usage of the three parameters (project_id, owner_id, limit). The agent has no clues about how to use them effectively.

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 'Devuelve la línea de tiempo del proyecto' clearly states the tool returns a project timeline, which is a specific verb-resource pair. However, it lacks detail on what the timeline contains, which could help distinguish it from other tools like list_projects.

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?

No guidance is provided about when to use this tool vs alternatives such as list_projects or search_semantic_memory. The description does not indicate any specific context or prerequisites.

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

import_memory_bundleC

Importa memoria desde JSON o diccionario.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYes
owner_idNo
project_idNo
mergeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations provided, so the description bears full burden. It only says 'imports memory' without describing side effects (overwrite/merge), authorization needs, or what happens to existing data. The 'merge' parameter's behavior is not explained.

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?

The description is a single short sentence, achieving conciseness. However, it sacrifices substance for brevity, lacking essential details. It is minimally viable but not well-structured.

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

Completeness1/5

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

Given 4 parameters, 0% schema coverage, no annotations, and an output schema, the description fails to cover almost everything. No explanation of output, no parameter details, no usage context. Very incomplete.

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

Parameters1/5

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

Schema description coverage is 0%, yet the description adds no information about parameters. It loosely hints at the payload format ('JSON or dictionary') but does not explain owner_id, project_id, or merge semantics. Completely inadequate.

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

Purpose4/5

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

The description clearly states the action (import) and the resource (memory) and the source format (JSON or dictionary). It distinguishes from sibling export_memory_bundle, but could be more specific about what 'memory' refers to in the context of this system.

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?

No guidance on when to use this tool vs alternatives like capture_project_memory or load_unified_context. No mention of prerequisites or contexts where import is appropriate.

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

list_projectsC

Lista proyectos del owner o workspace actual.

ParametersJSON Schema
NameRequiredDescriptionDefault
owner_idNo
workspace_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

No annotations provided, so the description must carry the burden. It does not disclose any behavioral traits such as pagination, sorting, filtering, or authentication requirements. The phrase 'current owner or workspace' is ambiguous given the optional parameters.

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?

The description is a single short sentence with no wasted words, but it lacks structure for a tool with two parameters and a need for clarity.

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

Completeness2/5

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

Given the output schema exists, return values are covered, but the description fails to specify filtering behavior, scope definition, or how it interacts with the context signals. The tool is too minimally described for effective use among many sibling tools.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not add any meaning to the parameters. It does not explain the role of 'owner_id' and 'workspace_id' or how they relate to 'current'.

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

Purpose4/5

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

The description clearly states it lists projects and specifies the scope (current owner or workspace). This provides a specific verb and resource, but does not differentiate from siblings like 'create_project' or 'resolve_project'.

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?

No guidance on when to use this tool versus alternatives like 'search_semantic_memory' or 'get_project_timeline'. No exclusions or contextual hints.

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

load_unified_contextD

Carga contexto persistente optimizado.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
interfaceNo
owner_idNo
repo_pathNo
workspace_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.5/5.0
Behavior1/5

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

No annotations provided and the description does not disclose any behavioral traits such as mutability, side effects, or access requirements. The agent has no information about read/write behavior.

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

Conciseness2/5

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

The description is very short but not effectively concise—it omits critical details given the tool's 5 parameters. It is under-specified rather than efficiently stated.

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

Completeness1/5

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

Given the complexity (5 parameters, no schema descriptions, no annotation support), the description is completely inadequate. It does not explain when, why, or how to use the tool.

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

Parameters1/5

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

The description adds no meaning beyond the schema's parameter names. With 0% schema description coverage, the agent has no clue what project_id, interface, etc., actually control.

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 states 'load optimized persistent context' but is vague about what kind of context and when to use it. It does not differentiate from sibling tools like search_semantic_memory or capture_project_memory.

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?

No guidance on when to use this tool versus alternatives. The description lacks any context about prerequisites or typical use cases.

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

resolve_projectD

Resuelve o crea un proyecto automaticamente.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
owner_idNo
repo_pathNo
repo_urlNo
project_nameNo
project_slugNo
workspace_idNo
workspace_nameNo
create_if_missingNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.9/5.0
Behavior2/5

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

Without annotations, the description must disclose behaviors. It only states 'resolve or create automatically' but omits side effects, permissions, or whether the tool modifies state.

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?

A single short sentence is concise, but it sacrifices clarity and completeness. It is not structured for quick scanning of key points.

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

Completeness1/5

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

With 9 parameters, no schema descriptions, no annotations, and an output schema not described, the description is severely incomplete. It does not explain the resolution logic or return value.

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

Parameters1/5

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

Schema description coverage is 0%, and the description provides zero explanation of the 9 parameters. The user cannot infer how to use fields like project_id, owner_id, or repo_path.

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 'Resuelve o crea un proyecto automaticamente' is vague: 'resolve' is ambiguous and does not specify the tool's role. It fails to distinguish from siblings like create_project or list_projects.

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?

No guidance on when to use this tool versus alternatives. Missing context such as 'use when you have partial project info' or 'prefer create_project for explicit creation'.

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

resume_projectC

Devuelve un resumen listo para retomar el proyecto.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
owner_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations provided, the description must disclose behavioral traits. It only states the tool returns a summary, but does not indicate if it is read-only, requires special permissions, or has side effects. The read nature is implied but not explicit.

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?

The description is very concise (single sentence) and front-loaded with the purpose. However, given the tool has two parameters and an output schema, a slightly longer description with parameter hints would still be concise and more helpful.

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?

Although an output schema exists, the description does not explain anything about input parameters, prerequisites, or what 'ready to resume' means in context. The tool's role in the project management workflow is unclear, leaving the agent without enough context to decide when to invoke it.

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

Parameters1/5

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

The input schema has zero description coverage, and the tool description does not explain the meaning of project_id or owner_id, how they interact, or which is needed. The description adds no value beyond what the schema provides.

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

Purpose4/5

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

The description clearly states the tool returns a summary ready to resume a project, using a specific verb 'returns' and a specific resource 'summary for a project'. It is distinct from sibling tools like create_project or list_projects, but does not explicitly differentiate itself.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, such as when a user is returning to a project after a break or needs a quick overview. No prerequisites or contextual triggers are mentioned.

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

save_checkpointC

Guarda checkpoints de arquitectura y estado.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
functional_stateYes
project_idNo
owner_idNo
architecture_summaryNo
blockersNo
next_stepsNo
tagsNo
embeddingNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description must convey behavioral traits. It does not disclose side effects, permissions, overwrite behavior, or what 'state' entails. This is insufficient for safe invocation.

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?

The description is a single sentence, achieving conciseness. However, its brevity sacrifices necessary detail, making it less effective despite being short.

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

Completeness1/5

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

Given 9 parameters, 2 required, and no annotations or schema descriptions, the description is severely incomplete. It does not cover parameter roles, return values, or use cases, leaving critical gaps for correct usage.

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

Parameters2/5

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

Schema description coverage is 0%, yet the description adds no meaning to any of the 9 parameters. Parameter names like 'functional_state' and 'architecture_summary' are self-explanatory, but the description fails to clarify or extend beyond them.

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

Purpose3/5

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

The description 'Guarda checkpoints de arquitectura y estado' indicates saving architecture and state checkpoints, which is a clear verb-resource pair. However, it lacks specificity to distinguish from sibling tools like save_file_memory or save_prompt_pattern, which also save state.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, context, or exclusions, leaving the agent without decision criteria.

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

save_cross_interface_decisionC

Guarda decisiones compartidas entre interfaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idNo
summaryNo
detailsNo
interfaceNo
decision_typeNogeneral
owner_idNo
metadataNo
repo_pathNo
file_pathsNo
embeddingNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior2/5

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

No annotations are provided, so the description is the sole source of behavioral info. It only states the basic save action, omitting critical details like idempotency, overwrite behavior, or side effects.

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

Conciseness2/5

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

The description is extremely concise (one sentence), but the tool's complexity (10 parameters) demands more structured information. This brevity constitutes under-specification rather than effective conciseness.

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

Completeness1/5

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

Given the tool's high parameter count, absent annotations, and no output schema explanation, the description is severely incomplete. It fails to provide necessary context for proper invocation.

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

Parameters1/5

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

Schema description coverage is 0%, yet the description adds no parameter-level details. The 10 parameters are completely undocumented, making it impossible for an agent to use correctly without external knowledge.

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 'Guarda decisiones compartidas entre interfaces' clearly indicates the tool saves decisions shared across interfaces. It uses a specific verb and resource, and distinguishes from siblings like save_checkpoint or save_prompt_pattern. However, it lacks specificity on what constitutes a 'decision' and 'interfaces'.

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?

No guidance is provided on when to use this tool versus alternatives. With many sibling tools handling memory and state, clear usage criteria are missing.

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

save_file_memoryC

Guarda memoria por archivo y relaciones.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes
summaryYes
project_idNo
owner_idNo
dependenciesNo
symbolsNo
file_roleNomodule
importanceNomedium
embeddingNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only states 'save' without explaining side effects, permissions, or reversibility. There is no mention of what happens on save, conflicts, or whether existing data is overwritten.

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

Conciseness2/5

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

The description is a single short sentence, which is overly minimal for a tool with 9 parameters and complex semantics. While concise, it sacrifices informativeness, making it under-specified rather than efficiently structured.

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

Completeness1/5

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

Given the tool's complexity (9 parameters, mutation, output schema exists), the description is grossly incomplete. It does not explain what 'memory' entails, how relationships are encoded, or what the output represents. The presence of an output schema does not absolve the description from providing context.

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

Parameters1/5

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

Schema description coverage is 0%, yet the tool description provides no explanations for any of the 9 parameters. The required 'file_path' and 'summary' are not elaborated, nor are optional ones like 'dependencies', 'symbols', or 'embedding'. This completely fails to add meaning beyond the schema.

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

Purpose3/5

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

The description 'Guarda memoria por archivo y relaciones' indicates saving memory by file and relationships, which is a clear verb-resource pairing but lacks specificity. It does not differentiate from sibling tools like 'capture_project_memory' or 'save_cross_interface_decision', leading to vagueness.

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?

No guidance is provided on when to use this tool versus alternatives. The description does not include any context about prerequisites, exclusions, or which scenarios are appropriate, leaving the agent without direction.

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

save_prompt_patternC

Guarda prompts utiles y patrones de respuesta.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
promptYes
project_idNo
owner_idNo
categoryNogeneral
usage_notesNo
response_styleNo
embeddingNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral disclosure. It only states 'saves' but does not mention whether it overwrites existing patterns, requires authentication, or has side effects. This is insufficient for a mutation tool.

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

Conciseness2/5

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

The description is extremely short (one sentence), which makes it concise but overly terse for a tool with 8 parameters. It sacrifices necessary detail for brevity, leaving many aspects unexplained.

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

Completeness2/5

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

Given the tool's complexity and the presence of an output schema, the description should at least outline what happens when a pattern is saved. It lacks information about persistence, scope, or how patterns are retrieved later, which is crucial for an agent invoking this tool.

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

Parameters1/5

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

The schema has 8 parameters with 0% description coverage, and the tool description provides no additional meaning for any parameter. It does not explain the purpose of fields like 'project_id', 'owner_id', or 'embedding'. The description fails to compensate for the schema's lack of context.

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

Purpose4/5

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

The description clearly states the tool saves useful prompts and response patterns, which is a specific verb-resource pair. However, it does not explicitly differentiate from sibling tools like save_file_memory or save_cross_interface_decision, though the focus on 'prompts' and 'patrones de respuesta' provides some implicit distinction.

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?

No guidance is provided on when to use this tool versus alternatives. There is no indication of prerequisites, scenarios, or when not to use it. For a tool that saves structured data, context on usage context is missing.

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

search_semantic_memoryC

Busca memoria por significado o texto.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
project_idNo
owner_idNo
query_embeddingNo
limitNo
source_typesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden for behavioral disclosure. It only states a search operation, omitting details like whether it is read-only, permission requirements, rate limits, or side effects. The existence of an output schema partially mitigates this.

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?

The description is a single, short sentence that wastes no words. However, it is under-specified for the tool's complexity, and a slightly longer description would improve clarity without sacrificing conciseness.

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

Completeness2/5

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

Given the tool has 6 parameters (1 required) and an output schema, the description is insufficiently complete. It fails to explain the retrieval behavior, result format, or how parameters like 'limit' or 'project_id' affect the search.

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

Parameters1/5

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

Schema description coverage is 0%, and the description adds no meaning to the parameters. It does not explain the role of 'query_embedding,' 'source_types,' or others, leaving the agent to infer from parameter names alone.

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 clear action ('search memory') and resource ('memoria') with the method ('por significado o texto'). While it is concise, it effectively conveys the core function. No sibling differentiation is needed as sibling tools are distinct.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. Context signals and sibling tools show no similar tools, but the description itself offers no usage direction.

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

sync_session_stateD

Sincroniza el estado de sesion.

ParametersJSON Schema
NameRequiredDescriptionDefault
session_idNo
project_idNo
stateNo
owner_idNo
summaryNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.8/5.0
Behavior2/5

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

With no annotations and a minimal description, behavioral details such as side effects, overwriting behavior, or required prior state are entirely absent.

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

Conciseness2/5

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

While brief, the description is under-specified rather than concise; it fails to provide essential information efficiently.

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

Completeness1/5

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

Given five parameters and a sync operation, the description lacks any context on preconditions, effects, output, or interaction with other tools, making it incomplete.

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

Parameters1/5

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

Schema description coverage is 0%, and the description adds no meaning to the five parameters (session_id, project_id, state, owner_id, summary), leaving their purposes unclear.

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 'Sincroniza el estado de sesion' merely restates the tool name in Spanish without specifying what synchronizing entails or distinguishing it from sibling tools like create_session or end_session.

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?

No guidance is given on when to use this tool versus alternatives; the description lacks context about prerequisites or when synchronization is appropriate.

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

update_task_statusC

Crea o actualiza tareas del proyecto.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idNo
project_idNo
statusNopending
owner_idNo
titleNo
priorityNomedium
detailsNo
repo_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations provided. Description only says 'create or update', implying mutation but not disclosing side effects, auth requirements, or what happens to existing data. For a tool with 8 optional parameters, this is insufficient.

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?

Single sentence is concise but under-specified. It is front-loaded, but the brevity sacrifices necessary detail, making it less useful than a longer, more informative description.

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?

Despite having 8 parameters and no annotations, the description provides only a minimal function statement. With no guidance on output or parameter interactions, the description is incomplete for reliable agent usage.

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

Parameters2/5

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

Schema description coverage is 0%. Description adds no explanations for any of the 8 parameters. Parameter names (task_id, status, etc.) are somewhat self-explanatory, but the description fails to compensate for the complete lack of schema documentation.

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

Purpose3/5

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

Description states 'crea o actualiza tareas del proyecto' (create or update project tasks), but tool name is 'update_task_status', which suggests only status updates. This inconsistency reduces clarity. It does identify the verb and resource, but the scope mismatch limits effectiveness.

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?

No guidance on when to use this tool versus alternatives. Siblings include create_project, but no differentiation is provided. Context signals show 8 parameters with zero required, yet no instructions on typical usage.

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. Dates show when Glama detected each change.

  1. 22 tool updatesv0.1.0
    • First observedadd_warning
    • First observedapply_retention_policy
    • First observedcapture_project_memory
    • First observedcreate_project
    • First observedcreate_session
    • First observedend_session
    • First observedexport_memory_bundle
    • First observedget_active_warnings
    • First observedget_interface_analytics
    • First observedget_project_timeline
    • First observedimport_memory_bundle
    • First observedlist_projects
    • First observedload_unified_context
    • First observedresolve_project
    • First observedresume_project
    • First observedsave_checkpoint
    • First observedsave_cross_interface_decision
    • First observedsave_file_memory
    • First observedsave_prompt_pattern
    • First observedsearch_semantic_memory
    • First observedsync_session_state
    • First observedupdate_task_status

TDQS

C2.6/5.0
Disambiguation4/5

Most tools are clearly distinct, but 'resolve_project' and 'create_project' have overlapping functionality (resolve auto-creates), and several save tools (capture_project_memory, save_file_memory, etc.) could be confused without reading descriptions.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with underscores, using clear Spanish verbs and nouns. No mixing of conventions or unclear abbreviations.

Tool Count4/5

22 tools is on the high end of the acceptable range. Each tool has a defined purpose, but the count feels slightly heavy for a memory management system. Could be streamlined by merging some similar save functions.

Completeness4/5

Covers core operations: create/list/resume projects, session management, memory storage, search, import/export, and warnings. Minor gaps: no explicit delete or update tools for projects or memory items, but the existing tools cover most workflows.

Maintenance

ActivityMaintained
ResponsivenessWithin a week

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Persistent cloud memory for AI coding assistants. 28 MCP tools for semantic search, auto-learning, task tracking, correction patterns, knowledge graphs, and session replay across Claude Code, Cursor, Windsurf, Cline, and any MCP client. Encrypted at rest. Team shared memory with author attribution.
    35
    254
    7
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server that stores project memory in Supabase, allowing AI tools to persist context, notes, and decisions across sessions. Enables Claude Code, Codex, and similar assistants to maintain long-term project continuity through persistent memory storage.
    2
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI coding agents to maintain persistent, cross-session memory of codebase architecture, naming conventions, and decisions through MCP tools. Eliminates repetitive project re-explanation by automatically injecting stored context into every session with local-first SQLite storage and optional team sharing capabilities.
    4
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Persistent memory for AI coding agents. Enables agents to save and recall decisions, patterns, bugs, and context across sessions via an MCP server with local SQLite storage.
    12
    2
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dannymaaz/memory-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server