article
README
🚀 MCP Asana 集成服务器
这是一个基于 Model Context Protocol(模型上下文协议)的服务器,为管理 Asana 任务和项目提供了强大工具。它公开了创建、更新、列出和删除 Asana 任务与项目的方法,极大提升了 Asana 任务和项目管理的效率。
🚀 快速开始
本服务器是基于 Model Context Protocol 的强大工具,可高效管理 Asana 任务和项目。以下是快速上手步骤:
- 安装依赖:确保满足先决条件后,克隆仓库并安装依赖。
- 配置环境:复制并修改
.env.example文件。 - 启动服务器:选择合适的模式启动服务器。
- 使用客户端:通过简单客户端执行任务管理操作。
✨ 主要特性
任务管理
- 可使用名称、描述、截止日期、分配人和所属项目创建新的 Asana 任务。
- 能列出某个项目中的任务。
- 支持更新现有 Asana 任务,包括名称、描述、截止日期、分配人、完成状态。
- 可以删除 Asana 任务。
项目管理
- 可使用名称、说明、颜色和可见性设置创建新的 Asana 项目。
- 能列出工作区中的所有项目。
- 支持删除 Asana 项目。
📦 安装指南
先决条件
- Node.js 版本 14 或更高。
- 安装 Asana 开发人员凭据:
cp .env.example .env && edit .env
安装步骤
git clone [仓库地址]
cd mcp-asana
npm install
📚 详细文档
配置
复制 .env.example 文件并修改为以下内容:
ASANA_ACCESS_TOKEN=your_asana_access_token
ASANA_PROJECT_ID=your_asana_project_id
ASANA_WORKSPACE_ID=your_asana_workspace_id
使用说明
运行服务器
npm run build && npm start
开发模式
npm run dev
简单客户端
./simple-client.sh [命令]
./simple-client.sh create-task:创建任务./simple-client.sh list-tasks:列出所有任务./simple-client.sh update-task:更新任务./simple-client.sh delete-task:删除任务
项目结构
mcp-asana/
├── asana/ # Asana API 集成
│ ├── config.js # 配置和公用工具
│ ├── index.js # 主入口点
│ ├── index.d.ts # TypeScript 声明文件
│ ├── projects.js # 项目管理功能
│ └── tasks.js # 任务管理功能
├── src/
│ ├── server.ts # MCP 服务器实现
│ └── simple-client.ts # 命令行客户端
├── dist/ # 编译后的 JavaScript 文件
├── simple-client.sh # Shell 脚本
├── listWorkspaces.js # 列出所有工作区的工具
├── listAllProjects.js # 列出所有项目的工具
├── .env.example # 示例环境文件
└── package.json # 项目依赖项
已知限制
- 当前不支持 HTTP/SSE 运输。
- API 响应的错误处理有限。
- 列出任务或项目的分页功能缺失。
微信扫一扫