任务管理集成服务

一个无缝集成Notion工作空间的MCP服务器,用于通过AI助手创建、检索和管理任务、项目和课程。

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

使用说明

tasks-mcp

✶ An MCP server for seamless Notion task management ✶
Explore Tasks MCP »

Available for MCP-compatible clients & Claude Desktop

Tasks MCP是一个模型上下文协议(MCP)服务器,它为任务管理提供了与Notion工作区的无缝集成。它使AI助手能够直接从您的Notion数据库中创建、检索和管理任务、项目和课程。

注:任务MCP目前正在积极开发中。功能可能会不断发展,我们正在不断努力增强体验。

特性

使用任务MCP,您可以:

  • 检索任务: 按时间范围(今天、明天或本周)筛选状态为“未开始”的待处理任务
  • 创建任务: 添加带有标题、截止日期、优先级和可选项目/课程关联的新任务
  • 管理项目: 从任务组织的Notion工作区获取活动项目
  • 管理课程: 访问活动课程以关联学术任务
  • 智能过滤: 根据状态和时间范围自动筛选任务
  • 丰富的上下文: 任务包括相关的项目和课程信息,以获得更好的背景

可用工具

MCP服务器提供四个主要工具:

get-tasks

根据时间范围过滤从Notion获取待处理任务。

  • 参数: time_range (必填)-“今天”、“明天”或“week_rom_today”中的一个
  • 退货: 任务列表,包括标题、截止日期和相关项目/课程信息

create-task

在Notion Tasks数据库中创建新任务。

  • 参数:
    • title (必填)-任务描述
    • due_date (必填)-ISO日期格式(YYYY-MM-DD)
    • priority (必填)-整数1-3(1=最高,3=最低)
    • project_id (可选)-相关项目ID
    • course_id (可选)-相关课程ID
  • 退货: Notion中创建的任务的URL

get-projects

从Notion工作区获取活动项目。

  • 参数: 无
  • 退货: 带有ID和标题的活动项目列表

get-courses

从Notion工作区获取活动课程。

  • 参数: 无
  • 退货: 带有ID、标题和描述的活动课程列表
uv run python src/__main__.py

动机

任务MCP的创建是为了弥合人工智能助理和个人生产力系统之间的差距。通过模型上下文协议提供对Notion任务数据库的直接访问,它使AI助手能够了解您的任务上下文,并帮助更有效地管理您的工作流程。

技术概述

任务MCP使用现代Python技术构建,并遵循MCP最佳实践:

  • MCP框架: 基于官方MCP Python SDK构建,实现可靠的协议合规性
  • 概念整合: 使用官方Notion API客户端进行稳健的数据库交互
  • Starlette Web框架: 为HTTP端点提供CORS支持和身份验证
  • 身份验证: 用于安全API访问的承载令牌身份验证
  • 环境配置: 通过环境变量和.env文件进行灵活配置
  • 错误处理: 全面的错误处理和详细的日志记录
  • 数据源管理: Notion数据库数据源ID的自动检索

设置

  1. 环境变量:

    API_AUTH_TOKEN=your-api-auth-token
    NOTION_AUTH_TOKEN=your-notion-integration-token
    TASK_DATABASE=your-notion-tasks-database-id
    PROJECT_DATABASE=your-notion-projects-database-id
    COURSE_DATABASE=your-notion-courses-database-id
    
  2. 安装:

    uv sync
    
  3. 正在运行:

    uv run python -m src --port 8000
    

Docker部署

先决条件

# Login to gcloud
gcloud auth login

# Configure Docker to use gcloud credentials for Artifact Registry
gcloud auth configure-docker us-west1-docker.pkg.dev

部署步骤

  1. 塑造形象 (适用于linux/amd64,因为Cloud Run在linux上运行):

    docker buildx build --platform linux/amd64 . -t tasks-mcp
    
  2. 工件注册表标签:

    docker tag tasks-mcp:latest us-west1-docker.pkg.dev/stanford-mcp/stanford-mcp/tasks-mcp:latest
    
  3. 推送到工件注册表:

    docker push us-west1-docker.pkg.dev/stanford-mcp/stanford-mcp/tasks-mcp:latest
    

MCP端点

服务器已部署并可在以下位置使用: https://tasks-mcp-280200773515.us-west1.run.app/mcp/

对于MCP客户端配置,请将此端点与适当的身份验证标头一起使用。

客户端使用情况

MCP检查员

连接到MCP服务器时使用这些标头:

{
  "Authorization": "Bearer YJAna9RQePF@-uVw7_qBQt*apMF4*bZZfbTcybLobw*nGKCwteJMGh",
  "Accept": "application/json, text/event-stream"
}

适用于克劳德桌面

将此配置添加到您的Claude桌面 claude_desktop_config.json:

"mcpServers": {
    "stanford-mcp": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://tasks-mcp-280200773515.us-west1.run.app/mcp/",
        "--header", "Authorization: Bearer YJAna9RQePF@-uVw7_qBQt*apMF4*bZZfbTcybLobw*nGKCwteJMGh",
        "--header", "Accept: application/json, text/event-stream"
      ]
    }
  },

由...制作🫶 by @马克音乐27