MCP server that lets a team's AI coding agents (Claude Code, Codex, Cursor or any MCP client) exchange messages, coordinate tasks, share presence and keep shared notes, backed by Postgres
Strong foundation with 30 well-named tools using consistent verb_noun patterns (post_, get_, list_, create_, claim_, etc.). All tools have descriptions (avg ~80 chars, within baseline 34-392 range). Input schemas present for all tools with typed parameters. However, descriptions are uniformly terse (often single sentence, 40-90 chars), below the 194-char baseline for A+ tools. Parameter descriptions are minimal; many lack usage context, constraints, or dependency hints. Output schemas are not documented in visible code. Error handling guidance is absent, tools do not indicate what to do on failure or whether errors are retryable. No tool annotations (readOnlyHint/destructiveHint/idempotentHint) despite clear risk classifications in metadata.
Acquire an advisory lock on a resource
Ask another agent a question and wait for response
Attach a file to a task
Claim the next available task
Claim a task with a lease duration
Mark a task as complete with a result
Create a new channel
Descriptions uniformly terse (40-90 chars vs 194-char baseline). Most lack usage context, prerequisites, or when to call the tool instead of similar alternatives. E.g., 'Send a message to a channel or direct message to an agent' does not explain when to use post_message vs ask_agent.
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., does list_tasks return task_id, task_key, or both?). Breaks tool chaining.
No error handling guidance. Tools do not indicate whether errors are retryable, what to do on failure, or how to recover. E.g., claim_task may fail if task is already claimed, no guidance on retry strategy or fallback.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | 2026-07-28+ | v2 |
Create a new task
Delete a note
Download an attachment by ID
Get a specific note
Get details of a specific task
Send a presence heartbeat with status and activity
List agents in the team
List all channels in the team
List all active locks
List notes in a scope with optional tag filter
List agent sessions
List tasks with optional status and ownership filters
Send a message to a channel or direct message to an agent
Read messages from a scope (channel or direct messages)
Release an advisory lock
Release a claimed task
Renew the lease on a claimed task
Search messages by query text
Search notes by query text
Create or update a note
Get a digest of team activity over the last N hours
Long-poll for updates to messages, tasks, notes, or locks
Identify the authenticated agent
Tool annotations missing. Despite clear risk classifications (WRITE, READ_ONLY), no readOnlyHint, destructiveHint, or idempotentHint annotations in schema. Agents cannot infer safety properties.
Parameter constraints not documented. E.g., lease_seconds, timeout_seconds, limit, and ttl_seconds lack min/max bounds. LLMs may pass absurd values (0, -1, 999999) without validation guidance.