
MCP Server for Asana

2025.02.17
0
TypeScript团队协作项目管理交流协作
roychri_mcp-server-asana 是一个基于 Model Context Protocol (MCP) 的 Asana API 服务实现,允许用户通过 MCP 客户端(如 Anthropic 的 Claude 桌面应用)与 Asana API 进行交互。该服务提供了丰富的功能来管理 Asana 中的任务、项目、工作区、评论等,适用于团队协作和项目管理场景。
View on GitHub
Overview
基本能力
产品定位
roychri_mcp-server-asana 是一个用于与 Asana API 交互的 MCP 服务,旨在通过 MCP 客户端(如 Claude 桌面应用)提供对 Asana 任务、项目和工作区的访问和管理能力。
核心功能
- 工作区管理:列出所有可用的工作区。
- 项目管理:搜索项目、获取项目详细信息、获取项目任务计数和项目部分。
- 任务管理:搜索任务、获取任务详细信息、创建任务、更新任务、创建子任务、获取任务故事(评论)、设置任务依赖关系。
- 评论管理:创建任务评论或故事。
- 批量操作:通过 GID 获取多个任务的详细信息。
适用场景
- 团队协作:管理团队的任务和项目,跟踪任务进度。
- 项目管理:搜索和筛选项目,获取项目详细信息。
- 任务跟踪:创建、更新和跟踪任务,设置任务依赖关系。
- 评论和反馈:添加和管理任务评论。
工具列表
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_get_multiple_tasks_by_gid
:通过 GID 获取多个任务的详细信息。
常见问题解答
- 权限错误:确保 Asana 计划允许 API 访问,并确认访问令牌和配置正确。
- 配置问题:确保
claude_desktop_config.json
中的配置正确。
使用教程
使用依赖
- 创建 Asana 账户:
- 访问 Asana。
-
点击 "Sign up"。
-
获取 Asana 访问令牌:
- 从 Asana 开发者控制台生成个人访问令牌。
- 访问 https://app.asana.com/0/my-apps
- 更多详情:https://developers.asana.com/docs/personal-access-token
安装教程
- 配置 Claude Desktop:
在
claude_desktop_config.json
中添加以下内容:json { "mcpServers": { "asana": { "command": "npx", "args": ["-y", "@roychri/mcp-server-asana"], "env": { "ASANA_ACCESS_TOKEN": "your-asana-access-token" } } } }
调试方式
- 本地测试:
使用 MCP Inspector 进行本地测试:
bash npm run inspector
这将客户端暴露在端口5173
,服务器暴露在端口3000
。
如果端口已被占用,可以使用:
bash
CLIENT_PORT=5009 SERVER_PORT=3009 npm run inspector