
MCP Server for Asana

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 工作流中
工具列表
asana_list_workspaces
- 列出所有可用工作区asana_search_projects
- 按名称模式搜索项目asana_search_tasks
- 在工作区中搜索任务asana_get_task
- 获取任务详细信息asana_create_task
- 创建新任务asana_get_task_stories
- 获取任务评论asana_update_task
- 更新任务asana_get_project
- 获取项目详细信息asana_get_project_task_counts
- 获取项目任务计数asana_get_project_sections
- 获取项目部分asana_create_task_story
- 创建任务评论asana_add_task_dependencies
- 添加任务依赖asana_add_task_dependents
- 添加任务依赖项asana_create_subtask
- 创建子任务asana_add_followers_to_task
- 添加任务关注者asana_get_multiple_tasks_by_gid
- 批量获取任务asana_get_project_status
- 获取项目状态asana_get_project_statuses
- 获取所有项目状态asana_create_project_status
- 创建项目状态asana_delete_project_status
- 删除项目状态asana_set_parent_for_task
- 设置任务父项asana_get_tasks_for_tag
- 获取标签任务asana_get_tags_for_workspace
- 获取工作区标签asana_create_section_for_project
- 创建项目部分asana_add_task_to_section
- 添加任务到部分asana_create_project
- 创建新项目asana_get_teams_for_user
- 获取用户团队asana_get_teams_for_workspace
- 获取工作区团队asana_list_workspace_users
- 列出工作区用户asana_get_project_hierarchy
- 获取项目层次结构
常见问题解答
- 权限问题:确保 Asana 计划允许 API 访问,并确认访问令牌配置正确
- 自定义字段操作:注意不同类型自定义字段的值格式要求
- 工作区设置:建议设置默认工作区 ID 以简化 API 调用
使用教程
使用依赖
- 需要 Node.js 环境
- 需要有效的 Asana 账户和访问令牌
安装教程
- 通过 npm 安装:
npm install -g @cristip73/mcp-server-asana
- 配置 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"
}
}
}
}
调试方式
- 使用 MCP Inspector 进行本地测试:
npm run inspector
- 自定义端口(如果默认端口被占用):
CLIENT_PORT=5009 SERVER_PORT=3009 npm run inspector