◎ Discry Score
asana.com
productivity · API
B
0 / 100
DISCOVERY0
COMPREHENSION0
Category leader: 92 (A)
Discry your API →
PRODUCTIVITY · RANK #8 OF 24

Asana is Good to agents.

Discry independently scored how well an AI agent can discover and understand the Asana API from what’s public — not whether it’s usable. Below: every signal we checked, what’s costing the score, and what to change.

Discry your API — freeView the docs ↗

SCORED UNDER RUBRIC 1.2 · A full re-launch under Discry Score 2.5 — a new behavioral instrument, not comparable to these scores — is in progress.

Discovery

45% of score · 62/100
OpenAPI specA machine-readable OpenAPI/Swagger spec agents can parse.Pass
llms.txtAn llms.txt index that points agents to the docs that matter.Pass
llms.txt qualityThe llms.txt is focused, current, and well under the size budget.Partial
llms-full.txtA full-text bundle agents can load in one request.Fail
AGENTS.mdAn AGENTS.md that tells coding agents how to build on the API.Fail
.well-known/mcp.jsonA discoverable MCP manifest at a well-known path.Fail
MCP registryThe API is listed in a public MCP registry.Pass
robots.txt AI directivesrobots.txt allows (or explicitly guides) AI crawlers.Pass
SitemapA sitemap so agents can enumerate the docs surface.Fail

Comprehension

55% of score · 90/100
Task-oriented descriptionsEndpoints described by what they accomplish, not just their shape.Pass
Realistic examplesRunnable, real-world request/response examples.Pass
Multi-step workflowsDocs that chain calls into complete jobs an agent can follow.Pass
Error-recovery guidanceDocumented failure modes and how to recover from them.Pass
Answer-first formatThe answer leads; preamble does not bury it.Pass
Capability boundariesClear limits — what the API can and cannot do.Pass
Naming consistencyConsistent, predictable naming across endpoints.Pass
Heading hierarchyClean heading structure agents can navigate.Pass
Markdown docsDocs available as clean markdown, not JS-rendered HTML only.Partial
Token efficiencyDocs are concise enough to fit an agent context window.Partial

What we found

  • Asana's error documentation is exemplary for agents: includes HTTP status codes with descriptions, realistic request/response examples, the Retry-After header pattern, and unique phrase codes for incident tracking
  • Rate limit documentation is among the best seen: specific numbers per tier (150/1500 req/min), concurrent limits by HTTP method, search-specific limits, and explicit guidance that rejected requests still count against quota
  • The OpenAPI spec is publicly maintained on GitHub (Asana/openapi) and actively used to generate official client libraries — agents can reliably generate API clients from it
  • Discovery infrastructure lags behind comprehension: no sitemap.xml, no llms-full.txt, no .well-known/mcp.json, no AGENTS.md — despite having excellent documentation content
  • The llms.txt at 108KB is a comprehensive link dump covering all guides and API reference endpoints but exceeds the 50KB threshold for efficient agent consumption

What to change

Prioritized by impact on discoverability. You (or your docs platform) deploy these — Discry never touches your API.

  1. 01Add sitemap.xml at developers.asana.com covering all API documentation pages — currently returns 404
  2. 02Create a focused API-only llms.txt (<10KB) summarizing core task management workflows and key endpoints, and add llms-full.txt with the complete API documentation in markdown
  3. 03Add .well-known/mcp.json pointing to the official Asana MCP server listed on PulseMCP and Smithery
  4. 04Add AGENTS.md to the Asana/openapi or Asana/node-asana repo with context for coding agents on common automation patterns
  5. 05Add sitemap.xml and consider serving docs with Accept: text/markdown content negotiation for direct LLM consumption

Execution coverage · INFORMATIONAL, UNSCORED

Whether an agent can actually complete a call and recover from errors is the deeper Audit layer — documented here, but not part of the Discry Score.

personal_access_tokenoauth2 Error format documented Rate limits documented Pagination documented Idempotency documented

Personal access tokens and OAuth2 authentication. JSON error responses with message field and unique phrase codes for support lookup. Comprehensive rate limits: 150 req/min (free), 1500 req/min (paid), with Retry-After headers. Pagination via offset-based cursors. Client libraries auto-retry on rate limits.

See your own Discry Score.

Drop your API docs URL. See what an agent sees — in 60 seconds, free.

Discry your API — free