Amazing Marvin MCP

Amazing Marvin MCP

Integrates the Amazing Marvin productivity system with AI assistants to manage tasks, projects, and time tracking. It enables users to query their workload, receive personalized productivity coaching, and update their schedule through natural language.

Category
Visit Server

README

๐Ÿš€ Amazing Marvin AI Assistant Integration

PyPI version Python 3.10+ License: MIT Model Context Protocol smithery badge

Connect your Amazing Marvin productivity system with AI assistants for smarter task management

<a href="https://youtu.be/xdB8DevqTik"> <img src="https://github.com/user-attachments/assets/d073cba7-3bdd-42de-ad11-37de7a2e752a" width="600"/> </a>

๐Ÿ“‹ Table of Contents

๐ŸŽฏ 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

<details> <summary>๐Ÿ–ฅ๏ธ Claude Desktop</summary>

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"
      }
    }
  }
}

</details>

<details> <summary>๐ŸŽฏ Cursor</summary>

Add to your MCP settings:

{
  "mcpServers": {
    "amazing-marvin": {
      "command": "python",
      "args": ["-m", "amazing_marvin_mcp"],
      "env": {
        "AMAZING_MARVIN_API_KEY": "your-api-key-here"
      }
    }
  }
}

</details>

<details> <summary>๐Ÿ’จ Windsurf</summary>

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"
      }
    }
  }
}

</details>

<details> <summary>๐Ÿ†š VS Code</summary>

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"
      }
    }
  }
}

</details>

๐Ÿ’ก 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

<details> <summary><strong>"API key not found" error</strong></summary>

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 </details>

<details> <summary><strong>"Connection refused" or timeout errors</strong></summary>

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 </details>

<details> <summary><strong>AI says "I don't see any Amazing Marvin data"</strong></summary>

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 </details>

<details> <summary><strong>Python module not found</strong></summary>

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 </details>

โ“ Common Questions

<details> <summary><strong>Is my data safe?</strong></summary>

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. </details>

<details> <summary><strong>Which AI assistants work with this?</strong></summary>

Any AI assistant that supports the Model Context Protocol, including Claude Desktop, Cursor, VS Code, and Windsurf. More are being added regularly. </details>

<details> <summary><strong>What can my AI assistant see?</strong></summary>

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. </details>

<details> <summary><strong>Will this make my AI assistant slower?</strong></summary>

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. </details>

<details> <summary><strong>Can my AI assistant change my tasks?</strong></summary>

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. </details>

<details> <summary><strong>Can I see completed tasks?</strong></summary>

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 </details>

<details> <summary><strong>What can't the MCP do?</strong></summary>

๐Ÿšซ 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. </details>

<details> <summary><strong>How often is the data updated?</strong></summary>

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. </details>

๐Ÿ‘จโ€๐Ÿ’ป 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.


<div align="center">

Made with โค๏ธ for Amazing Marvin users

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

</div>

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured