任务管理MCP服务器

一个高质量的模型上下文协议(MCP)服务器,将AI助手连接到强大的任务管理和生产力系统Amazing Marvin。

  • by LucaDeLeo
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 LucaDeLeo/amazing-marvin-mcp

使用说明

惊人的Marvin MCP服务器

🌐 在Smithery举办 -通过Claude和其他MCP客户端安装Amazing Marvin的免费访问权限

一个高质量的模型上下文协议(MCP)服务器,将AI助手连接到 神奇的马文强大的任务管理和生产力系统。内置于 FastMCP 并部署在 史密瑟里 对于托管,零安装访问。

✨ v2.0中的新增功能(Smithery)

完全迁移到Smithery进行托管部署:

  • 🌐 托管基础设施:不需要本地安装、Python或依赖项
  • 🔐 安全配置:通过Smithery的会话配置管理的API令牌
  • 📊 使用情况监控:跟踪服务器使用情况和性能
  • 🚀 自动部署:推送到GitHub→ 自动部署
  • 🔄 自动缩放:处理多个并发用户
  • 💪 相同功率:所有10个工具具有相同的功能

技术改进:

  • FastMCP框架 @smithery.server() 装饰器
  • 使用会话配置模式进行Pydantic V2验证
  • 上下文软件API身份验证
  • 双响应格式(Markdown/JSON)
  • 通过可操作的指导增强错误处理

快速开始

对于用户

  1. 获取您的Amazing Marvin API代币

    • 访问https://app.amazingmarvin.com/pre?api=
    • 复制您的 API_TOKEN
  2. 通过Smithery连接

    • 访问:https://smithery.ai/server/amazing-marvin-mcp
    • 点击“连接”
    • 提示时粘贴API令牌
    • 在Claude Desktop或其他MCP客户端中使用
  3. 开始使用

    "Show me my tasks for today"
    "Create a task to review Q4 budget tomorrow"
    "What categories do I have?"
    

面向开发者

看 微笑_深度.md 用于部署指南。

本地测试:

uv venv
uv pip install -r requirements.txt
uv run playground

特性

这个MCP服务器为Amazing Marvin提供了10个强大的工具:

📋 任务管理

  • 马文_任务 -创建完全支持日程安排、标签、时间估计和Amazing Marvin快捷方式的任务
  • marvin_gettodays_tasks -查看今天或特定日期安排的所有任务
  • 马文·马克多内 -将任务标记为已完成(幂等)
  • marvin_get_due_tasks -使用智能逾期指示器查看今天到期或逾期的所有任务

🗂️ 组织

  • 马文_类别 -列出所有带有ID的项目和类别
  • marvin_get_labels -查看所有带有ID的可用标签
  • 马文_孩子们 -浏览特定项目、类别或未分配区域中的任务

⏱️ 时间跟踪

  • 马文启动跟踪 -任务的开始时间跟踪
  • 马文停止跟踪 -停止当前正在运行的计时器

🎨 响应格式

所有列表操作都支持两种输出格式:

  • 标记语言 (默认):人类可读的标题、表情符号和格式
  • JSON:用于程序化处理的结构化数据

用法示例

创建任务

"Create a task called 'Review Q4 budget' due tomorrow with a 2-hour time estimate"

"Add a task 'Call dentist' with 15 minute estimate and schedule it for Friday"

"Create a task 'Finish presentation slides #Work @urgent ~120 +2024-03-20'"

Marvin在任务标题中的快捷方式令人惊叹:

  • #ProjectName -分配给项目
  • @label -添加标签
  • ~60 -预计时间(60分钟)
  • +2024-03-15 -设定到期日
  • ^1 -设置优先级

查看任务

"Show me my tasks for today"

"What tasks are due today or overdue?"

"List all tasks in my Personal category"

"Show me tasks for March 15, 2024 in JSON format"

管理任务

"Mark task task_abc123xyz as complete"

"Start tracking time on task task_abc123xyz"

"Stop the timer"

组织

"Show me all my categories and projects"

"What labels do I have?"

"List all unassigned tasks"

技术细节

建筑

