[MCP] Four issues found while integrating Asana's V2 MCP Server

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.

  1. 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).
  1. 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.
  1. 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.
  1. 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

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.