Skip to main content
Glama

Projects

bm_project

List, create, and inspect recent changes in Basic Memory projects across workspaces, with options to set a default project and page through notes, observations, or relations.

Instructions

Basic Memory projects. command: list (projects, grouped by workspace); create (name, path, optional set_default, workspace); recent (what changed lately: since, items, paging; project picks the project, else the default project, and with no default every project).

Input Schema

NameRequiredDescriptionDefault
nameNoFor create: the new project's name.
pageNoPage number.
pathNoFor create: the folder that holds the project's notes.
itemsNoWhat to return: notes, observations, relations, or a mix. Default: notes.
sinceNoHow far back to look: '7d', '24h', '2 days ago', 'last week', or a date. Windows shorter than one day are widened to one day.7d
commandYesWhat to do.
projectNoProject name, 'workspace/project', or project external id. Omit to use the default project.
page_sizeNoResults per page (1-100).
workspaceNoIn Cloud: the workspace slug, name or id that holds the project.
set_defaultNoFor create: make the new project the default.
output_formatNotext

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.24.1

TDQS

A3.6/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false, so the safety profile is already carried by structured data. The description adds nothing about what `create` actually does to the filesystem — whether `path` must already exist, whether a directory is made, what happens on name collision, or whether creation can be undone. Since it is a non-destructive but non-read-only and non-idempotent tool, those omissions matter somewhat, but no contradiction exists with the annotations.

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?

Everything is packed into a single front-loaded block with the command enum stated first, and no sentence is filler. The heavy nested-parenthesis style is dense but still parseable, costing a small amount of readability rather than correctness.

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 the 11-parameter surface is large but mostly routed by the description. What remains thin is the create path semantics and the difference from the sibling project tools; both are real but secondary gaps rather than blockers to a correct call.

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 91%, so the baseline is 3, and the description earns a step above it by mapping parameters to commands (name/path/set_default/workspace belong to create; since/items/paging/project to recent) and by spelling out the `project` resolution chain: explicit project, else default project, else all projects. That cross-parameter precedence is not visible in the schema 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 enumerates the three multiplexed operations (list, create, recent) and the resource is unambiguous: projects, grouped by workspace. An agent can tell what each command does without opening the schema. However, it never distinguishes this tool from overlapping siblings like list_memory_projects, create_memory_project, or recent_activity, so the agent must guess which entry point is canonical.

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 through per-command parameter mapping (list groups by workspace; recent falls back to the default project, or every project if none is set). That last clause is the only real selection rule given. There is no explicit when-to-use-this-instead-of guidance despite three sibling tools that appear to cover the same three operations.

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