Smithery部署:

  • Python 3.12+运行时
  • FastMCP框架 @smithery.server() 装饰器
  • 通过上下文感知身份验证 ctx.session_config
  • HTTP/SSE传输(非STDIO)

配置:

class AmazingMarvinConfig(BaseModel):
    api_token: str = Field(
        ...,
        description="Your Amazing Marvin API token. Get it from: https://app.amazingmarvin.com/pre?api=",
        min_length=10
    )

包装结构:

src/amazing_marvin_mcp/
├── __init__.py          # Package initialization
└── server.py            # Main server with tools

主要特点

  • Pydantic V2验证:具有详细约束的稳健输入验证
  • 以代理为中心的设计:为人工智能工作流优化的工具,而不仅仅是API包装器
  • 双响应格式:Markdown(人类可读)和JSON(机器可读)
  • 字符限制:智能处理大响应(25000个字符限制)
  • 工具注释:只读、破坏性和幂等操作的正确提示
  • 综合文档字符串:每个工具的详细文档和示例

错误处理

服务器提供可操作的错误消息:

  • 401未经授权:检查API令牌配置的指南
  • 404未找到:建议验证ID和项目是否存在
  • 429速率限制:建议等待重试
  • 500服务器错误:表示Amazing Marvin服务问题

所有错误都包括解决的具体后续步骤。

发展

本地设置

# Clone repository
git clone https://github.com/LucaDeLeo/amazing-marvin-mcp.git
cd amazing-marvin-mcp

# Create virtual environment
uv venv

# Install dependencies
uv pip install -r requirements.txt

测试

# Use Smithery playground (ngrok port-forwarding)
uv run playground

# Or run in development mode
uv run dev

建筑包

# Build distribution
python -m build

# Verify build
ls dist/
# Should show: amazing_marvin_mcp-2.0.0-py3-none-any.whl and .tar.gz

部署

看 微笑_深度.md 获取完整的部署指南。

快速部署:

  1. 推送到GitHub: git push origin main
  2. 首选https://smithery.ai/new
  3. 连接存储库
  4. 点击“部署”

API 参考

此服务器使用Amazing Marvin的有限访问API:

  • API 文档: https://github.com/amazingmarvin/MarvinAPI/wiki
  • 帮助中心: https://help.amazingmarvin.com/
  • API基本URL: https://serv.amazingmarvin.com/api

使用的端点:

GET  /api/categories       - List all categories/projects
GET  /api/labels          - List all labels
GET  /api/children        - Get items in category
GET  /api/todayItems      - Get scheduled tasks
GET  /api/dueItems        - Get due/overdue tasks
POST /api/addTask         - Create task
POST /api/markDone        - Complete task
POST /api/track           - Start/stop timer

安全说明

  • API令牌:加密存储在Smithery的会话配置中,从不存储在代码中
  • 仅限HTTPS:所有通信均通过TLS 1.2进行+
  • 输入验证:Pydantic模型可防止注入攻击
  • 受限访问API:附加安全层与完全访问

贡献

未来潜在的增强功能:

  • 文档更新/删除操作(/api/doc/update, /api/doc/delete)
  • 项目创建工具(/api/addProject)
  • 目标整合(/api/goals)
  • 习惯追踪(/api/habits, /api/updateHabit)
  • 提醒管理(/api/reminder/set)
  • 时间块查看(/api/todayTimeBlocks)
  • 跟踪项目状态(/api/trackedItem)
  • 积分系统

添加功能时,请遵循相同的模式:Pydantic模型→ @mcp.tool 装饰器→ ctx: Context 参数→ 共享公用设施→ 全面的文档。

支持

服务器问题:

  • GitHub问题:https://github.com/LucaDeLeo/amazing-marvin-mcp/issues

Smithery平台:

  • 电子邮件:support@smithery.ai
  • 不一致:https://discord.gg/Afd38S5p9A

神奇的马文API:

  • 电子邮件:support@amazingmarvin.com

许可证

MIT许可证-请参阅许可证文件

致谢


版本:2.0.0(Smithery部署) 仓库: https://github.com/LucaDeLeo/amazing-marvin-mcp 史密瑟里: https://smithery.ai/server/amazing-marvin-mcp