A local-first Asana MCP server that provides controlled writes, schema operations, diagnostics, and one-call briefs over the REST API using a Personal Access Token.
Warning. Serious findings were identified. Review the full report before connecting. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
jtalk22
Source: Glama
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
M8ven verifies MCPs across every public registry — install directly from whichever one you prefer.
ASANA_DEFAULT_ASSIGNEEASANA_DEFAULT_USERASANA_MCP_CONFIGASANA_MCP_FILE_ROOTSLocal file boundary — attach_file requires confirm: true and only reads from the current directory or .ASANA_MCP_KEYCHAIN_SERVICEASANA_MCP_TOOLSTrim the advertised surface with =read (30 tools), write, or a comma-list — a triage agent doesn't need delete tools in its context.ASANA_PATor export yourself.ASANA_WORKSPACE_GIDWorkspace is auto-detected when your token sees exactly one. Tokens that see several: set (the doctor lists your options) or pass workspace per call.Tool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
75/75 tools missing one or more hints — asana_add_to_project (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); asana_move_section (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); asana_set_custom_fields (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +72 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Tool test coverage
Only 5/75 tools referenced in tests (7%)
Write tests that reference each tool by name so every tool has at least one test.
Shell command execution
3 child_process/subprocess calls in production code — runs shell commands (lib/config.js:25, src/cli.js:72, src/cli.js:73)
Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.
Secrets never reach shell commands
2 secret values passed to shell commands — possible command injection
Never pass secrets through shell commands. Use library APIs that accept credentials as arguments.
Secrets not logged
1 secret value sent to console.log
Redact or omit secret values from log output.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/jtalk22-asana-mcp-server-1oea6x)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check