mirror of
https://github.com/anthropics/claude-plugins-official.git
synced 2026-09-08 09:41:47 -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>
43 lines
1.9 KiB
Markdown
43 lines
1.9 KiB
Markdown
---
|
|
description: Set up the Asana V2 MCP server connection (one-time OAuth app + claude mcp add)
|
|
argument-hint: "[client_id]"
|
|
---
|
|
|
|
The user wants to connect Claude Code to Asana's V2 MCP server. Guide them through the one-time setup below. Do NOT run `claude mcp add` yourself — the `--client-secret` prompt needs a real terminal (a hidden TTY prompt), so the user must run it in their own terminal.
|
|
|
|
Their Asana OAuth Client ID (if provided): `$1`
|
|
|
|
Print these steps clearly, substituting the Client ID into the command if `$1` is non-empty (otherwise leave the `YOUR_CLIENT_ID` placeholder):
|
|
|
|
## Step 1 — Create an Asana OAuth app (one time)
|
|
|
|
1. Open 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
|
|
```
|
|
4. Copy the **Client ID** and **Client Secret**.
|
|
|
|
Note: `localhost` is correct — Claude Code is a local client and catches the OAuth callback on your own machine. Asana's V2 server does not support Dynamic Client Registration, so you must bring your own client_id + client_secret.
|
|
|
|
## Step 2 — Add the server (run this in YOUR terminal)
|
|
|
|
```bash
|
|
claude mcp add --transport http \
|
|
--client-id YOUR_CLIENT_ID --client-secret \
|
|
--callback-port 8080 \
|
|
asana https://mcp.asana.com/v2/mcp
|
|
```
|
|
|
|
- `--client-secret` (no value) triggers a hidden prompt; paste the Client Secret there. It is stored in your OS keychain.
|
|
- The port in `--callback-port` must match the `http://localhost:8080/callback` redirect you registered.
|
|
|
|
## Step 3 — Authenticate & verify
|
|
|
|
1. On first use, Claude Code opens your browser for Asana consent — approve it.
|
|
2. Run `/mcp` and confirm `asana` shows as **connected**.
|
|
3. Test it: ask "list my Asana workspaces".
|
|
|
|
After printing the steps, offer to help troubleshoot if they hit `invalid_redirect_uri` (redirect/port mismatch) or `invalid_client` (wrong id/secret).
|