Hi Asana team, we integrated Asana’s V2 MCP Server (https://mcp.asana.com/v2/mcp) via OAuth 2.0 with a pre-registered MCP App (standard endpoints Log in - Asana and -/oauth_token, with resource=https://mcp.asana.com/v2). Authorization, tools/list, and 21 of the returned tools work correctly.
We hit four issues worth surfacing — all on the Asana side, none blocking, but each degrades the agent experience.
- search_tasks — Premium-only warning appears to be stale
- Tool documentation (returned by tools/list): marked as available for “Premium accounts only”.
- Observed behavior: works exactly the same on a free workspace — returns tasks matching the query.
- Impact: LLM agents parse tool descriptions and will refuse to invoke search_tasks on free workspaces, or apologize to the user and stop, even though the call would succeed. This is a silent capability loss.
- Suggested fix: remove the “Premium accounts only” phrase from the description, or clarify precisely which query modes / filters are Premium-gated (if only a subset are).
- create_project_status_update — response missing permalink_url
- Documentation implies the response contains a permalink_url field pointing to the newly created status update.
- Observed behavior: the response object does not include permalink_url. The status update is created (verifiable via the Asana web app), but the tool cannot surface the link back to the user.
- Reproduction: call create_project_status_update on a project (we tested one containing sections and tasks) — inspect the returned object; permalink_url is absent.
- Impact: agents can’t hand the user a clickable link to what they just created — one of the most valuable acknowledgements an agent can give.
- Suggested fix: include permalink_url in the response, matching the pattern already used by create_tasks and create_project.
- Story descriptions missing text for some system events (resource_subtype: “unknown”)
- Tools involved: get_task_stories, get_status_overview.
- Observed behavior: a subset of system-generated stories (e.g. custom-field changes, due-date changes, some assignment changes) come back with resource_subtype: “unknown” and an empty or non-human-readable text field.
- Impact: agents summarizing task history skip or hallucinate around these events, weakening audit / activity summaries — one of the highest-value use cases for MCP against Asana.
- Suggested fix: expand the story renderer to emit a human-readable text for every resource_subtype, or at minimum populate resource_subtype accurately so a client can render its own description.
- Missing delete_project tool
- Observation: tools/list exposes create_project, update_project, create_task, delete_task, but no delete_project.
- Current workaround: call update_project with archived: true — archives, does not delete.
- Impact: agents that create projects for test / demo / one-off workflows cannot clean up after themselves; workspaces accumulate archived projects.
- Suggested fix: add delete_project to the MCP tool catalog, symmetrical to delete_task. Even if it maps to a soft-delete on the API side, exposing it fixes the symmetry issue.
Environment
- MCP endpoint: https://mcp.asana.com/v2/mcp (Streamable HTTP)
- OAuth: Log in - Asana / -/oauth_token, MCP App type, resource=https://mcp.asana.com/v2
- Client: internal integration hub (name withheld); tests run against both a free workspace and a Premium workspace.
- Date: 2026-09-17.
Happy to share workspace GIDs or transaction traces privately if it helps triage. Thanks for the great launch — the core CRUD path is genuinely solid, these are polish issues.