Skip to main content
Glama
qemqemqem
by qemqemqem

๐Ÿš€ Amazing Marvin AI Assistant Integration

PyPI version Python 3.10+ License: MIT Model Context Protocol

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

  1. Open Amazing Marvin โ†’ Settings โ†’ API

  2. Enable the API and copy your token

  3. Keep this handy! ๐Ÿ”‘

Step 2: Install

Easy way (Smithery):

npx -y @smithery/cli install @bgheneti/amazing-marvin-mcp --client claude

Paste the API key when prompted

Alternative (pip):

pip install amazing-marvin-mcp

Then 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 claude

Visit 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.json

  • Windows: %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?"

get_daily_productivity_overview()

"What tasks do I have today?"

get_daily_productivity_overview() or get_tasks()

"Show me my projects"

get_projects()

"What's overdue?"

get_due_items() or get_daily_productivity_overview()

"Create a new task for X"

create_task()

"Mark task Y as done"

mark_task_done()

"Start tracking time on this"

start_time_tracking()

๐Ÿ“ 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:

  1. Verify your API key is correct in Amazing Marvin Settings โ†’ API

  2. Check the environment variable: echo $AMAZING_MARVIN_API_KEY

  3. Restart your AI client after setting the key

  4. Ensure no extra spaces in your API key

Problem: Can't connect to Amazing Marvin API.

Solutions:

  1. Check your internet connection

  2. Verify Amazing Marvin service status

  3. Try the connection test: python -c "import requests; print(requests.get('https://serv.amazingmarvin.com/api').status_code)"

  4. Check if you're behind a corporate firewall

Problem: MCP is running but not returning data.

Solutions:

  1. Ask explicitly: "Use the Amazing Marvin tool to get my tasks"

  2. Check if you have any tasks in Amazing Marvin

  3. Verify API permissions in Amazing Marvin settings

  4. Restart your AI client

Problem: ModuleNotFoundError: No module named 'amazing_marvin_mcp'

Solutions:

  1. Reinstall: pip install --force-reinstall amazing-marvin-mcp

  2. Check Python path: python -c "import sys; print(sys.path)"

  3. Use full path: which python and 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 only

  • get_projects() - All projects

  • get_categories() - All categories

  • get_due_items() - Overdue/due items only

  • get_child_tasks( parent_id: str, recursive: bool = False ) - Subtasks of a parent task/project

  • get_all_tasks( label: str = None ) - Find all tasks with optional label filter (comprehensive search)

  • get_labels() - Task labels

  • get_goals() - Goals and objectives

  • get_account_info() - Account details

  • get_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 analytics

  • get_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 tasks

  • mark_task_done( item_id: str, timezone_offset: int = 0 ) - Complete tasks

  • create_project( title: str, project_type: str = "project" ) - Create new projects

  • start_time_tracking( task_id: str ) - Begin time tracking

  • stop_time_tracking( task_id: str ) - End time tracking

  • batch_mark_done( task_ids: list[str] ) - Complete multiple tasks

  • batch_create_tasks( task_list: list[str], project_id: str = None, category_id: str = None ) - Create multiple tasks

  • claim_reward_points( points: int, item_id: str, date: str ) - Claim kudos points

  • get_kudos_info() - Get reward system and kudos information

๐Ÿ”ง Utility Operations:

  • test_api_connection() - Verify API connectivity

  • get_project_overview( project_id: str ) - Project analytics

  • get_daily_focus() - Daily priorities

  • get_productivity_summary() - Performance metrics

  • time_tracking_summary() - Time analytics

  • quick_daily_planning() - Planning assistance

  • create_project_with_tasks( project_title: str, task_titles: list[str], project_type: str = "project" ) - Project setup

  • get_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.x

The workflow:

  1. โœ… Tests run on Python 3.8-3.12

  2. โœ… Linting and type checking pass

  3. ๐Ÿ“ฆ Package is built and checked

  4. ๐Ÿš€ 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

Report Issues โ€ข Suggest Improvements โ€ข Star on GitHub

Available Tools

28 tools
batch_create_tasksB

Create multiple tasks at once with optional project/category assignment

ParametersJSON Schema
NameRequiredDescriptionDefault
task_listYes
project_idNo
category_idNo
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idsYes
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
pointsYes
item_idYes
dateYes
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.3/5.0
Behavior2/5

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.

Conciseness2/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
project_typeNoproject
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
project_titleYes
task_titlesYes
project_typeNoproject
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesTask title (required)
project_idNoOptional project ID to assign task to
category_idNoOptional category ID for organization
due_dateNoOptional due date in YYYY-MM-DD format
noteNoOptional task notes/description
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNoOptional label name to filter by. If None, returns all tasks.
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.2/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
parent_idYesID of the parent task or project
recursiveNoIf True, recursively get all descendants (can be expensive)
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4.2/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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().

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYesDate in YYYY-MM-DD format (e.g., '2025-06-13')
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4.1/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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().

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4.1/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoNumber of days to analyze from today backwards (default: 7 for weekly summary) Examples: 1 (today only), 7 (past week), 30 (past month)
start_dateNoStart date in YYYY-MM-DD format (overrides days parameter)
end_dateNoEnd date in YYYY-MM-DD format (defaults to today if start_date provided)
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.6/5.0
Behavior1/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idYes
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4.1/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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().

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4.3/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idsYes
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness2/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesTask ID to mark as done
timezone_offsetNoTimezone offset in minutes from UTC (e.g., -480 for PST)
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

C2.6/5.0
Behavior1/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4.2/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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().

ParametersJSON Schema
NameRequiredDescriptionDefault
debugNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metadataYesMetadata about the data itself
summaryYesHuman-readable insights
debugYes
successYes
api_versionNo
response_versionNo

TDQS

A4.1/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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.

  1. 28 tool updatesv1.0.2
    • First observedbatch_create_tasks
    • First observedbatch_mark_done
    • First observedclaim_reward_points
    • First observedcreate_project
    • First observedcreate_project_with_tasks
    • First observedcreate_task
    • First observedget_account_info
    • First observedget_all_tasks
    • First observedget_categories
    • First observedget_child_tasks
    • First observedget_completed_tasks
    • First observedget_completed_tasks_for_date
    • First observedget_currently_tracked_item
    • First observedget_daily_productivity_overview
    • First observedget_due_items
    • First observedget_goals
    • First observedget_kudos_info
    • First observedget_labels
    • First observedget_productivity_summary_for_time_range
    • First observedget_project_overview
    • First observedget_projects
    • First observedget_tasks
    • First observedget_time_tracks
    • First observedmark_task_done
    • First observedstart_time_tracking
    • First observedstop_time_tracking
    • First observedtest_api_connection
    • First observedtime_tracking_summary

TDQS

B3.1/5.0
Disambiguation4/5

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.

Naming Consistency5/5

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.

Tool Count4/5

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.

Completeness2/5

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

ActivityInactive
ResponsivenessSyncing

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

Related MCP Servers

Latest Blog Posts

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