MCP Server for Asana

MCP Server for Asana

site icon
2025.03.13 0
TypeScript任务管理项目管理团队协作交流协作
mcp-server-asana 是一个基于 Model Context Protocol (MCP) 的 Asana API 服务实现,允许用户通过 MCP 客户端(如 Anthropic 的 Claude Desktop 应用)与 Asana 进行交互。该服务提供了丰富的功能,包括任务管理、项目管理、工作区管理、评论管理等,支持自定义字段操作和高级搜索功能。
View on GitHub

Overview

基本能力

产品定位

mcp-server-asana 是一个连接 MCP 客户端与 Asana API 的桥梁,旨在通过 AI 工具(如 Claude Desktop)简化 Asana 的任务和项目管理。

核心功能

  • 任务管理:创建、更新、查询任务,包括子任务和依赖关系管理
  • 项目管理:创建、查询项目,管理项目状态和部分
  • 工作区管理:列出工作区、团队和用户
  • 评论管理:添加和查询任务评论
  • 自定义字段操作:支持多种类型的自定义字段操作
  • 高级搜索:支持复杂的任务和项目搜索条件

适用场景

  • 通过 AI 工具查询 Asana 任务状态
  • 自动化创建和管理 Asana 任务
  • 批量操作 Asana 项目和任务
  • 集成 Asana 数据到 AI 工作流中

工具列表

  1. asana_list_workspaces - 列出所有可用工作区
  2. asana_search_projects - 按名称模式搜索项目
  3. asana_search_tasks - 在工作区中搜索任务
  4. asana_get_task - 获取任务详细信息
  5. asana_create_task - 创建新任务
  6. asana_get_task_stories - 获取任务评论
  7. asana_update_task - 更新任务
  8. asana_get_project - 获取项目详细信息
  9. asana_get_project_task_counts - 获取项目任务计数
  10. asana_get_project_sections - 获取项目部分
  11. asana_create_task_story - 创建任务评论
  12. asana_add_task_dependencies - 添加任务依赖
  13. asana_add_task_dependents - 添加任务依赖项
  14. asana_create_subtask - 创建子任务
  15. asana_add_followers_to_task - 添加任务关注者
  16. asana_get_multiple_tasks_by_gid - 批量获取任务
  17. asana_get_project_status - 获取项目状态
  18. asana_get_project_statuses - 获取所有项目状态
  19. asana_create_project_status - 创建项目状态
  20. asana_delete_project_status - 删除项目状态
  21. asana_set_parent_for_task - 设置任务父项
  22. asana_get_tasks_for_tag - 获取标签任务
  23. asana_get_tags_for_workspace - 获取工作区标签
  24. asana_create_section_for_project - 创建项目部分
  25. asana_add_task_to_section - 添加任务到部分
  26. asana_create_project - 创建新项目
  27. asana_get_teams_for_user - 获取用户团队
  28. asana_get_teams_for_workspace - 获取工作区团队
  29. asana_list_workspace_users - 列出工作区用户
  30. asana_get_project_hierarchy - 获取项目层次结构

常见问题解答

  • 权限问题:确保 Asana 计划允许 API 访问,并确认访问令牌配置正确
  • 自定义字段操作:注意不同类型自定义字段的值格式要求
  • 工作区设置:建议设置默认工作区 ID 以简化 API 调用

使用教程

使用依赖

  1. 需要 Node.js 环境
  2. 需要有效的 Asana 账户和访问令牌

安装教程

  1. 通过 npm 安装:
npm install -g @cristip73/mcp-server-asana
  1. 配置 Claude Desktop 的 claude_desktop_config.json:
{
  "mcpServers": {
    "asana": {
      "command": "npx",
      "args": ["-y", "@cristip73/mcp-server-asana"],
      "env": {
        "ASANA_ACCESS_TOKEN": "your-asana-access-token",
        "DEFAULT_WORKSPACE_ID": "your-default-workspace-id"
      }
    }
  }
}

调试方式

  1. 使用 MCP Inspector 进行本地测试:
npm run inspector
  1. 自定义端口(如果默认端口被占用):
CLIENT_PORT=5009 SERVER_PORT=3009 npm run inspector

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。