mirror of
https://github.com/anthropics/claude-plugins-official.git
synced 2026-08-16 13:27:27 -03:00
* Migrate Asana plugin to V2 MCP server The V1 beta server (https://mcp.asana.com/sse) is deprecated and shuts down on 2026-08-05. Asana's V2 server (https://mcp.asana.com/v2/mcp) requires each user to register their own Asana OAuth app and does not support Dynamic Client Registration. A plugin manifest cannot carry per-user OAuth credentials, so the bundled MCP server entry is removed in favor of a documented one-time `claude mcp add` setup (per Asana's official Claude Code instructions). - Remove dead V1 sse .mcp.json - Add README with V2 OAuth setup + troubleshooting - Add /asana-setup slash command to guide the one-time setup - Update plugin + marketplace descriptions to reference V2 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * plugin-dev: stop using deprecated Asana V1 SSE endpoint in examples The Asana V1 SSE server (https://mcp.asana.com/sse) is deprecated and shuts down on 2026-08-05, and Asana V2 is streamable HTTP with manual OAuth — not SSE with automatic (DCR) OAuth. Replace the Asana SSE examples in the mcp-integration skill with neutral placeholders so the tutorial no longer teaches a dead endpoint or implies Asana is a zero-config SSE/OAuth server. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Greg Dardis <86272347+greg-dardis@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
69 lines
3.2 KiB
Markdown
69 lines
3.2 KiB
Markdown
# Asana
|
|
|
|
[Asana](https://asana.com) is a work management platform for tasks, projects, and goals. This plugin connects Claude Code to Asana's **V2 MCP server** so you can create and manage tasks, search projects, update assignments, and track progress directly from your terminal.
|
|
|
|
> **Migrating from V1?** The V1 beta server (`https://mcp.asana.com/sse`) is deprecated and shuts down on **Wed 5 Aug 2026**. The V2 server requires each user to bring their own Asana OAuth app — Dynamic Client Registration is **not** supported on V2, so there is no zero-config connect. Follow the setup below (or run `/asana-setup`).
|
|
|
|
## Setup
|
|
|
|
You only need to do this once. The fastest path is to run **`/asana-setup`** inside Claude Code and follow the printed steps, or do it manually:
|
|
|
|
### 1. Create an Asana OAuth app
|
|
|
|
1. Go to the [Asana developer console](https://app.asana.com/0/my-apps).
|
|
2. Create a new app.
|
|
3. Under **OAuth**, add this exact **Redirect URL**:
|
|
|
|
```
|
|
http://localhost:8080/callback
|
|
```
|
|
|
|
(This is Claude Code's local OAuth callback. It is `localhost` by design — Claude Code runs on your machine and catches the authorization code on a local listener. It must match the `--callback-port` you use below.)
|
|
4. Copy your **Client ID** and **Client Secret**.
|
|
|
|
### 2. Add the Asana V2 server to Claude Code
|
|
|
|
Run this in your terminal (not inside a Claude prompt — the secret is entered at a hidden prompt):
|
|
|
|
```bash
|
|
claude mcp add --transport http \
|
|
--client-id YOUR_CLIENT_ID --client-secret \
|
|
--callback-port 8080 \
|
|
asana https://mcp.asana.com/v2/mcp
|
|
```
|
|
|
|
- Replace `YOUR_CLIENT_ID` with the Client ID from step 1.
|
|
- `--client-secret` with no value makes Claude Code prompt for the secret and store it securely in your OS keychain (never on disk).
|
|
- `--callback-port 8080` must match the port in the redirect URL you registered.
|
|
|
|
### 3. Authenticate and verify
|
|
|
|
1. The next time the `asana` server is used, Claude Code opens your browser for Asana consent. Approve it.
|
|
2. Confirm the connection:
|
|
|
|
```
|
|
/mcp
|
|
```
|
|
|
|
You should see `asana` listed as **connected**.
|
|
3. Try it: ask Claude Code to "list my Asana workspaces" or "show my assigned tasks."
|
|
|
|
## Example usage
|
|
|
|
Ask Claude Code to:
|
|
|
|
- "Create an Asana task in the Backend project titled 'Fix login bug' assigned to me."
|
|
- "What are my Asana tasks due this week?"
|
|
- "Search Asana for projects about onboarding."
|
|
|
|
## Troubleshooting
|
|
|
|
- **`invalid_redirect_uri`** — the redirect URL in your Asana app must be exactly `http://localhost:8080/callback`, and the `--callback-port` must be `8080`. If you use a different port, register `http://localhost:<PORT>/callback` to match.
|
|
- **`invalid_client`** — double-check the Client ID and re-enter the Client Secret (`claude mcp remove asana`, then re-run the add command).
|
|
- **Auth server / DCR errors** — V2 does not support Dynamic Client Registration; you must supply a pre-registered `--client-id` and `--client-secret` as shown above.
|
|
|
|
## Documentation
|
|
|
|
- [Integrating with Asana's MCP server](https://developers.asana.com/docs/integrating-with-asanas-mcp-server)
|
|
- [Connecting MCP clients to Asana's V2 server (Claude Code)](https://developers.asana.com/docs/connecting-mcp-clients-to-asanas-v2-server)
|