VibeTape MCP Server
Enables integration with CrewAI for multi-agent orchestration, including task creation, assignment, and context sharing.
Automatically captures Git context (branch, commit, diff) for development moments, enabling timeline tracking and version-aware context.
Supports LangGraph-compatible handoffs and payloads for seamless agent-to-agent task transfer within LangGraph workflows.
Uses OpenAI embeddings for semantic search and AI-generated RETEX cards, enhancing context retrieval and insights.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@VibeTape MCP Servermark this moment: 'fixed login timeout bug' as a win with tags: auth, performance"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ποΈ VibeTape MCP Server
Record the vibe of your build β A revolutionary Model Context Protocol (MCP) server that captures key development moments, enables multi-agent traceability, provides intelligent context curation, and facilitates seamless agent-to-agent handoffs.
π What is VibeTape?
VibeTape transforms your development workflow into a proactive context management system. Beyond capturing moments, it provides multi-agent coordination, intelligent context curation, and LangGraph-compatible handoffs that work with any MCP-compatible AI client.
Perfect for:
π€ Multi-agent systems that need shared context and traceability
π― Solo developers who want to remember past solutions
π₯ Teams who need shared knowledge and context
π AI orchestration frameworks (LangGraph, CrewAI, AutoGen)
π Technical leads building institutional knowledge
Related MCP server: personal-kg-mcp
β¨ Key Features
π€ Multi-Agent Traceability (NEW v0.4.0)
Actor management β Register and track humans and AI agents
Task lifecycle β Create, assign, and hand off tasks between agents
Agent analytics β Success rates, activity patterns, performance metrics
Temporal tracking β Know when facts became true and when they were superseded
π§ Intelligent Context Curation (NEW v0.4.0)
RankRAG-style scoring β Relevance scoring with weighted factors
Context window optimization β Fit the best context within token budgets
Agent needs prediction β Anticipate what context an agent will need
Smart moment selection β Balance relevance, recency, and signal quality
π Agent-to-Agent Handoffs (NEW v0.4.0)
LangGraph-compatible payloads β Direct integration with agent frameworks
RETEX-aware handoffs β Include relevant lessons learned
Risk warnings β Highlight potential issues for receiving agents
Task continuity β Seamless work transfer between agents
π Context Handoff System (v0.3.0)
Transition cards β Generate compact context summaries (350 tokens)
Smart ranking β Intelligent moment prioritization by recency, type, and impact
Cross-session continuity β Never lose context between AI sessions
Proactive suggestions β Auto-detect when context window is saturating
π§Ή Intelligent Denoising (v0.3.0)
Noise filtering β Auto-detect and filter trivial moments
Duplicate merging β Consolidate similar entries intelligently
Signal scoring β Quality metrics for moment relevance (0-1 scale)
π― Smart Moment Capture
Wins, fails, decisions, notes β capture what matters
Git context β automatic branch, commit, and diff tracking
Actor attribution β Know who (human or AI) created each moment
π Intelligent Search
Semantic search with OpenAI embeddings (TF-IDF fallback)
Advanced filtering by tags, dates, types, and regex
Relation mapping β link related moments (
causes,solves,relates,supersedes)
π§ AI-Powered Insights
RETEX cards β AI-generated prescriptive rules from your experiences
Task-aware RETEX β Get relevant lessons for specific tasks
Pattern detection β find recurring issues automatically
πββοΈ Quick Start
1. Install
git clone https://github.com/sambaleuk/Vibetape-MCP-Server.git
cd Vibetape-MCP-Server
npm install
npm run build2. Configure Your AI Client
VibeTape works with any MCP-compatible AI client:
π€ Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"vibetape": {
"command": "node",
"args": ["/absolute/path/to/Vibetape-MCP-Server/dist/server.js"],
"cwd": "/absolute/path/to/Vibetape-MCP-Server",
"env": {
"OPENAI_API_KEY": "your-openai-key-here"
}
}
}
}π» Cursor IDE
Add to your ~/.cursor/mcp.json:
{
"vibetape": {
"command": "node",
"args": ["--loader", "ts-node/esm", "src/server.ts"],
"cwd": "/absolute/path/to/Vibetape-MCP-Server",
"env": {
"OPENAI_API_KEY": "your-openai-key-here"
}
}
}π§ Continue.dev / Other MCP Clients
VibeTape implements the full MCP specification and works with any compliant client.
3. Start Using
Restart your AI client and start capturing moments:
Hey AI, mark this moment: "Successfully implemented Redis caching" as a win with tags: api, performance4. Multi-Agent Example (v0.4.0)
# Register an agent
register_actor with id: "code_reviewer", type: "agent", name: "Code Reviewer"
# Create a task
create_task with title: "Review authentication module", assigned_to: "code_reviewer"
# Agent captures moments linked to the task
mark_moment with title: "Found SQL injection vulnerability", task_id: "task_xyz"
# Hand off to another agent
create_handoff_for_agent with task_id: "task_xyz", from_agent: "code_reviewer", to_agent: "security_fixer"π οΈ Available Tools
π€ Multi-Agent Tools (NEW v0.4.0)
register_actorβ Register a human or AI agentget_actorβ Get actor details and capabilitieslist_actorsβ List all registered actorsget_actor_statsβ Get performance statistics for an actorcreate_taskβ Create a new task with assignmentupdate_taskβ Update task status and outcomelist_tasksβ List tasks with filtering optionsget_task_contextβ Get all moments related to a task
π§ Context Intelligence Tools (NEW v0.4.0)
context_relevance_scoreβ Calculate RankRAG-style relevance for momentsevaluate_context_windowβ Optimize context selection within token budgetpredict_agent_needsβ Predict what context an agent will needget_retex_for_taskβ Get relevant RETEX cards for a taskcreate_handoff_for_agentβ Create LangGraph-compatible handoff payload
π Context Handoff Tools (v0.3.0)
generate_context_handoffβ Create compact transition cards (350 tokens)suggest_transition_cardβ Auto-suggest handoff when context saturatessweep_noiseβ Intelligent denoising of trivial/duplicate moments
Core Tools
mark_momentβ Capture key development moments (now with actor_id, task_id)search_momentsβ Find similar past experienceslist_momentsβ Browse recent capturesmake_retexβ Generate AI prescriptive cardsexport_timelineβ Day-by-day development timeline
Advanced Tools
link_momentsβ Create relationships between momentssupersede_momentβ Mark a moment as superseded by another (temporal tracking)comment_momentβ Add collaborative annotationssearch_moments_advancedβ Multi-criteria searchstats_overviewβ Development pattern analytics
π Resources
π€ Agent Resources (NEW v0.4.0)
actor://{id}β Actor details with stats (JSON)task://{id}β Task details with related moments (JSON)
π Context Handoff Resources
handoff://{id}β Transition card for cross-session continuity (Markdown)
Core Resources
moment://{id}β Individual moment details (JSON)timeline://{day}β Daily timeline (Markdown)retex://{id}β AI-generated prescriptive card (JSON)graph://{id}β Moment relationship graph (JSON)
π§ Configuration
Environment Variables
# Optional: OpenAI for semantic search and RETEX generation
OPENAI_API_KEY=sk-your-key-here
# Optional: Custom storage location (default: ~/.vibetape)
VIBETAPE_HOME=~/.vibetape
# Optional: Team collaboration directory
VIBETAPE_TEAM_DIR=~/your-team-repoWorks Without OpenAI
VibeTape gracefully degrades without OpenAI:
β TF-IDF semantic search (good for most cases)
β All multi-agent features work fully
β No AI-generated RETEX cards
ποΈ Architecture
VibeTape follows MCP (Model Context Protocol) standards and is designed for multi-agent orchestration:
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β MCP Clients βββββΊβ VibeTape MCP βββββΊβ Local Storage β
β Claude/Cursor/ β β Server β β ~/.vibetape β
β LangGraph/CrewAIβ β (v0.4.0) β β + Team Vault β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β β
β βΌ
β βββββββββββββββββββ
β β OpenAI API β
β β (optional) β
β βββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββ
β Multi-Agent Orchestration β
β βββββββββββ βββββββββββ βββββββββββ β
β β Agent A βββΊβ Handoff βββΊβ Agent B β β
β β(reviewer)β β Payload β β (fixer) β β
β βββββββββββ βββββββββββ βββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββAgent Handoff Flow (v0.4.0)
Agent A (Code Reviewer) VibeTape Agent B (Security Fixer)
β β β
βββΊ create_task βββββββββββΊβ β
βββΊ mark_moment (findings)ββΊβ β
β β β
βββΊ create_handoff_for_agentββΊβ β
β (LangGraph payload) β β
β β β
β β βββ read handoff βββ€
β β β
β βββΊ Full context βββββββΊβ
β + RETEX cards β
β + Risk warnings βπ Use Cases
Multi-Agent Development Pipeline
# Code reviewer agent finds issues
register_actor id: "reviewer", type: "agent"
create_task title: "Security audit of auth module"
mark_moment title: "Found 3 SQL injection vulnerabilities"
# Hand off to security agent
create_handoff_for_agent from: "reviewer", to: "security_fixer"
β Includes context, RETEX cards, risk warnings
# Security agent fixes and reports
update_task status: "completed", outcome: "success"Context-Aware Agent Routing
# Predict what context an agent needs
predict_agent_needs task_id: "xxx", actor_id: "debugger"
β Returns recommended moments, RETEX cards, warnings
# Evaluate optimal context window
evaluate_context_window task_id: "xxx", budget_tokens: 2000
β Returns ranked moments that fit the budgetCross-Session Continuity
# End of day in Claude Desktop
Generate handoff β Get compact transition card
# Next morning in Cursor IDE
Read handoff://{id} β Instantly resume with full contextπ Security & Privacy
π Local storage only β Data stays in
~/.vibetape/by defaultπ Read-only project access β Never modifies your code
π« No shell execution β Only safe Git read operations
π Minimal network β Only OpenAI API (optional)
π Environment variables β API keys never hardcoded
π Roadmap
π Future Features
SQLite backend β Better performance for large datasets
Web dashboard β Visual relationship graphs and analytics
Native LangGraph integration β Direct Command pattern support
VS Code extension β Native IDE integration
Export integrations β Notion, Obsidian, etc.
π€ Contributing
We welcome contributions! See CONTRIBUTING.md for guidelines.
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Acknowledgments
Built with Model Context Protocol (MCP) by Anthropic
Inspired by multi-agent orchestration frameworks (LangGraph, CrewAI)
Thanks to the open source community for amazing tools and libraries
Ready to orchestrate your AI agents? β Star this repo and start building!
Get Started β’ Join Discussions β’ Report Issues
Available Tools
29 toolsassign_taskC
Assign or handoff a task to another actor
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Task ID | |
| to_actor | Yes | Actor ID to assign to | |
| from_actor | No | Current actor (for handoff tracking) | |
| handoff_note | No | Note about the handoff |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavioral traits, but it only states the action. It does not mention side effects (e.g., whether the task's assignee changes, whether notifications are sent, or if from_actor is required for handoff tracking).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no redundant wording. It is front-loaded and easy to parse, though it could be more structured by separating 'assign' and 'handoff' scenarios.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters, no output schema, and no annotations, the one-line description is insufficient. It does not explain return values, prerequisites, or the difference between a simple assign and a handoff, leaving a significant information gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are already documented in the schema. The description adds no additional meaning beyond implying that 'to_actor' is the recipient of the handoff, which is already clear from the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Assign or handoff') with a resource ('a task') and target ('another actor'), clearly indicating the core function. It distinguishes from create_task and update_task by focusing on reassignment/handoff, though it doesn't explicitly differentiate from the similar-sounding create_handoff_for_agent sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 vs. alternatives like create_handoff_for_agent or update_task. The phrase 'Assign or handoff' implies a use case but provides no exclusions or context for choosing it over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
comment_momentB
Append a comment to a moment
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Moment ID to comment on | |
| text | Yes | Comment text | |
| author | No | Comment author |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full burden of behavioral disclosure. It only states 'append a comment' without mentioning side effects, whether the moment is modified, permission requirements, or the role of the optional 'author' parameter. This leaves significant behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. Every word earns its place, making it highly concise and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations, no output schema, and three parameters, the description is too sparse. It does not explain the return value, the behavior of the optional 'author' field, or how this tool fits into the wider context of moment management, leaving important gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter already described. The tool description adds no additional semantic meaning beyond what the schema provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Append a comment to a moment' uses a specific verb ('append') and clearly identifies the resource and action. It distinguishes this tool from sibling tools like list_moments, mark_moment, link_moments, none of which mention commenting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 for moments, the description does not explain scenarios where commenting is appropriate or when other tools like mark_moment or link_moments should be used instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
context_relevance_scoreC
Calculate RankRAG-style relevance score for a moment given a task context
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Optional semantic query for additional relevance weighting | |
| task_id | Yes | Task context for relevance calculation | |
| moment_id | Yes | Moment to score |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It states 'Calculate' but does not explain score range, meaning, side effects, read-only behavior, or the RankRAG-style algorithm referenced, leaving significant behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded, fluff-free sentence. It is efficient, though extremely terse, lacking contextual depth that could be added without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, but the description does not explain the return format or what the relevance score represents. For a scoring tool, this is a significant gap, making the description incomplete for an agent to anticipate results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter described in the schema, including the optional query. The description adds no parameter-specific meaning beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool calculates a relevance score for a moment given a task context, using a specific verb and resource. It is specific enough to be distinct from export/list tools, but it does not explicitly differentiate itself from similar analytical siblings like evaluate_context_window or predict_agent_needs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only implies usage when a moment and task context are available, but does not state context, preconditions, or exclusions relative to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_handoff_for_agentC
Create a LangGraph-compatible handoff payload for agent-to-agent transfer
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Task ID being handed off | |
| to_agent | Yes | Actor ID of target agent | |
| from_agent | Yes | Actor ID of source agent | |
| budget_tokens | No | Token budget for context (default: 500) | |
| include_retex | No | Include relevant RETEX (default: true) | |
| include_failures | No | Include recent failures (default: true) |
TDQS
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 only states what the tool creates, without mentioning side effects, return values, permissions, or any other behavioral traits. This is insufficient for a tool with no other behavioral metadata.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that immediately states the tool's purpose. It is front-loaded and contains no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the full parameter schema coverage, the description lacks essential context: no return value information, no explanation of how the handoff payload is used, and no differentiation from similar tools. Since there is no output schema, the description should have compensated with more detail, but it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all 6 parameters, so the schema itself fully documents parameter meanings. The description adds no additional parameter-level semantics, keeping the score at the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a LangGraph-compatible handoff payload for agent-to-agent transfer,' which clearly identifies the verb (create), resource (handoff payload), and scope (agent-to-agent transfer). However, it does not distinguish this tool from sibling 'generate_context_handoff', which appears to serve a similar purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like generate_context_handoff or suggest_transition_card. There are no usage contexts, exclusions, or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_taskB
Create a new task for tracking and agent assignment
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Task tags | |
| title | Yes | Task title | |
| priority | No | Priority level | |
| created_by | Yes | Actor ID who creates the task | |
| assigned_to | No | Actor ID to assign (optional) | |
| description | No | Detailed description | |
| parent_task | No | Parent task ID for hierarchy |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the action but does not disclose return value, permission requirements, potential side effects on duplicates, or validation behavior. For a mutation tool, this is a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the verb. Every word contributes to the overall meaning, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 7 parameters including hierarchy (parent_task) and assignment (assigned_to), yet the description only gives a high-level purpose. It does not explain the return value, the role of created_by, or the workflow context relative to update and assign tools. The absence of an output schema further increases the need for richer context, which is not met.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the baseline is 3. The description does not add extra semantics for specific parameters; however, 'agent assignment' loosely hints at the assigned_to field but without detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new task for tracking and agent assignment' uses a specific verb and resource, clearly distinguishing from siblings like update_task, list_tasks, and assign_task. The purpose of tracking and agent assignment adds context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for creating a new task, but does not explicitly mention when not to use it or compare with alternatives like update_task or assign_task. There is no direct exclusion or alternative guidance, only the inherent implication from the verb 'create'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluate_context_windowC
Evaluate and rank moments for optimal context injection within token budget
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Task to build context for | |
| strategy | No | Ranking strategy (default: balanced) | |
| budget_tokens | No | Token budget (default: 2000) | |
| exclude_noise | No | Exclude noisy moments (default: true) | |
| include_retex | No | Include RETEX in context (default: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavioral traits. It does not indicate whether the tool is read-only or has side effects, nor does it describe the return value or any impact on state. This is a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no fluff or redundancy. It is front-loaded with the core purpose ('Evaluate and rank') and efficiently conveys the key constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has moderate complexity (5 parameters) but no output schema or annotations. The description omits critical information such as the return format, side effects, and when to use it. This leaves the agent without enough context to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all 5 parameters (100% coverage), so the baseline is 3. The description adds only the phrase 'within token budget', which aligns with the budget_tokens parameter, but provides no additional semantic detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Evaluate and rank') and the object ('moments for optimal context injection within token budget'). It is specific about the resource and the budget constraint, but it does not differentiate from sibling tools like context_relevance_score or predict_agent_needs, which may perform similar ranking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 use cases, preconditions, or scenarios where this tool is preferred over siblings like generate_context_handoff or context_relevance_score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_jsonB
Return whole state as JSON resource
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Query parameter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only says 'Return', which implies a read operation, but fails to disclose potential behaviors such as large payload sizes, whether it includes all data structures, or any side effects. This is insufficient for a tool that could be resource-intensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler words. It conveys the core purpose efficiently, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description is too sparse. It does not explain what 'whole state' includes, how the q parameter affects the output, or the format of the JSON resource. This leaves significant gaps for an agent deciding whether to invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema coverage is 100%, the schema's description of 'q' as 'Query parameter' is generic and does not clarify its purpose or format. The tool description adds no additional meaning, so an agent cannot determine how to construct a meaningful query.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: returning the whole state as a JSON resource. The verb 'Return' and the resource 'whole state as JSON' are specific, and it distinguishes itself from sibling tools like export_timeline and export_md by emphasizing the complete state rather than a subset.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a complete state export is needed, contrasting with the more specific sibling exports. However, it does not explicitly state when to use this tool over others or provide exclusions, leaving the guideline partially implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_mdD
Return Markdown dump resource
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Query parameter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavioral traits. It only says 'Return', implying a read operation, but it does not state side effects, return format, or any other behavioral information, leaving a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no wasted words, making it very concise. However, it is under-specifying rather than being effectively compact, so while it is efficient in length, it lacks substance. Still, for pure conciseness, it earns a high score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has one parameter, no annotations, and no output schema, and the description is minimal. It fails to explain what a 'Markdown dump resource' is, what the output format is, or how the query parameter influences results, making the description grossly inadequate for the tool's context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage for its single parameter 'q' ('Query parameter'), which meets the baseline for high coverage. However, the tool description adds no additional meaning about how 'q' affects the output, and the schema description is generic, so while the baseline is met, no extra value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Return Markdown dump resource' is vague and largely restates the tool name 'export_md'. It does not specify what resource is being dumped or what the output contains, and it fails to distinguish itself from sibling tools like export_json or export_timeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is absolutely no guidance on when to use this tool versus alternatives. The description does not mention any context, prerequisites, or exclusions, leaving the agent without direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_timelineB
Render Markdown timeline for a given day (YYYY-MM-DD)
| Name | Required | Description | Default |
|---|---|---|---|
| day | Yes | Day in YYYY-MM-DD format |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It mentions 'Render' which implies a read-only operation, but does not explicitly state whether it is safe, what output format is returned (beyond 'Markdown'), or any side effects. The lack of detail on behavior beyond the basic action leaves the agent underinformed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that precisely conveys the tool's function without unnecessary words. Every element contributes meaning, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description covers the core action but leaves gaps. It does not clarify the exact output (e.g., a Markdown string, file path) or behavior on invalid dates. While adequate for a minimal tool, it could be more complete by specifying the return value.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description reiterates the schema's 'YYYY-MM-DD' format but adds no additional meaning about the 'day' parameter, such as acceptable date ranges or formatting requirements, beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: rendering a Markdown timeline for a specific day. The verb 'Render' and resource 'Markdown timeline' are specific, and the day scope is explicit. It differentiates from sibling tools like export_json and export_md by focusing on a timeline in Markdown format.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as export_json or export_md. The description only states what the tool does, leaving the agent to infer usage context without explicit exclusions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_context_handoffC
Create a compact transition card (state/stack/decisions/solved/next) under a token budget
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | No | Optional session identifier | |
| budgetTokens | No | Token budget for the handoff (default: 350) | |
| includeSolved | No | Include problems solved section (default: true) | |
| includeNextSteps | No | Include next steps section (default: true) | |
| includeCurrentState | No | Include current state section (default: true) | |
| includeKeyDecisions | No | Include key decisions section (default: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it only mentions a token budget and output sections. It doesn't disclose whether the tool writes anything, reads current context, requires existing session data, or how it behaves with missing 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no fluff. While concise, it omits important context that would make it truly effective; it earns a 4 rather than 5 due to lost opportunity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a generation action with 6 optional toggles, no output schema, and no annotations, so the description should explain the expected output format, relationship to current context, and prerequisites. It covers none of these, leaving the agent underinformed for a complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents all 6 parameters with descriptions and defaults (100% coverage), so the baseline is 3. The description adds minimal semantic value by mapping the mentioned sections to include* parameters, but it doesn't change defaults or clarify the token budget beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('create') and names a concrete resource ('compact transition card') plus its contents (state/stack/decisions/solved/next), making the core action clear. It doesn't explicitly differentiate from sibling tools like suggest_transition_card or create_handoff_for_agent, so it isn't a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only states what it creates, not when to choose it over suggest_transition_card or create_handoff_for_agent, nor 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.
get_actor_statsA
Get statistics for an actor (success rate, moment counts, top tags)
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | Time window (default: all) | |
| actor_id | Yes | Actor ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It indicates a read operation ('Get') and lists some output fields, but it does not explicitly state that it is read-only, describe the return structure, or mention any edge cases. This is adequate for a simple stats fetcher but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the key action and resource, followed by parenthetical output examples. Every word adds value, and it is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with a rich input schema and no output schema, the description adequately explains what the tool returns (success rate, moment counts, top tags). It does not predict the exact return format, but the listed fields give enough context for an agent to select and use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both parameters (actor_id and window) at 100% coverage. The description adds no extra meaning about the parameters, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb and resource: 'Get statistics for an actor' and lists concrete outputs (success rate, moment counts, top tags). This distinguishes it from sibling tools like stats_overview, which likely targets overall statistics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when one needs per-actor statistics, but it does not explicitly state when not to use it or name alternatives like stats_overview. The context is clear, though it lacks explicit exclusions or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_retex_for_taskA
Get relevant RETEX cards for a task based on tag overlap and moment relations
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max RETEX to return (default: 5) | |
| task_id | Yes | Task ID to find relevant RETEX for | |
| include_scores | No | Include relevance scores in output |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It explains the relevance logic but does not mention whether the operation is read-only, what the return format is, how pagination or defaults work, or potential edge cases (e.g., no matching RETEX). This is insufficient for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the primary action. It avoids redundancy and is well-structured for quick parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple retrieval operation, and the schema covers parameters, but the description does not explain the output structure or behavior when no results are found. Given no output schema, the description could be more complete, though it is adequate for basic understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters (task_id, limit, include_scores) described in the schema. The description adds no additional parameter-level detail, which is acceptable given the schema's completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: retrieving relevant RETEX cards for a given task. It specifies the method (tag overlap and moment relations) and the resource (RETEX cards), and distinguishes it from sibling tools like search_moments or make_retex by focusing on task-based relevance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when you need RETEX cards relevant to a specific task, based on tag overlap and moment relations. However, it does not explicitly state when to use it over alternatives, exclusion criteria, or any conditions under which it should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
link_momentsB
Create a relation between moments
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Target moment ID | |
| from | Yes | Source moment ID | |
| kind | Yes | Relation type | |
| note | No | Optional note about the relation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavior. It only states the action 'create' without revealing side effects, idempotency, constraints on existing relations, or any other behavioral traits. For a mutation tool, this is insufficient transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the tool's purpose. It contains no filler or redundant information, making it appropriately concise and easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the description is still too sparse. It lacks any mention of return values (no output schema), usage distinctions from sibling tools, or behavioral details. The schema covers parameters, but the overall context is incomplete for an agent to confidently invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning all parameters (from, to, kind, note) have descriptions in the schema. The description adds no additional semantic meaning beyond what the schema already provides, so the baseline score of 3 is appropriate. It does not compensate for any gaps because there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a relation between moments' clearly states the verb (create), the resource (relations), and the target (moments). It distinguishes itself from the sibling tool link_moment_to_task by specifying 'between moments' rather than linking to tasks, so an agent can differentiate them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It does not mention that linking a moment to a task should use link_moment_to_task, nor does it describe prerequisites or typical use cases. There is no when-to-use or when-not-to-use information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
link_moment_to_taskC
Associate a moment with a task
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Task ID | |
| moment_id | Yes | Moment ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'associate', implying a mutation, but does not explain whether the operation is additive, reversible, requires permissions, or produces any output. This is insufficient for a tool that modifies relationships.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler or redundancy. It efficiently communicates the core purpose, though the brevity leaves other dimensions under-specified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with 2 simple parameters and no output schema, some minimal explanation might suffice, but this description is too thin. It does not clarify the semantics of 'associate' (e.g., does it create a link, update a reference?), nor does it address any behavioral details. The absence of annotations makes this a clear gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter ('moment_id', 'task_id') having a basic one-line description. The tool description adds no additional meaning beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Associate a moment with a task' uses a clear verb ('Associate') and states the two resources involved (moment, task). It is distinct from sibling 'link_moments' (which links two moments) and 'assign_task' (which likely assigns to a person), though it does not explicitly call out these alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like 'assign_task', 'link_moments', or 'supersede_moment'. The description gives no context on prerequisites, typical use cases, or when to avoid it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_actorsA
List all registered actors
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. However, it only states the basic listing action and offers no detail about output format, sorting, pagination, or potential side effects, though a read operation is implied.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the core action and resource. It contains no unnecessary words and is highly scannable for an AI agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no parameters and no output schema, the description is adequate. It conveys the primary function, though it could mention the return type (e.g., array of actors) to be fully complete, but this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool accepts zero parameters, so the schema carries no burden. The description need not elaborate on inputs, and the baseline for no-parameter tools is 4, which is appropriate here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all registered actors' uses a specific verb ('List') and resource ('actors') with a scope qualifier ('registered'). It clearly distinguishes this tool from siblings like list_tasks and list_moments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It simply states the action, leaving the agent to infer usage context with no explicit or implicit comparison to sibling list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_momentsA
Return latest captured moments
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of moments to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, yet it only states the basic action without mentioning side effects, ordering, pagination, or read-only status. The description adds no context about what happens when limiting results or how 'latest' is determined, leaving the agent without important behavioral cues.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no superfluous words. It is front-loaded with the verb and resource, making it immediately scannable and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description sufficiently conveys the core behavior. However, it lacks context about default limits or ordering, and the absence of annotations means it doesn't fill all gaps. Still, the tool is simple enough that the description is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully describes the 'limit' parameter ('Number of moments to return'), and the description adds no semantics beyond that. Since schema coverage is 100%, the baseline score of 3 is appropriate; the description does not enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Return') and resource ('latest captured moments'), which distinguishes it from sibling tools like search_moments that search for moments. It is specific enough to identify the tool's purpose without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usageβuse this tool when you want the latest momentsβbut it does not explicitly contrast it with alternatives like search_moments_advanced, nor does it provide exclusions or when-not-to-use guidance. This is an implied usage level.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tasksC
List tasks with optional filters
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 20) | |
| status | No | Filter by status | |
| created_by | No | Filter by creator | |
| assigned_to | No | Filter by assigned actor |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description carries the full burden of behavioral disclosure. It only states 'optional filters', which is already implied by the schema's optional parameters. It does not disclose return format, pagination, ordering, or access permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that efficiently conveys the core purpose without unnecessary verbosity. It is front-loaded with the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, so the description should explain return values and any side effects. It does not, leaving the agent with limited information about the tool's behavior. However, the tool is relatively simple, so the gap is not as severe as with more complex tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are well-documented in the schema. The description's mention of 'optional filters' adds little beyond what the schema already conveys, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List tasks with optional filters' clearly identifies the verb (list), resource (tasks), and mentions filtering capability. It distinguishes from sibling tools that operate on other resources like list_actors or list_moments, though it could be more specific about the scope of tasks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It does not mention any prerequisites, exclusions, or suggest other tools for different scenarios, leaving the agent to infer from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
make_retexC
Generate rule + bullets + dont from a captured moment
| Name | Required | Description | Default |
|---|---|---|---|
| momentId | Yes | ID of the moment to create RETEX from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'Generate' and lists output components, but does not disclose whether this is a write operation, if it modifies the moment, requires any authorization, or what side effects might occur. This is a significant gap for a tool that likely creates a new RETEX artifact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the action ('Generate') and the input ('from a captured moment'). Every word contributes to the core meaning, with no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a generation tool with no output schema and no annotations, the description is too thin. It doesn't clarify what 'rule', 'bullets', and 'dont' are, nor the format or structure of the output. An agent would need to infer from sibling tools (e.g., get_retex_for_task) to understand what a RETEX is, and the description alone is insufficient to set expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: the only parameter 'momentId' is described as 'ID of the moment to create RETEX from'. The description does not add additional meaning beyond the schema, which is acceptable per the baseline for high schema coverage, but it also doesn't clarify the format or origin of the momentId.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Generate' and names the output components ('rule + bullets + dont') from a 'captured moment', which clearly distinguishes it from sibling tools like get_retex_for_task (retrieval) and export tools. However, the term 'dont' is ambiguous (likely meaning 'don'ts') and could be clearer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives such as get_retex_for_task (which retrieves an existing RETEX) or generate_context_handoff. It neither states when to use it nor mentions any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mark_momentC
Capture a build moment with safe context snapshot
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | Working directory | |
| kind | Yes | Type of moment | |
| tags | No | Tags for categorization | |
| title | Yes | Title of the moment | |
| details | No | Additional details | |
| task_id | No | Associated task ID (v0.4) | |
| actor_id | No | Actor ID who creates this moment (v0.4) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. 'Safe context snapshot' hints at non-destructive context capture, but it does not clarify whether this is a write operation, whether it requires permissions, or what side effects it has. The description omits critical details about persistence and reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no filler. It front-loads the core purpose immediately and earns its place by stating the tool's function without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 7 parameters, no output schema, and no annotations, the description is too minimal. It does not explain what a 'build moment' is, what 'safe context snapshot' entails, or what the agent should expect as a result. The behavior is not adequately specified for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all 7 parameters having descriptive text, so the description does not need to repeat parameter info. It also does not add extra semantic meaning beyond the schema, such as how parameters interact or typical usage patterns, keeping this at baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action 'capture' and the object 'build moment', with 'safe context snapshot' adding a distinctive qualifier. This distinguishes it from sibling tools that export, list, or link moments, though the qualifier is somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like list_moments, link_moment_to_task, or export_timeline. It does not mention any prerequisites, conditions, or exclusions, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
predict_agent_needsB
Predict what context an agent will need based on task type and actor capabilities
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Task to analyze | |
| actor_id | Yes | Actor who will work on the task |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not disclose whether the tool is read-only, what it expects from the inputs, or what the output looks like. Only the high-level purpose is stated, leaving behavioral traits ambiguous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the verb and purpose. It contains no filler or redundancy, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-param tool without an output schema, the description provides the core function but omits expected output, error conditions, or when it should be preferred over similar tools. The simplicity keeps it adequate, but additional context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, providing a baseline of 3. The description adds meaning by mentioning 'task type' and 'actor capabilities', which imply how task_id and actor_id are interpreted, going beyond the minimal schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Predict') and resource ('what context an agent will need') with a clear basis (task type and actor capabilities). It distinguishes its predictive function from sibling tools like generate_context_handoff, though it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 siblings like generate_context_handoff or context_relevance_score. There are no exclusions or context signals to help the agent decide between alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recurrent_patternsB
Group similar titles to find patterns
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does not disclose whether the tool is read-only, what data it operates on, what it returns, or any side effects. It only states a vague grouping behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. Every word contributes to the basic purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations, output schema, and parameters, the description is too sparse to allow confident selection. It does not clarify what 'titles' refers to or what 'patterns' means in this context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4. The description does not contradict the empty schema and provides the only semantic context available.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('group') and resource ('similar titles'), and indicates the outcome ('find patterns'). It is distinct from sibling tools focused on export, tasks, or moments, though 'titles' is ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. There are no exclusions or contextual hints about typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_actorB
Register a new agent or human actor for traceability
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique actor ID (e.g., "agent_code_reviewer", "user_sam") | |
| name | Yes | Display name | |
| type | Yes | Actor type | |
| description | No | What this actor does | |
| capabilities | No | List of capabilities (e.g., ["review", "test", "deploy"]) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the registration intent without mentioning idempotency, duplicate ID handling, validation, permissions, or any side effects. For a mutation tool, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action 'Register' and immediately specifying the resource and purpose. It contains no filler or redundant details, making it highly concise and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with no output schema and no annotations, the description lacks critical context such as success/failure behavior, prerequisites, uniqueness constraints, and its role within the broader traceability system. While the schema covers parameter details, the overall tool context is under-specified, leaving the agent with insufficient information to invoke it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, as all five parameters have descriptions in the input schema. The tool description adds no additional parameter context, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'register' with a clear resource ('agent or human actor') and purpose ('for traceability'). It distinguishes this tool from siblings like list_actors and get_actor_stats by indicating a creation/registration action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 prerequisites, exclusions, or relationships to other actor-related tools. The agent must infer usage solely from the verb and the context of sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_momentsC
Find similar moments using semantic search
| Name | Required | Description | Default |
|---|---|---|---|
| k | No | Number of results to return | |
| query | Yes | Search query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It describes a benign 'find' operation, but does not disclose return format, potential side effects, or whether results are ordered by relevance. This is minimal disclosure for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and front-loaded with the main action. It avoids filler, though it could include more detail without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a sibling 'search_moments_advanced' that likely overlaps, the description is incomplete. It lacks information about what the result list contains, pagination, or any limitations, making it inadequate for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions for 'query' and 'k'. The description adds no extra semantic details beyond 'semantic search', which is implicitly tied to 'query'. Baseline 3 is appropriate since schema already handles parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Find') and resource ('moments'), and mentions the method ('semantic search'). However, it does not explicitly differentiate from the sibling tool 'search_moments_advanced', so the purpose is clear but not fully distinguished.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention prerequisites, exclusions, or compare with 'search_moments_advanced' or 'list_moments'. The description merely states the action without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_moments_advancedC
Combine semantic, filters and regex search
| Name | Required | Description | Default |
|---|---|---|---|
| k | No | Max results | |
| to | No | End date (ISO string) | |
| from | No | Start date (ISO string) | |
| tags | No | Required tags | |
| kinds | No | Moment kinds | |
| query | No | Semantic search query | |
| regex | No | Regex pattern for text search |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It states the tool combines search types but does not clarify whether filters are ANDed or ORed, how semantic search interacts with regex, or what output format to expect. There is no mention of read-only status, rate limits, or edge cases. This leaves significant ambiguity for a tool with seven parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely conciseβa single sentence fragment. While it has zero waste, it is under-specified for a tool with seven parameters. It front-loads the key idea but sacrifices necessary detail, making it more cryptically brief than appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (7 parameters, no output schema, no annotations), the description is incomplete. It fails to explain how the search modes combine, how results are ordered or limited, or what response structure to expect. The agent is left with insufficient context to invoke this tool reliably, especially compared to sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds minimal value beyond the schemaβit groups 'query' as semantic, 'regex' as text pattern, and 'tags/kinds/dates' as filters, but this is already evident from parameter descriptions. It does not clarify parameter combinations or provide practical usage examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Combine semantic, filters and regex search' clearly indicates this tool performs search functionality combining these three modes. It implicitly references moments from the tool name and distinguishes from the simpler 'search_moments' sibling. However, it lacks an explicit mention of the resource ('moments') and could be more specific about the combination semantics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 advanced search versus the sibling 'search_moments' or 'list_moments'. The name suggests advanced usage, but the description does not articulate specific scenarios, prerequisites, or exclusions. The agent receives no help choosing between alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
stats_overviewD
Basic counts and trends
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | Time window |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it discloses no behavior beyond being an overview. It does not state whether this is a read-only operation, any side effects, or what kind of output the agent can expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short but not effectively concise; it is under-specified. A good concise description would be brief yet informative, whereas this omits critical details about the tool's purpose and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description must provide sufficient context on its own, but it fails to do so. It is unclear what counts and trends are being reported, how the window affects results, and what the return value looks like. This is inadequate for an agent to correctly invoke and interpret the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema documents the single 'window' parameter with 100% coverage, including an enum and a brief description. The tool description adds no additional parameter semantics, but the high schema coverage justifies the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Basic counts and trends' is vague; it does not specify what entity or domain the counts and trends refer to. It is not a clear verb+resource statement and does not distinguish this tool from siblings like get_actor_stats or recurrent_patterns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance about when to use this tool versus alternatives. There is no mention of suitable scenarios, exclusion criteria, or preferred alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggest_transition_cardB
Suggest generating a transition card when context is near capacity
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | No | Optional session identifier | |
| threshold | No | Token threshold for suggestion (default: 1000) | |
| remainingTokens | Yes | Number of tokens remaining in context |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior. It only says 'suggest,' which implies a read-only advisory action, but it does not clarify whether the tool mutates state, what output it returns, or any side effects. This lack of behavioral detail is a significant gap for an agent to anticipate the tool's effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single focused sentence, front-loaded with the verb and resource, and contains no fluff or redundant information. It is appropriately concise for a tool with simple parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and annotations, the description should explain what a suggestion entails and how the threshold and remainingTokens are used. The one-sentence description is insufficient for an agent to fully understand the tool's output behavior, though the tool's complexity is low. Missing return format and decision logic makes it incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% coverage for all three parameters (sessionId, threshold, remainingTokens), so the baseline is 3. The description adds context by tying the tool's purpose to the 'remaining tokens' concept, but it does not explain parameter semantics beyond what the schema already provides, making the description's contribution marginal.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool's purpose with a specific verb ('Suggest') and resource ('generating a transition card'), along with a condition ('when context is near capacity'). It is clear and distinguishes itself from siblings like generate_context_handoff by focusing on the suggestion rather than the generation itself, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear condition for use ('when context is near capacity'), which implies a context for invocation. However, it does not specify when not to use it or mention alternative tools such as generate_context_handoff, evaluate_context_window, or predict_agent_needs, so the guidance is present but not fully explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
supersede_momentC
Mark a moment as superseded by a newer one (temporal tracking)
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Why this supersedes the old moment | |
| new_moment_id | Yes | Moment that supersedes | |
| old_moment_id | Yes | Moment being superseded |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a write operation but doesn't state whether the old moment is modified, whether the operation is reversible, or what side effects occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no wasted words. The parenthetical 'temporal tracking' adds a small but relevant context. It's efficient, though slightly under-specified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple but lacks annotations and an output schema. The description doesn't explain what 'superseded' means for the old moment, whether the operation is reversible, or what the response contains. This is a minimal description that leaves significant behavioral gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for all three parameters, with clear names like old_moment_id and new_moment_id. The description adds minimal semantic clarity by indicating the superseding relationship, but the schema already communicates the essential meanings.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (mark) and the resource (moment), and specifies that it's about superseding by a newer one. This distinguishes it from siblings like link_moments or mark_moment, though it could be more explicit about the effect on the old moment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 vs alternatives. The description implies a scenario (when a moment is replaced) but doesn't explicitly mention any alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sweep_noiseB
Denoise auto-marked moments: trivial, duplicates, cooldown; updates signal_score
| Name | Required | Description | Default |
|---|---|---|---|
| windowDays | No | Days to look back for denoising (default: 7) | |
| cooldownMinutes | No | Cooldown period in minutes (default: 10) | |
| similarityThreshold | No | Similarity threshold for duplicates (default: 0.8) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose side effects and safety. It states it updates signal_score, but doesn't clarify whether moments are deleted, marked, or otherwise changed, nor the reversibility or impact on linked data. This is a significant gap 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the action and efficiently lists the noise types with a semicolon-separated list. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and no annotations, the description lacks critical contextual information: what happens to the moments (delete vs mark), what the return value is, and the exact effect on signal_score. This prevents an agent from fully anticipating the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of parameters with type and default information. The tool description adds no parameter-specific semantics, but the schema is self-sufficient, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the operation (denoise) on a specific resource (auto-marked moments) and enumerates noise types (trivial, duplicates, cooldown) and the side effect (updates signal_score). This distinguishes it from sibling tools like list_moments or mark_moment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for cleaning up auto-marked moments when there is trivial/duplicate/cooldown noise, but it doesn't explicitly state when to prefer this over alternatives or mention any exclusions. No alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_taskA
Update a task status, assignment, or outcome
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | New status | |
| outcome | No | Task outcome (when completing) | |
| task_id | Yes | Task ID | |
| assigned_to | No | New assignee actor ID | |
| outcome_summary | No | Summary of what was achieved |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavioral traits, but it only states the basic action. It does not mention potential side effects, constraints like required fields or allowed status transitions, whether the update is partial or full, or what is returned. This is a significant gap 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with the verb front-loaded. Every word earns its place, and it avoids redundancy or unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema is detailed and there is no output schema, so the description's minimalism is partly acceptable. However, it lacks usage guidance and behavioral caveats (e.g., when outcome should be used, how assignment interacts with other fields), making it incomplete for an agent trying to select the right tool among many task-related siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete descriptions for all five parameters (100% coverage), so the description doesn't need to add parameter-level detail. The baseline of 3 applies because the schema does the heavy lifting, though the description's mention of status, assignment, and outcome does loosely map to the main fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and identifies the resource ('task') plus the specific mutable fields ('status, assignment, or outcome'). This distinguishes it from sibling tools like list_tasks or create_task, and from the narrower assign_task, since it covers more than assignment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage on existing tasks but gives no explicit guidance on when to choose this over assign_task or create_task. There are no exclusions or alternative tool recommendations, so it only meets the 'implied usage' level.
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.
29 tool updates
v0.4.0- First observed
assign_task - First observed
comment_moment - First observed
context_relevance_score - First observed
create_handoff_for_agent - First observed
create_task - First observed
evaluate_context_window - First observed
export_json - First observed
export_md - First observed
export_timeline - First observed
generate_context_handoff - First observed
get_actor_stats - First observed
get_retex_for_task - First observed
link_moment_to_task - First observed
link_moments - First observed
list_actors - First observed
list_moments - First observed
list_tasks - First observed
make_retex - First observed
mark_moment - First observed
predict_agent_needs - First observed
recurrent_patterns - First observed
register_actor - First observed
search_moments - First observed
search_moments_advanced - First observed
stats_overview - First observed
suggest_transition_card - First observed
supersede_moment - First observed
sweep_noise - First observed
update_task
TDQS
Scored across 29 tools
Most tools target distinct resource-action pairs, e.g., moment capture vs. task management. The main potential confusion is between generate_context_handoff and create_handoff_for_agent, but they produce different output formats (human-readable card vs. LangGraph payload).
Tool names are uniformly snake_case and mostly follow verb_noun (export_timeline, create_task). A few names like context_relevance_score, stats_overview, and recurrent_patterns deviate from the verb-first pattern, but the overall style is consistent and readable.
With 29 tools, the surface is quite large and exceeds the typical well-scoped range. While the broad domain (moments, tasks, actors, handoffs, analytics) somewhat justifies the count, it still feels heavy and likely overwhelming for an agent.
The toolset covers the main lifecycle for moments (capture, search, comment, link, supersede), tasks (create, update, list, assign), and actors (register, list, stats). Minor gaps include lack of delete operations for moments/tasks/actors, but core workflows are functional.
Maintenance
Related MCP Connectors
Shared project memory that keeps teammates and AI agents aligned across sessions.
Shared, versioned context that humans and AI agents can publish, review, annotate, and continue.
- OneLoreOAuthai.onelore
Shared project context for AI agents and teams: docs, tasks, and messages that stay current.
Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceProvides AI coding assistants with persistent project memory by capturing development checkpoints during git commits, branch switches, and inactivity. It enables seamless task resumption through tools that retrieve session history, momentum, and synthesized re-entry briefings.423MIT
- AlicenseAqualityCmaintenanceAuto-captures decision context from multi-agent workflows to preserve the 'why' behind every choice. Enables task traceability, reasoning retrieval, and continuous improvement across planning and implementation sessions.17136MIT
- AlicenseNot gradedqualityBmaintenanceProvides persistent, searchable memory and knowledge capture for AI-assisted development, enabling agents to retain decisions, bugs, and patterns across sessions and projects.MIT
- AlicenseNot gradedqualityCmaintenanceGives AI agents persistent memory, handoffs, and shared context across sessions, enabling seamless continuity and multi-agent collaboration.2069-