open-index/open-npm huggingface dataset:
npm package: @marshal604/cursor-talk-to-asana-mcp
Description: Cursor Talk to Asana MCP
Latest version: 1.0.0

# Cursor Talk to Asana MCP

Cursor MCP 插件，用於與 Asana 整合。

## 功能

- 在 Cursor 透過 MCP 呼叫 Asana API
- 支援搜尋自然語意的任務

## 安裝

```bash
# 安裝依賴
npm install

# 編譯 TypeScript
npm run build
```

## 配置

1. 複製 `.env.example` 文件並重命名為 `.env`
2. 在 `.env` 文件中填入 Asana 的 Personal Access Token 和 Workspace ID

```
ASANA_ACCESS_TOKEN=your_asana_personal_access_token
ASANA_WORKSPACE=your_workspace_id
```

### 如何獲取 Asana Token 和 Workspace ID

1. **Personal Access Token**: 登錄 Asana 網頁版，前往 Settings -> Apps -> Developer Apps -> Personal Access Tokens -> Create New Token
2. **Workspace ID**: 在 Asana API 瀏覽器中，選擇你的工作區後，從 URL 中獲取 Workspace ID

## 使用

### 開發模式

```bash
# 啟動開發模式
npm run dev
```

### 在 Cursor 中註冊 MCP

使用 `.cursor/mcp.json` 文件進行配置：

```json
{
  "mcpServers": {
    "TalkToAsana": {
      "command": "bunx",
      "args": ["@marshal604/cursor-talk-to-asana-mcp@latest"]
    }
  }
}
```

所有必要的環境變數將從您的 `.env` 文件中讀取，確保在您運行 Cursor 的同一環境中已設置好 `.env` 文件。

然後在 Cursor 中重新加載 MCP 配置：按下 `Cmd+Shift+P` 並選擇 `MCP: Reload configuration`。

### 發布到 NPM

如果您想將此插件發布到 NPM，可以使用以下命令：

```bash
npm run pub:release
```

## 測試

你可以通過運行測試腳本來確認功能是否正常：

```bash
# 確保先設置好 .env 文件
npm run build
node dist/tests/testSearch.js
```

## 項目結構

```
├── src/
│   ├── asana/               # Asana API 相關代碼
│   │   ├── asanaClient.ts   # Asana API 客戶端
│   │   └── asanaService.ts  # Asana 服務層
│   ├── mcp/                 # MCP 相關代碼
│   │   └── asanaMcpHandler.ts # MCP 處理器
│   ├── utils/               # 工具函數
│   │   └── config.ts        # 配置處理
│   ├── types.ts             # 類型定義
│   └── server.ts            # 入口文件
├── .cursor/                 # Cursor 配置
│   └── mcp.json             # MCP 配置
├── .env.example             # 環境變數示例
├── tsup.config.ts           # tsup 配置
├── package.json             # 項目配置
└── tsconfig.json            # TypeScript 配置
```