Skip to main content
Glama

Workspace Sync

workspace_sync
Read-only

Load the L0 blackboard map without raw document/state payloads.

detail (default summary): short task/doc/slot cards and the newest 20
timeline entries; standard keeps every field with 50 entries; full is the
whole map (300 entries).

For humans and cold starts. Agents normally subscribe + poll_events instead.
Every response carries sync_cursor (an event cursor). since=<sync_cursor or a
poll_events cursor> returns only changes: each changed document once, at
its latest version, as {op: upsert|archive|restore|purge, ...}.

Returns workspace counts, task cards (IDs/status/role/lease), an ``outputs``
list with completed task artifact URIs and handoff summaries, slot keys and
versions with human-lock flags, the document tree and the current role's
permissions. Use focus_keys to narrow to specific task/doc/slot keys before
loading L1/L2. compact (true unless detail=full) gives a lower-token L0
view; it trims timeline events to the latest 20 summaries (use poll_events
for event payloads). Pass compact=false or detail=full for the full view.

Pass since=<next_cursor from a previous call> for incremental sync:
tasks/documents/slots and timeline contain only changes after the cursor,
and namespace_counts gives per-namespace totals. A null/omitted since does
a full map. The response always includes next_cursor for the next call.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "workspace_sync"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNo
sinceNo
detailNosummary
compactNo
namespaceNo
focus_keysNo
namespacesNo
page_cursorNo
include_slotsNo
task_statusesNo
include_taintedNo
include_archivedNo
include_unverifiedNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already carry the safety profile (readOnlyHint=true, destructiveHint=false), and the description adds substantial behavior: what the response contains (counts, task cards, outputs list, slot versions, permissions), that every response carries sync_cursor/next_cursor, and that compact trims timeline events. It stops short of stating size limits or how pagination via page_cursor/limit interacts with the map.

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?

Front-loaded with purpose and audience, and organized into logical paragraphs, but it repeats itself: compact is described twice ('compact (true unless detail=full)' then 'Pass compact=false or detail=full'), and the since/null-since behavior is stated twice. These redundancies could be collapsed without losing information.

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

Completeness3/5

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

For a 13-parameter tool with an output schema, the description covers the sync/cursor model and detail tiers well, and the output schema relieves it of explaining return shapes (though it does so anyway). What is missing is coverage of the filter and pagination parameters, which an agent would otherwise have to guess at from bare names.

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 0% across 13 parameters, so the description must carry the load; it explains the highest-value ones richly (detail levels with concrete entry counts, since semantics with upsert/archive/restore/purge ops, compact's default and effect, focus_keys' narrowing purpose). However, nine parameters (limit, namespace, namespaces, page_cursor, include_slots, task_statuses, include_tainted, include_archived, include_unverified) receive no mention at all, leaving a real gap.

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 and resource ('Load the L0 blackboard map without raw document/state payloads') and immediately delimits it from the sibling it is not ('Agents normally subscribe + poll_events instead'). An agent can distinguish this from poll_events, query_workspace, or list_documents without opening any 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?

Explicitly names the audience ('For humans and cold starts') and the preferred alternative for agents ('subscribe + poll_events instead'), plus the condition for incremental use ('Pass since=<next_cursor from a previous call>'). When-to-use, when-not-to-use, and alternatives are all present.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.