Amazing Marvin MCP
Click on "Install 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., "@Amazing Marvin MCPWhat tasks do I have today?"
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.
๐ Amazing Marvin AI Assistant Integration
Connect your Amazing Marvin productivity system with AI assistants for smarter task management
๐ Table of Contents
Related MCP server: Amazing Marvin MCP
๐ฏ What is this?
This connects your Amazing Marvin productivity system with AI assistants like Claude, Cursor, and others. Instead of manually copying your tasks and projects into chat, your AI assistant can see and help with your actual Amazing Marvin data.
โจ Key Benefits
๐ Stay in sync - Your AI assistant always sees your current tasks, projects, and goals
๐ Smart help - Get personalized advice based on your actual workload and priorities
โก Save time - No more copy-pasting task lists or explaining your projects
๐ฏ Better focus - AI helps you identify what's most important right now
๐ Private - Your data stays between Amazing Marvin and your AI assistant
โก Quick Start (2 minutes)
Step 1: Get your Amazing Marvin API key
Open Amazing Marvin โ Settings โ API
Enable the API and copy your token
Keep this handy! ๐
Step 2: Install
Easy way (Smithery):
npx -y @smithery/cli install @bgheneti/amazing-marvin-mcp --client claudePaste the API key when prompted
Alternative (pip):
pip install amazing-marvin-mcpThen add to your AI client config (see installation guide)
Step 3: Verify it's working
Ask your AI: "What tasks do I have today?"
๐ That's it! Your AI can now see your Amazing Marvin data.
๐ก What can you do with this?
Once connected, your AI assistant becomes your personal productivity coach with access to your real Amazing Marvin data:
๐ Daily Planning Help
"What should I focus on today?" - Get personalized recommendations based on your actual deadlines and priorities
"I'm feeling overwhelmed - what's most important?" - AI helps you cut through the noise and identify what really matters
๐ฏ Project Insights
"How is my website redesign project going?" - See progress, completed tasks, and what's left to do
"Show me everything related to client work this week" - Get organized views of your tasks by project or category
๐ Progress Tracking
"What did I accomplish this week?" - Review your productivity patterns and celebrate wins
"Which days am I most productive?" - Understand your patterns to plan better
โฐ Smart Scheduling
"What's overdue and needs attention?" - Never lose track of important deadlines
"Help me plan tomorrow based on what I have scheduled" - Get realistic daily plans that work
โฑ๏ธ Time Tracking
"Start tracking time on this task" - Seamlessly manage time tracking from your AI chat
"What have I been working on today?" - Review your time allocation and focus
Why this is better than generic productivity advice: Your AI sees your actual tasks, deadlines, and progress - so the help you get is personalized to your real situation, not generic tips.
Note: This covers most Amazing Marvin features, though some advanced customizations and strategies have limited API access.
๐ฆ Installation
Option 1: Smithery (Easiest)
npx -y @smithery/cli install @bgheneti/amazing-marvin-mcp --client claudeVisit Smithery Registry for other clients.
Option 2: Pip + Manual Config
Why choose this option:
โ Works with any MCP-compatible AI client
โ Easy to update: just
pip install --upgrade amazing-marvin-mcp
Prerequisites
โ Python 3.10+
โ Claude Desktop, Cursor, Windsurf, VS Code, or another MCP client
โ Amazing Marvin account with API access
Installation
# Install from PyPI (recommended)
pip install amazing-marvin-mcp๐ฑ Client Configuration
Add to your claude_desktop_config.json:
๐ Config file locations:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"amazing-marvin": {
"command": "python",
"args": ["-m", "amazing_marvin_mcp"],
"env": {
"AMAZING_MARVIN_API_KEY": "your-api-key-here"
}
}
}
}Add to your MCP settings:
{
"mcpServers": {
"amazing-marvin": {
"command": "python",
"args": ["-m", "amazing_marvin_mcp"],
"env": {
"AMAZING_MARVIN_API_KEY": "your-api-key-here"
}
}
}
}Add to your Windsurf MCP configuration:
{
"mcpServers": {
"amazing-marvin": {
"command": "python",
"args": ["-m", "amazing_marvin_mcp"],
"env": {
"AMAZING_MARVIN_API_KEY": "your-api-key-here"
}
}
}
}Add to your VS Code MCP configuration:
{
"mcpServers": {
"amazing-marvin": {
"command": "python",
"args": ["-m", "amazing_marvin_mcp"],
"env": {
"AMAZING_MARVIN_API_KEY": "your-api-key-here"
}
}
}
}๐ก Usage Examples
The MCP provides specific tools that your AI can use. Simply ask your AI to help with productivity tasks and it will use the appropriate tools:
What you might ask | Tools the AI will use |
"What should I focus on today?" |
|
"What tasks do I have today?" |
|
"Show me my projects" |
|
"What's overdue?" |
|
"Create a new task for X" |
|
"Mark task Y as done" |
|
"Start tracking time on this" |
|
๐ How it understands your setup
Your AI assistant automatically understands your Amazing Marvin structure:
Work & Personal projects - Keeps your professional and personal tasks organized
Categories and labels - Knows how you've organized your productivity system
Due dates and priorities - Understands what's urgent vs. important
Completed vs. pending - Tracks your progress and momentum
No need to explain your system - your AI just gets it!
๐ง Troubleshooting
โ Common Issues
Problem: The MCP can't find your API key.
Solutions:
Verify your API key is correct in Amazing Marvin Settings โ API
Check the environment variable:
echo $AMAZING_MARVIN_API_KEYRestart your AI client after setting the key
Ensure no extra spaces in your API key
Problem: Can't connect to Amazing Marvin API.
Solutions:
Check your internet connection
Verify Amazing Marvin service status
Try the connection test:
python -c "import requests; print(requests.get('https://serv.amazingmarvin.com/api').status_code)"Check if you're behind a corporate firewall
Problem: MCP is running but not returning data.
Solutions:
Ask explicitly: "Use the Amazing Marvin tool to get my tasks"
Check if you have any tasks in Amazing Marvin
Verify API permissions in Amazing Marvin settings
Restart your AI client
Problem: ModuleNotFoundError: No module named 'amazing_marvin_mcp'
Solutions:
Reinstall:
pip install --force-reinstall amazing-marvin-mcpCheck Python path:
python -c "import sys; print(sys.path)"Use full path:
which pythonand use that in your config
โ Common Questions
Absolutely! Your Amazing Marvin data stays between you, Amazing Marvin, and your AI assistant. The connection runs on your computer - nothing is stored on external servers or shared with anyone else.
Any AI assistant that supports the Model Context Protocol, including Claude Desktop, Cursor, VS Code, and Windsurf. More are being added regularly.
Your AI can see:
โ Your tasks, projects, and categories
โ Due dates, priorities, and completion status
โ Time tracking and goals
โ Labels and organizational structure
โ Productivity history and patterns
Basically everything you see in Amazing Marvin, your AI can see too.
Not noticeably. The system fetches your data from Amazing Marvin when you ask productivity questions. Response time depends on your internet connection, but it's usually very quick.
Yes, if you ask it to! Your AI can:
โ Create new tasks and projects
โ Mark tasks as done
โ Start and stop time tracking
โ Organize tasks in batches
Don't worry - it only makes changes when you specifically ask it to.
Yes! The MCP can find and display completed tasks in several ways:
๐ In Daily Focus View:
โ Shows today's completed tasks alongside pending ones
โ Includes completion count and productivity notes
โ Separates completed from pending for clear progress tracking
๐ In Project Overviews:
โ Lists completed vs pending tasks separately
โ Shows completion rate and progress summary
โ Provides detailed task breakdowns
๐ Efficient Historical Access:
โ Get completed tasks for any specific date (e.g., "June 10th")
โ Flexible time range summaries (1 day, 7 days, 30 days, or custom date ranges)
โ Complete task data included - no additional API calls needed for task details
โ Smart caching - historical data cached for 10 minutes to avoid redundant calls
โ Project-wise completion analytics with resolved project names
โ Efficient API filtering with cache hit rate tracking
โ Real-time access to completion timestamps and project correlations
๐ซ Cannot Delete or Remove:
โ Delete tasks (requires special API permissions)
โ Delete projects or categories
โ Remove labels or goals
โ Clear time tracking history
๐ Cannot Edit:
โ Modify existing task content (title, notes, due dates)
โ Move tasks between projects
โ Change task priorities or labels
โ Update project settings
๐ Limited Access:
โ Full historical completed task archive
โ Detailed time tracking reports (only basic tracking)
โ Private notes or sensitive data
โ Advanced Amazing Marvin features (strategies, rewards setup)
For these operations, use the Amazing Marvin app directly.
Data is fetched in real-time with each request to Amazing Marvin's API. There's no background syncing or caching - you always get the most current data from your Amazing Marvin account.
๐จโ๐ป Development
๐ ๏ธ Setup
git clone https://github.com/bgheneti/Amazing-Marvin-MCP.git
cd Amazing-Marvin-MCP
pip install -e ".[dev]"
pre-commit install๐ Set your API key
Option A: Environment variable
export AMAZING_MARVIN_API_KEY="your-api-key-here"Option B: Create a .env file
AMAZING_MARVIN_API_KEY=your-api-key-here๐งช Testing
pytest tests/ -vโ ๏ธ Note: Tests create temporary items in your Amazing Marvin account with [TEST] prefixes. These may need manual cleanup due to API limitations.
๐ Code Quality
# Run all checks
pre-commit run --all-files
# Individual tools
ruff check . # Linting
ruff format . # Formatting
mypy . # Type checking
pytest tests/ # Tests๐ Available Tools
The MCP provides 28 comprehensive tools to AI assistants:
๐ Read Operations:
get_daily_productivity_overview()- PRIMARY comprehensive daily view (today's tasks, overdue, completed, planning insights)get_tasks()- Today's scheduled items onlyget_projects()- All projectsget_categories()- All categoriesget_due_items()- Overdue/due items onlyget_child_tasks( parent_id: str, recursive: bool = False )- Subtasks of a parent task/projectget_all_tasks( label: str = None )- Find all tasks with optional label filter (comprehensive search)get_labels()- Task labelsget_goals()- Goals and objectivesget_account_info()- Account detailsget_completed_tasks()- Completed items with date categorization (defaults to past 7 days)get_completed_tasks_for_date( date: str )- Completed items for specific date (YYYY-MM-DD format)get_productivity_summary_for_time_range( days: int = 7, start_date: str = None, end_date: str = None )- Flexible productivity analyticsget_currently_tracked_item()- Active time tracking
โ๏ธ Write Operations:
create_task( title: str, project_id: str = None, category_id: str = None, due_date: str = None, note: str = None )- Create new tasksmark_task_done( item_id: str, timezone_offset: int = 0 )- Complete taskscreate_project( title: str, project_type: str = "project" )- Create new projectsstart_time_tracking( task_id: str )- Begin time trackingstop_time_tracking( task_id: str )- End time trackingbatch_mark_done( task_ids: list[str] )- Complete multiple tasksbatch_create_tasks( task_list: list[str], project_id: str = None, category_id: str = None )- Create multiple tasksclaim_reward_points( points: int, item_id: str, date: str )- Claim kudos pointsget_kudos_info()- Get reward system and kudos information
๐ง Utility Operations:
test_api_connection()- Verify API connectivityget_project_overview( project_id: str )- Project analyticsget_daily_focus()- Daily prioritiesget_productivity_summary()- Performance metricstime_tracking_summary()- Time analyticsquick_daily_planning()- Planning assistancecreate_project_with_tasks( project_title: str, task_titles: list[str], project_type: str = "project" )- Project setupget_time_tracks( task_ids: list[str] )- Time tracking history
๐ค Contributing
๐ Publishing New Versions
This project uses automated publishing to PyPI via GitHub Actions.
For maintainers:
# Make your changes and test them
pytest tests/ -v
ruff check src/
mypy src/amazing_marvin_mcp/
# Use the release script to bump version and create tag
python scripts/release.py patch # for bug fixes
python scripts/release.py minor # for new features
python scripts/release.py major # for breaking changes
# Push to trigger CI and PyPI publish
git push origin main
git push origin v1.x.xThe workflow:
โ Tests run on Python 3.8-3.12
โ Linting and type checking pass
๐ฆ Package is built and checked
๐ Published to PyPI automatically on version tags
๐ง Local Development Setup
git clone https://github.com/bgheneti/Amazing-Marvin-MCP.git
cd Amazing-Marvin-MCP
pip install -e ".[dev]"
pre-commit install๐งช Testing
You can also manually publish to Test PyPI by running the workflow manually on GitHub.
๐ Privacy & Security
๐ก๏ธ Your Data Protection
Local Processing: MCP runs entirely on your machine
Direct Connection: Data goes directly from Amazing Marvin to your AI
No Cloud Storage: Nothing is stored on external servers
API Key Security: Store your key securely using environment variables
๐ Best Practices
โ Use environment variables for API keys (not config files)
โ Don't share your API key in screenshots or logs
โ Keep your API key secure and treat it like a password
โ๏ธ Performance & Limitations
What to expect:
Your AI assistant fetches fresh data from Amazing Marvin when you ask questions
Historical data is cached briefly to avoid repeated requests
Response time depends on your internet connection to Amazing Marvin
Very frequent requests might occasionally hit rate limits (just wait a moment)
Technical details:
Data is fetched in real-time for accuracy
Some data is cached for 10 minutes to improve speed
Batch operations work efficiently for multiple tasks
All the core Amazing Marvin features are supported
๐ License
MIT License - see LICENSE for details.
Made with โค๏ธ for Amazing Marvin users
Available Tools
28 toolsbatch_create_tasksB
Create multiple tasks at once with optional project/category assignment
| Name | Required | Description | Default |
|---|---|---|---|
| task_list | Yes | ||
| project_id | No | ||
| category_id | No | ||
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description bears full responsibility. It indicates a mutating operation (creating tasks) but omits details on behavior: how duplicates are handled, atomicity limits, or the meaning of the 'debug' parameter. The output schema is not referenced.
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?
A single sentence containing the core purpose. It could benefit from a brief note on the 'debug' parameter or expected behavior, but remains efficient without padding.
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 moderate complexity (4 parameters, 1 required) and the existence of an output schema, the description lacks depth. It omits return values, error handling, performance considerations, and any constraints (e.g., maximum number of tasks).
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?
With 0% schema description coverage, the description must compensate. It clarifies that 'task_list' holds task names and that 'project_id'/'category_id' are optional assignments, but does not explain the 'debug' parameter. This adds partial value over the bare 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 resource ('multiple tasks'), clearly distinguishing from the 'create_task' sibling (single task) and 'batch_mark_done' (different action). It also mentions optional project/category 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?
No guidance on when to use this tool versus alternatives (e.g., calling create_task repeatedly, or batch_mark_done). The description only states what it does, not when it is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch_mark_doneC
Mark multiple tasks as done at once
| Name | Required | Description | Default |
|---|---|---|---|
| task_ids | Yes | ||
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavioral traits. It only states the action without mentioning side effects, partial failures, or 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?
One sentence, front-loaded but too brief. Lacks structure and does not add value beyond the name.
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?
Batch operation with output schema but description omits return value, error behavior, and partial failure handling. Incomplete for a batch 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 coverage is 0%, and description does not explain parameters. 'task_ids' and 'debug' are undocumented beyond names.
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?
Clearly states verb (mark) and resource (tasks) indicating batch operation. Distinguishes from sibling mark_task_done which is singular.
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 on when to use vs alternatives like mark_task_done. No context on prerequisites or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
claim_reward_pointsC
Claim reward points for completing a task
| Name | Required | Description | Default |
|---|---|---|---|
| points | Yes | ||
| item_id | Yes | ||
| date | Yes | ||
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states the action, omitting details like idempotency, side effects, authorization requirements, or whether points are already earned. The description does not add beyond the name.
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 brief (one sentence), which is concise but at the expense of completeness. It lacks structure and fails to convey necessary details, making it under-specified rather than efficiently informative.
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 4 parameters with 0% schema coverage, no annotations, and an unseen output schema, the description is severely incomplete. It does not explain parameters, return values, or the tool's effect, leaving major gaps for an AI 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 0%, so the description should explain the parameters. It does not mention any of the four parameters (points, item_id, date, debug), leaving the agent to infer their meaning without guidance.
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 ('Claim reward points') and the context ('for completing a task'), distinguishing it from sibling tools which focus on tasks, projects, or time tracking. However, it lacks specificity on what 'claim' entails (e.g., adding to balance vs redeeming) and the exact relationship to a task.
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 on when to use this tool versus alternatives, nor any prerequisites or conditions. The description implies it follows task completion, but does not state this explicitly or provide exclusionary criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_projectC
Create a new project in Amazing Marvin
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | ||
| project_type | No | project | |
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
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 only states 'create a new project' without disclosing side effects, permissions, or error handling. Minimal 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 concise sentence, but it is too brief for a tool with 3 parameters and no schema descriptions. It sacrifices helpful detail for brevity.
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 schema descriptions, the description is incomplete. It does not cover parameter usage, return values, or behavioral context for a 3-parameter 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 0%, and the description adds no meaning to parameters. The 'project_type' and 'debug' fields are not explained, leaving the agent without guidance on valid values or effects.
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 'Create a new project in Amazing Marvin', specifying the verb and resource. However, it does not differentiate from the sibling 'create_project_with_tasks', which could cause confusion.
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 'create_project_with_tasks'. The description only implies its basic function without any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_project_with_tasksC
Create a project with multiple tasks at once
| Name | Required | Description | Default |
|---|---|---|---|
| project_title | Yes | ||
| task_titles | Yes | ||
| project_type | No | project | |
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so description carries full burden. Only states creation action without disclosing side effects, validation, error behavior, or return format. Minimal behavioral context is given.
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?
Single sentence is concise but underspecified. While it avoids verbosity, it fails to convey necessary details for effective tool use.
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 4 parameters (2 required) and an output schema not shown, the description is insufficient. Lacks info on return value, error handling, and behavioral nuances for a create operation.
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 0%, but description does not explain parameters beyond their names. 'project_type' and 'debug' are not clarified. Project_title and task_titles are self-explanatory, but constraints (e.g., max length, uniqueness) are missing.
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?
Description clearly states verb 'Create' and resource 'project with multiple tasks at once', distinguishing it from create_project (single project only) and create_task (single task). However, it does not explicitly differentiate from batch_create_tasks, which may also create multiple 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?
No guidance on when to use this tool vs alternatives like create_project or batch_create_tasks. No prerequisites, exclusions, or context for use case are provided.
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 in Amazing Marvin.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Task title (required) | |
| project_id | No | Optional project ID to assign task to | |
| category_id | No | Optional category ID for organization | |
| due_date | No | Optional due date in YYYY-MM-DD format | |
| note | No | Optional task notes/description | |
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It simply states 'Create a new task' without mentioning that this is a mutation operation, whether it returns the created task, or how the 'debug' parameter affects behavior. No side effects, authorization needs, or error scenarios are described.
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 essential action and resource. There is no superfluous information, and it is as concise as possible while remaining 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?
An output schema exists, so the description need not explain return values. However, the description does not mention the 'debug' parameter or any error conditions. Given the simplicity of the tool, the description is minimally adequate but lacks completeness for nuanced usage.
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 high (83%), so the baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions; it does not explain parameter usage or provide examples. However, the schema itself adequately documents most parameters.
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 verb 'Create' and the resource 'task', which is specific and unambiguous. It implicitly distinguishes itself from sibling tools like 'batch_create_tasks' (batch creation) and 'create_project' (different resource), making its purpose immediately clear.
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 such as 'batch_create_tasks' for multiple tasks or 'create_project_with_tasks' for combined operations. There is no mention of prerequisites, limitations, or preferred use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_account_infoC
Get account information from Amazing Marvin
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden. While 'Get' implies read-only, the description does not disclose authentication needs, side effects, or behavior of the 'debug' parameter. Minimal behavioral 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 sentence that is concise and front-loaded with the core purpose. No wasted words, but could be more informative while remaining 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 presence of an output schema, the description does not need to detail return values. However, it fails to explain what account information encompasses, which is insufficient given the number of 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 coverage is 0%, and the description does not mention the single 'debug' parameter or its effect. The description adds no value 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 verb 'Get' and resource 'account information', which is distinct from other sibling tools like get_all_tasks. However, it does not differentiate from similar 'get' tools or elaborate on what account information includes.
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 (e.g., test_api_connection). The description lacks any context about prerequisites or scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_all_tasksA
Get all tasks across all projects with optional label filtering (comprehensive search).
Use when you need to search/filter across your entire task system. For daily focus, use get_daily_productivity_overview() instead.
| Name | Required | Description | Default |
|---|---|---|---|
| label | No | Optional label name to filter by. If None, returns all tasks. | |
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It indicates this is a read operation by 'Get all tasks', but does not explicitly state that it is non-destructive or mention other behavioral aspects like rate limits or authentication. A score of 3 is appropriate as it provides the basic function 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 two sentences, front-loaded with the main action and scope, then provides usage guidance. Every sentence is essential and there is no waste.
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 that the tool has an output schema, the description does not need to explain return values. It adequately covers the tool's scope and filtering capability. It could mention that results might be large due to 'all tasks', but it is still sufficient for an agent to understand the tool's purpose.
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 covers 50% of parameters (label has description, debug does not). The description adds value by stating 'optional label filtering', which reinforces the label parameter's purpose. However, it does not address the debug parameter. Thus, the description provides marginal additional meaning 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 it retrieves all tasks across all projects with optional label filtering, using a specific verb and resource. It distinguishes itself from the sibling tool get_daily_productivity_overview by noting that this is a comprehensive search.
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 explicitly says 'Use when you need to search/filter across your entire task system' and suggests an alternative for daily focus. This provides clear guidance on when to use this tool, though it does not explicitly list 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_categoriesC
Get categories from Amazing Marvin
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits, but it only says 'Get categories.' No information on side effects, performance, or limitations. Minimal disclosure.
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?
A single sentence, which is concise, but it sacrifices necessary detail. It is appropriate in length for a simple tool, but lacks depth.
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 having an output schema, the description does not explain what categories are or how they relate to other entities. Given the sibling tool diversity, this is insufficient.
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 0% and the description adds no meaning for the 'debug' parameter. The parameter's purpose is completely unexplained.
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?
Description states 'Get categories from Amazing Marvin,' which is a specific verb and resource, but it does not distinguish categories from sibling tools like get_labels or get_goals. The purpose is clear in isolation but lacks differentiation.
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 on when to use this tool versus alternatives. The description provides no context for selection among the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_child_tasksA
Get child tasks of a specific parent task or project (experimental).
Use when you need to see subtasks within a project or parent task. Returns both tasks and sub-projects. Set recursive=True for deep hierarchy.
| Name | Required | Description | Default |
|---|---|---|---|
| parent_id | Yes | ID of the parent task or project | |
| recursive | No | If True, recursively get all descendants (can be expensive) | |
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It warns that the tool is experimental and notes that recursive mode 'can be expensive.' This is helpful but lacks details on error handling, permissions, or what happens with invalid parent IDs. The return format is implied but not fully described.
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 concise and well-structured: three sentences covering purpose, use case, and key parameter behavior. It is front-loaded with the main action and experimental warning, making it 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?
Given the tool's experimental nature and three parameters, the description is fairly complete. It explains the core functionality and recursive option. The presence of an output schema reduces the need to detail return values. Some missing aspects like error handling or performance considerations are minor 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?
The input schema covers 2 of 3 parameters (parent_id and recursive) with descriptions but misses debug. The description adds context by explaining that recursive=True fetches deep hierarchy and that the tool returns both tasks and sub-projects, enriching the schema's 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 clearly states the tool's purpose: 'Get child tasks of a specific parent task or project (experimental).' This specifies a verb (get), a resource (child tasks), and a constraint (of a specific parent), effectively distinguishing it from sibling tools like get_tasks or get_all_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 explicit guidance: 'Use when you need to see subtasks within a project or parent task.' It also details the recursive parameter behavior. However, it does not explicitly contrast with alternatives like get_tasks, which could also fetch tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_completed_tasksA
Get completed tasks from past 7 days with efficient date filtering and categorization.
Use when you need to review recent accomplishments or productivity patterns. For specific date, use get_completed_tasks_for_date(date). For custom time ranges, use get_productivity_summary_for_time_range().
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry full burden. Description mentions 'efficient date filtering and categorization' but doesn't explain categorization or output format. For a read operation, side effects are minimal, but further behavioral details (e.g., pagination, limits) are absent.
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?
Three sentences are efficient and front-loaded with purpose. However, omission of parameter documentation reduces value. Structure is clean but incomplete.
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 with one optional param and an output schema (content not shown). Description covers purpose and usage context but lacks detail on return format, categorization meaning, or debug behavior. Adequate but not thorough.
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 has one parameter 'debug' with 0% description coverage. The description fails to mention or define this parameter, leaving the agent without guidance on its purpose or usage.
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?
Description clearly states 'Get completed tasks from past 7 days', specifying verb, resource, and default scope. It distinguishes from sibling tools like get_completed_tasks_for_date and get_productivity_summary_for_time_range by mentioning them as alternatives for specific or custom ranges.
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?
Explicitly says when to use: 'review recent accomplishments or productivity patterns'. Also provides alternative tools for specific dates and custom time ranges, guiding selection effectively.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_completed_tasks_for_dateB
Get completed tasks for a specific date using efficient API filtering
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date in YYYY-MM-DD format (e.g., '2025-06-13') | |
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must fully disclose behavior. Mentions 'efficient API filtering' but does not state idempotency, rate limits, or what happens for invalid dates. Lacks critical context for a mutation-free 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?
Single sentence, front-loaded with key information. Could benefit from minor expansion but remains 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?
Given output schema exists and parameter count low, description is somewhat complete. However, lacks details on response structure or common use cases. Adequate but not thorough.
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 50% (date described, debug not described). Description adds no parameter-specific meaning; 'efficient API filtering' is vague and not parametric. Does not compensate for undocumented debug parameter.
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?
Clearly states action (get), resource (completed tasks), and constraint (for a specific date). Distinguishes from sibling 'get_completed_tasks' which likely returns all completed 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?
Implies usage for specific date queries but lacks explicit when-not or alternative tool guidance. The sibling 'get_completed_tasks' is a natural alternative but not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_currently_tracked_itemC
Get currently tracked item from Amazing Marvin
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It fails to disclose what happens when no item is tracked (e.g., returns null or error), whether the tool is read-only, or any side effects. The output schema exists but is not detailed here.
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. However, it is too minimal to be considered well-structured; it adds no value beyond the tool name itself.
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 presence of an output schema (not shown), the description might be partially complete if the schema provides details. However, it lacks explanation of the debug parameter and overall behavior, making it insufficient for reliable tool selection.
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 0%, meaning the single parameter 'debug' lacks any description. The tool description does not mention this parameter, leaving its purpose and impact entirely unexplained.
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 verb 'Get' and resource 'currently tracked item', making the purpose immediately understandable. However, it does not explicitly differentiate from sibling tools like 'get_time_tracks' or 'time_tracking_summary', which could cause confusion about when to use this specific tool.
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 usage guidelines are provided. The description does not indicate when to use this tool versus alternatives such as 'start_time_tracking' or 'get_time_tracks', nor does it mention prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_daily_productivity_overviewA
Get comprehensive daily productivity overview with today's tasks, overdue items, completed items, and planning insights.
Primary tool for daily planning and productivity. Consolidates multiple data sources efficiently. Use when you need a complete view of today's work situation.
For specific data only, use: get_tasks() (today's scheduled), get_due_items() (overdue), get_all_tasks() (comprehensive search), or get_completed_tasks() (recent completions).
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavior. It states 'Consolidates multiple data sources efficiently' but does not explicitly state read-only nature or disclose any potential side effects. Middle ground.
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?
Three concise sentences with clear structure; alternatives listed in a bullet-like format. No unnecessary 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?
Given one parameter and an output schema, the description covers tool purpose, usage context, and alternatives. Missing only parameter explanation, which is minor.
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?
Only one parameter (debug) exists with 0% schema coverage. The description does not mention or explain this parameter. Even though trivial, it fails to compensate for the lack of 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?
Description clearly states 'Get comprehensive daily productivity overview' and lists included data (tasks, overdue, completed). It distinguishes from siblings by naming alternatives like get_tasks and get_due_items.
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?
Explicitly says 'Primary tool for daily planning and productivity' and 'Use when you need a complete view of today's work situation'. Provides when-not usage via specific tool alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_due_itemsA
Get overdue and due tasks only (past due date).
Use when you need to focus specifically on urgent/overdue items. For complete daily view including today's tasks, use get_daily_productivity_overview().
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden for behavioral disclosure. It indicates a read operation by getting tasks but does not disclose auth needs, scope (e.g., user-specific or project-wide), pagination, or side effects. Lacks deeper behavioral context beyond filtering, but the core behavior is clear.
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 two sentences plus a usage line, all front-loaded and essential. Every sentence adds value 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?
Has an output schema (not shown) and a single optional parameter. The description explains the filtering logic but omits scope details (e.g., whether tasks are user-specific or from all projects). Given sibling tools like get_all_tasks, clarifying scope would improve completeness, but overall adequate for a simple 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 has one parameter (debug boolean with default false) at 0% schema description coverage. The tool description does not mention the debug parameter or explain its effect, so it adds no semantic value beyond the schema. A simple parameter, but the description should at least hint at its purpose.
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 'Get overdue and due tasks only (past due date)', providing a specific verb and resource. It distinguishes from the sibling tool get_daily_productivity_overview by noting that the latter is for a complete daily view.
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?
Explicitly states when to use ('when you need to focus specifically on urgent/overdue items') and when not to ('For complete daily view including today's tasks, use get_daily_productivity_overview()'). Provides clear alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_goalsC
Get all goals from Amazing Marvin
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description lacks behavioral details. It does not mention that the tool is read-only (implied by 'get'), whether authentication is required, or any side effects. With no annotations, the description should provide more context but fails to do so.
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 very short and front-loaded, which is positive for conciseness. However, it sacrifices necessary detail, making it less effective. It earns its place by being succinct but at the expense of completeness.
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 having an output schema, the description is too minimal. It does not explain the scope of goals returned, the effect of the debug parameter, or any constraints. The tool is simple, but the description still lacks sufficient context for the agent to use it correctly.
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 includes a 'debug' parameter with a default value, but the description does not mention it or explain its purpose. With 0% schema description coverage, the description should compensate, but it completely ignores the parameter.
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 retrieves all goals from Amazing Marvin, which is specific and actionable. However, it does not differentiate from sibling tools like get_projects or get_all_tasks, which might cause confusion for an AI agent selecting between similar list tools.
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. For example, it doesn't specify that it retrieves all goals without filtering, nor does it compare to other retrieval tools like get_all_tasks or get_projects.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_kudos_infoC
Get kudos and achievement information
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must carry the full burden of disclosing behavioral traits. It only states the purpose and gives no information about side effects, authentication needs, read-only nature, or any other behavioral aspects beyond the basic action.
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. It contains no unnecessary words, though it may be too terse for the required completeness.
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 having an output schema (not shown), the description does not explain what the output contains. With no annotations and minimal parameter info, the tool is underdescribed for an agent to invoke reliably.
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 single parameter 'debug' has no description in the schema (0% coverage) and the description adds no meaning or usage guidance for it. The agent cannot infer how or why to use this parameter.
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 ('get') and resource ('kudos and achievement information'), using a specific verb-noun pattern. It is distinguishable from siblings like 'get_account_info' which targets account info, but lacks detail to fully differentiate from other info-retrieval tools.
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 'get_account_info' or 'get_goals'. The description offers no context about prerequisites, limitations, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_labelsC
Get all labels from Amazing Marvin
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It only states 'Get all labels' without mentioning side effects, permissions, pagination, or any constraints.
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?
One short sentence is concise, but it lacks essential details. Conciseness is achieved at the cost of completeness.
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 and a simple schema, the description is insufficient. It does not explain the output (though an output schema exists) or any operational context, leaving an AI agent with little guidance.
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 0%, and the description does not mention the single 'debug' parameter. It adds no meaning beyond what the minimal schema 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 action (get) and resource (labels) and specifies the context (Amazing Marvin). It is specific but does not distinguish from sibling tools, many of which also use 'get'.
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 on when to use this tool versus others. The description lacks context about scenarios or when alternatives might be better.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_productivity_summary_for_time_rangeC
Get a comprehensive productivity summary for a specified time range
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Number of days to analyze from today backwards (default: 7 for weekly summary) Examples: 1 (today only), 7 (past week), 30 (past month) | |
| start_date | No | Start date in YYYY-MM-DD format (overrides days parameter) | |
| end_date | No | End date in YYYY-MM-DD format (defaults to today if start_date provided) | |
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It provides no information about side effects, required permissions, data volume, or how the time range is computed. The phrase 'comprehensive productivity summary' is vague and does not reveal behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise, but it omits important context about the tool's function. It is not overly verbose, but fails to earn its place with meaningful detail beyond the tool name.
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?
While the output schema exists to explain return values, the description does not mention what the summary includes (e.g., metrics, time tracking data) or any limitations. For a tool with four parameters and no annotations, the description is insufficiently 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?
Schema description coverage is high (75%) and parameter descriptions in the schema are detailed with examples. The tool description adds no new meaning beyond what the schema already provides, 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 uses 'Get a comprehensive productivity summary' which clearly indicates a retrieval operation on a summary resource. It specifies a time range, but does not differentiate from similar sibling tools like get_daily_productivity_overview or time_tracking_summary, so it falls short of 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 provided on when to use this tool versus alternatives. The description lacks any context about use cases, prerequisites, or when not to use it, leaving the agent to infer usage without explicit direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_project_overviewC
Get comprehensive overview of a project including tasks and progress
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | ||
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It mentions 'comprehensive overview' but does not specify the exact return fields, whether it includes nested tasks, or any side effects. The agent remains uncertain about the output scope.
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 of 9 words, which is concise and front-loaded. However, it could be expanded slightly to cover usage or parameters without losing brevity.
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 two un-described parameters, no annotations, and an output schema not shown, the description is insufficient. It lacks details on return values, error handling, or usage constraints, making it inadequate for complex 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?
The schema has 0% description coverage, and the description does not explain the parameters beyond their names. The 'debug' parameter and expected format of 'project_id' are not clarified, adding no value over the schema structure.
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 verb 'get' and the resource 'comprehensive overview of a project including tasks and progress'. It effectively conveys the tool's function, though it does not distinguish from sibling tools like 'get_projects'.
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 'get_projects', 'get_tasks', or 'get_child_tasks'. The description lacks context for the agent to make an informed choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_projectsA
Get all projects (categories with type 'project').
Use when you need project list for organization or project selection. For detailed project analysis, use get_project_overview(project_id).
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
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 states the tool retrieves all projects, implying a read operation. However, it does not disclose any behavioral traits like authentication requirements, rate limits, or potential limitations (e.g., pagination, ordering). The description is adequate 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 two sentences long, front-loading the core purpose and then providing usage guidance. Every sentence is useful and there is no redundant information. 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?
For a simple list tool with an output schema, the description covers the main functionality and usage context. However, it omits explanation of the debug parameter, which is a minor gap. Overall, it is sufficiently complete for typical use.
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 one optional boolean parameter 'debug' with no description, and schema description coverage is 0%. The description does not mention or explain this parameter, leaving its purpose ambiguous. The description should at least clarify when to use the debug flag.
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 'Get all projects' and defines projects as categories with type 'project'. It explicitly distinguishes from the sibling tool get_project_overview, which is for detailed analysis. This is specific and unambiguous.
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 explicit use cases: 'Use when you need project list for organization or project selection.' It also directs users to an alternative (get_project_overview) for detailed analysis, offering clear guidance on when to use this tool vs. its sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tasksA
Get today's scheduled tasks only.
Use when you need only today's scheduled items without overdue or completed items. For comprehensive daily overview, use get_daily_productivity_overview() instead. For all tasks across projects, use get_all_tasks().
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It clarifies scope (only today's scheduled, not overdue/completed), which is sufficient for a read-only retrieval tool. Could mention being read-only, but context implies it.
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?
Three concise sentences, front-loaded with the main purpose, no redundant information. Every sentence adds value.
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 returns tasks with an output schema, but description doesn't mention output structure. However, for a simple filtered list, the sibling differentiation and scope clarity are sufficient. Minor gap on the debug parameter.
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 only parameter 'debug' has no description in schema (0% coverage) and the description does not explain its purpose or effect. This leaves the agent uncertain about the parameter's role.
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 it retrieves 'today's scheduled tasks only', using specific verb and resource. It explicitly differentiates from siblings like get_all_tasks and get_daily_productivity_overview.
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?
Provides explicit when-to-use ('need only today's scheduled items') and when-not-to-use ('for comprehensive daily overview' or 'all tasks'), with clear alternative tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_time_tracksC
Get time tracking data for specific tasks
| Name | Required | Description | Default |
|---|---|---|---|
| task_ids | Yes | ||
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description only states 'get', implying read-only, but does not disclose return semantics, authentication, rate limits, or side effects. Output schema exists but description does not reference it, leaving the agent uninformed about what data is returned.
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?
Single sentence is concise but overly terse. It omits necessary details about parameters and output. Structure is minimal but not effectively front-loaded; the description sacrifices completeness for brevity.
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 2 parameters and an output schema, the description should provide at least a hint about the output (e.g., time logs per task) and parameter usage. It fails to do so, leaving the agent with incomplete context for reliable use.
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 0%. The description does not explain the 'task_ids' parameter (expected format, source) or the 'debug' parameter (effect). The agent has no semantic clues beyond parameter names, which are insufficient for correct invocation.
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 verb 'get' and resource 'time tracking data for specific tasks'. It distinguishes from sibling tools like time_tracking_summary (aggregate) and get_currently_tracked_item (current track). However, it could be more specific about what kind of data (e.g., durations, logs).
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 explicit guidance on when to use this tool versus siblings. Implied that it's for specific tasks, but no mention of alternatives like get_currently_tracked_item or time_tracking_summary. Lacks context for proper selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mark_task_doneC
Mark a task as completed in Amazing Marvin.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | Task ID to mark as done | |
| timezone_offset | No | Timezone offset in minutes from UTC (e.g., -480 for PST) | |
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It only states the action without disclosing side effects, authentication needs, rate limits, or any behavioral traits. The minimal description provides no transparency beyond the basic operation.
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, clear sentence with no redundant words. It earns top marks for conciseness.
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 3 parameters and an output schema, the description is too sparse. It does not explain return values, behavior nuances, or parameter roles. A more complete description would improve agent 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 coverage is 67% (two of three parameters described). The tool description adds no parameter information beyond what the schema provides, missing an opportunity to explain the timezone_offset or debug parameters.
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 a task as completed') and the application ('Amazing Marvin'), providing a clear purpose. However, it does not distinguish between marking a single task and batch marking (sibling batch_mark_done), which would earn 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 provided on when to use this tool versus alternatives like batch_mark_done, or context such as prerequisites. The description lacks usage context entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_time_trackingA
Start time tracking for a specific task.
Use when beginning focused work on a task to measure time spent. Check current tracking status with get_currently_tracked_item() or time_tracking_summary(). Stop tracking with stop_time_tracking(task_id).
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | ||
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. Mentions checking current status but does not disclose side effects (e.g., stopping previous tracking) or error conditions.
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?
Three sentences, front-loaded with purpose, then usage guidance. No unnecessary words, very 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?
Simple tool but description misses explanation of debug parameter and does not discuss preconditions (e.g., task must exist). Output schema fills some gaps but still 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?
Schema description coverage is 0%. The description only implies task_id but does not mention or explain the debug parameter, leaving a significant gap.
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?
Clear verb+resource: 'Start time tracking for a specific task.' Distinguishes from siblings like stop_time_tracking and get_currently_tracked_item.
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?
Explicitly states when to use ('when beginning focused work'), and provides clear pre- and post-usage steps (check status, stop tracking) with specific tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
stop_time_trackingC
Stop time tracking for a specific task
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | ||
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description lacks any behavioral details such as side effects, error conditions, or idempotency.
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?
Single sentence with no redundancy; however, it omits essential details for a useful description.
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?
Even with an output schema, description fails to mention return value or behavior when tracking not started, leaving critical 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 0%; description does not explain the purpose or format of 'task_id' or 'debug' parameter.
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?
Description clearly states action 'stop time tracking' and target 'for a specific task', differentiating from sibling 'start_time_tracking'.
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 on when to use vs. alternatives (e.g., when tracking is not active), and no prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
test_api_connectionA
Test the API connection and credentials.
Use when troubleshooting connection issues or verifying API setup. Returns "OK" if successful or error details if failed.
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description explains it returns 'OK' or error details, implying safe read-only behavior. No contradictions.
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?
Two concise sentences. Front-loaded with purpose and usage. 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 simple test tool with output schema, description covers purpose, usage, and return behavior. Complete enough.
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?
Only parameter 'debug' is not described. Schema coverage is 0%, so description should compensate, but it doesn't mention the parameter or its purpose.
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 tests API connection and credentials. The verb 'test' and resource are specific, and this tool is distinct from sibling tools that perform other operations.
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?
Explicitly tells when to use: for troubleshooting connection issues or verifying API setup. While it doesn't mention when not to use, the specificity is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
time_tracking_summaryA
Get time tracking overview and productivity insights.
Use when you need to check current time tracking status and get productivity metrics. For starting/stopping tracking, use start_time_tracking() or stop_time_tracking(). For daily productivity overview, use get_daily_productivity_overview().
| Name | Required | Description | Default |
|---|---|---|---|
| debug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| metadata | Yes | Metadata about the data itself |
| summary | Yes | Human-readable insights |
| debug | Yes | |
| success | Yes | |
| api_version | No | |
| response_version | No |
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 describes the tool as a read operation (get), which is implied to be safe. However, it does not disclose any specific behavioral traits such as rate limits, authentication requirements, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with four sentences, each serving a purpose. The key action is front-loaded, and the structure clearly separates usage guidance.
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 low complexity (one optional parameter, no required) and the presence of an output schema, the description is largely complete. The only gap is that it does not document the debug parameter, but the tool's purpose and usage are well explained.
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 one optional boolean parameter 'debug' with 0% schema description coverage. The description does not mention this parameter at all, so it adds no meaning 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 'Get time tracking overview and productivity insights', which is a specific verb and resource. It distinguishes from sibling tools like start_time_tracking, stop_time_tracking, and get_daily_productivity_overview by explicitly naming them as 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 explicitly states when to use ('check current time tracking status and get productivity metrics') and when not to use, providing alternative tool names for starting/stopping tracking and daily overview.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
28 tool updates
v1.0.2- First observed
batch_create_tasks - First observed
batch_mark_done - First observed
claim_reward_points - First observed
create_project - First observed
create_project_with_tasks - First observed
create_task - First observed
get_account_info - First observed
get_all_tasks - First observed
get_categories - First observed
get_child_tasks - First observed
get_completed_tasks - First observed
get_completed_tasks_for_date - First observed
get_currently_tracked_item - First observed
get_daily_productivity_overview - First observed
get_due_items - First observed
get_goals - First observed
get_kudos_info - First observed
get_labels - First observed
get_productivity_summary_for_time_range - First observed
get_project_overview - First observed
get_projects - First observed
get_tasks - First observed
get_time_tracks - First observed
mark_task_done - First observed
start_time_tracking - First observed
stop_time_tracking - First observed
test_api_connection - First observed
time_tracking_summary
TDQS
Most tools have distinct purposes, especially the task retrieval tools which are clearly differentiated by descriptions (e.g., get_all_tasks for comprehensive search, get_tasks for today's scheduled, get_due_items for overdue). However, there is still some overlap that could cause confusion for an agent, such as multiple ways to get completed tasks.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_task, mark_task_done, get_projects). Even batch operations follow the same pattern. No mixing of conventions, making it predictable and easy to understand.
With 28 tools, the server covers a wide range of functionality for a task management system (CRUD, time tracking, goals, kudos, etc.). While slightly above the ideal range, each tool serves a specific purpose and there are no unnecessary duplicates. A few tools could potentially be merged but overall it's well-scoped.
The tool set is notably incomplete for a task management system. There is no tool to update existing tasks (e.g., change title, due date, or description) nor to delete tasks permanently. The missing update and delete operations are significant gaps that will limit an agent's ability to fully manage tasks.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
- BleepOAuthcom.usebleep
Create Tasks and run Workflows in Bleep from Claude, ChatGPT, and other AI assistants.
Manage tasks, Focus Zone, notes, projects, and task history from compatible AI assistants.
AI-native Kanban board โ connect Claude to claim, work and move your tasks over MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceConnects AI assistants to Amazing Marvin for comprehensive task management, including creating and organizing tasks, time tracking, viewing schedules, and managing projects through natural language.MIT
- AlicenseBqualityDmaintenanceIntegrates the Amazing Marvin productivity system with AI assistants to manage tasks, projects, and time tracking. It enables users to query their workload, receive personalized productivity coaching, and update their schedule through natural language.2843MIT
- FlicenseNot gradedqualityDmaintenanceConnects Claude.ai to your Motion workspace, enabling task and project management via natural language.-
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants like Claude to create and manage projects, todos, priorities, and statuses through natural language, bridging the gap between AI and project management workflows.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/qemqemqem/Amazing-Marvin-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server