使用说明
Asana MCP服务器
提供与Asana项目管理平台集成的模型上下文协议(MCP)服务器。该服务器使AI助手能够通过标准化的界面与Asana任务、项目和工作空间进行交互。
特性
- 任务管理:创建、读取、更新和删除Asana任务
- 子任务支持:全力支持Asana子任务
- 项目管理:创建和管理Asana项目
- 部门组织:在项目中创建部分并组织任务
- 依赖项:添加和管理任务依赖关系
- 实时集成:与Asana的API直接集成
建筑
此MCP服务器遵循类似于atlasian MCP项目的模块化架构:
src/
├── core/ # Core business logic
│ ├── services/ # Service layer for API interactions
│ │ └── asana/ # Asana-specific services
│ ├── tools/ # MCP tool definitions
│ ├── resources/ # MCP resources (future)
│ ├── prompts/ # MCP prompts (future)
│ └── *.ts # Core registries
├── server/ # Server initialization
└── index.ts # Main entry point
安装
- 克隆存储库:
git clone <repository-url>
cd asana-mcp
- 安装依赖项:
npm install
- 通过创建
.env文件:
ASANA_TOKEN=your_asana_personal_access_token
ASANA_WORKSPACE_ID=your_workspace_id
ASANA_PROJECT_ID=your_default_project_id # Optional
用法
发展
npm run dev
生产
npm run build
npm start
可用工具
任务管理
create-task-创建新的Asana任务get-task-获取特定Asana任务的详细信息list-tasks-列出任务(可选择按项目筛选)update-task-更新现有任务delete-task-删除任务
子任务管理
create-subtask-为现有任务创建子任务list-subtasks-列出父任务的子任务update-subtask-更新现有子任务delete-subtask-删除子任务reorder-subtask-通过更改子任务的位置重新排序子任务
项目管理
create-project-创建一个新的Asana项目list-projects-列出所有项目delete-project-删除项目
组织
create-section-在项目中创建节add-task-to-section-将任务添加到特定部分
依赖项
add-dependencies-向任务添加依赖项remove-dependencies-从任务中删除依赖项get-dependencies-获取任务的依赖关系
配置
环境变量
ASANA_TOKEN:您的Asana个人访问令牌(必填)ASANA_WORKSPACE_ID:您的Asana工作区ID(必填)ASANA_PROJECT_ID:任务创建的默认项目ID(可选)
获取Asana证书
- 首选 Asana开发者控制台
- 创建新的个人访问令牌
- 通过在浏览器中访问Asana工作区并从URL复制ID来查找您的工作区ID
示例
创建任务
// Using the MCP tool
{
"name": "create-task",
"arguments": {
"name": "Review documentation",
"description": "Review and update the project documentation",
"dueDate": "2025-01-15",
"project": "1234567890"
}
}
列出项目中的任务
{
"name": "list-tasks",
"arguments": {
"projectId": "1234567890"
}
}
发展
项目结构
- 服务:中的业务逻辑和API交互
src/core/services/ - 工具:MCP工具定义
src/core/tools/ - 服务器:中的服务器初始化
src/server/
添加新功能
- 在中添加服务方法
src/core/services/asana/asana-service.ts - 在中创建工具定义
src/core/tools/asana-tools.ts - 在中注册工具
src/core/tools.ts
许可证
麻省理工学院
贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 如果适用,添加测试
- 提交拉取请求
支持
对于问题和功能请求,请使用GitHub问题跟踪器。
