Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
Description from the maker (original English)
Change Asana without opening Asana — custom fields, sections, start dates, rich notes, bulk. PAT.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
ASANA_PAT, ASANA_WORKSPACE_GID, ASANA_MCP_TOOLSValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"asana": {
"command": "npx",
"args": [
"-y",
"@jtalk22/asana-mcp"
],
"env": {
"ASANA_PAT": "your-value",
"ASANA_WORKSPACE_GID": "your-value",
"ASANA_MCP_TOOLS": "your-value"
}
}
}
}Run this in your terminal
claude mcp add asana --env ASANA_PAT=your-value --env ASANA_WORKSPACE_GID=your-value --env ASANA_MCP_TOOLS=your-value -- npx -y @jtalk22/asana-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"asana": {
"command": "npx",
"args": [
"-y",
"@jtalk22/asana-mcp"
],
"env": {
"ASANA_PAT": "your-value",
"ASANA_WORKSPACE_GID": "your-value",
"ASANA_MCP_TOOLS": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"asana": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@jtalk22/asana-mcp"
],
"env": {
"ASANA_PAT": "your-value",
"ASANA_WORKSPACE_GID": "your-value",
"ASANA_MCP_TOOLS": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
ASANA_WORKSPACE_GID envASANA_MCP_TOOLS envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry name was verified with the GitHub account jtalk22, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: ASANA_PAT
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.0.1) reached the registry 3 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Agent-Native Google Calendar - manage events, sync, and public booking
Lets AI create and edit Excel files itself, including formulas, charts and PivotTables, without Excel installed.
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Asana MCP Server
Change Asana without opening Asana.
A local-first Asana MCP over the REST API: controlled writes, schema operations, diagnostics, and one-call briefs over a Personal Access Token.
npx -y @jtalk22/asana-mcp --setup
Claude Code Claude Desktop Cursor Copilot Windsurf Gemini CLI Codex CLI any stdio MCP client
Why this exists · Install · 75 tools · Composites · Slack + Asana · Honest limits · API reference
Asana's official V2 MCP server is the supported hosted choice: OAuth, workspace-scoped access, consolidated task writes, and interactive confirmations in supported clients. Its tool set changes over time, so use Asana's current tools reference rather than a frozen comparison table.
Choose this server when you want a transparent local stdio process and direct REST coverage:
| Need | This server's approach |
|---|---|
| Local operation | PAT + stdio. No hosted intermediary and no product telemetry. |
| Controlled agent surface | Mount read, write, all, or an explicit comma-list of tools. |
| Board and field design | Create fields and enum options, attach fields to projects, create/reorder sections, and instantiate templates. |
| Reliable REST edge cases | Typed custom-field values, section placement, rich task notes, start/due ordering, pagination, and bounded retry. |
| Large or repetitive work | Bulk loops continue past individual failures and report per-item outcomes. |
| Fewer agent round-trips | Morning briefs, user queues, portfolio rollups, board rollups, and inbox triage return decision-ready results. |
| Local diagnostics | --doctor, explicit workspace detection, generated tool reference, and release preflight. |
You can use both: the official service for managed OAuth and this package for local-first REST workflows or capabilities your operating model needs. To use this package, create a Personal Access Token, run --setup, and keep the process on your machine. It talks only to app.asana.com.
This package remains the full 75-tool, MIT-licensed local server. Nothing below is an unlock for missing tools.
The same maintainer is also building Keep the Thread, a managed continuity layer for an independent operator or two-to-five-person team that already works in Slack and Asana but does not want another dashboard. Its first cross-tool contract asks a narrower question:
Which Slack commitment is missing, incomplete, or stale in one selected Asana project?
flowchart LR
Slack["1–5 selected Slack channels"] --> Report["continuity_asana_discrepancy_report"] Asana["1 selected Asana project\nincomplete tasks only"] --> Report Report --> Gaps["matched commitments · gaps · task drift · next reviews"] Gaps --> Receipt["source IDs preserved\nwrites_performed: 0"]
| Choose | When it fits |
|---|---|
| This open-source package | You want local stdio, your own PAT, all 75 Asana REST tools, controlled writes, board/schema design, and no hosted intermediary. |
| Keep the Thread preview | You want a managed remote MCP endpoint, official connector consent, Slack-to-Asana discrepancy reporting, saved continuity contracts, or scheduled Slack delivery. |
The hosted Asana connector code is live and read-only, but public OAuth activation is still staged. See the representative input/output contract, inspect the live connector status, or request a bounded deployment review. Creating, updating, completing, or deleting Asana tasks is not part of the hosted discrepancy report.
1. Get a token — app.asana.com/0/my-apps → Personal access tokens → Create. Then either:
npx -y @jtalk22/asana-mcp --setup # stores it in the macOS Keychain (or ~/.asana-mcp.json, mode 600)
or export ASANA_PAT yourself.
2. Add the server to your MCP client:
{
"mcpServers": { "asana": { "command": "npx", "args": ["-y", "@jtalk22/asana-mcp"] } } }
Claude Code one-liner: claude mcp add asana -- npx -y @jtalk22/asana-mcp
3. Verify:
npx -y @jtalk22/asana-mcp --doctor # token → identity → workspace → tool surface, as JSON
Workspace is auto-detected when your token sees exactly one. Tokens that see several: set ASANA_WORKSPACE_GID (the doctor lists your options) or pass workspace per call.
start_on done right), custom fields (dates wrapped, multi_enum arrays), rich notes (sanitized), attachments (100MB uploads), bulk ops, project statuses, portfolios, templates with async-job polling, and asana_set_notes_safe for boards where automations rewrite what you just wrote.delete_task / delete_project / delete_section refuse to run without confirm: true.attach_file requires confirm: true and only reads from the current directory or ASANA_MCP_FILE_ROOTS.batch_ops rejects every non-GET action at both schema and runtime layers.Every tool declares MCP annotations — readOnlyHint, destructiveHint, idempotentHint, openWorldHint, titles. Clients that honor them (Claude Code does) auto-allow reads in plan mode, parallelize them safely, and gate the destructive three.
Trim the advertised surface with ASANA_MCP_TOOLS=read (30 tools), write, or a comma-list — a triage agent doesn't need delete tools in its context.
Full inputs and semantics: docs/API.md.
Five tools that replace ten-call round-trips, built from running real boards daily:
include_archived: true catches the open tasks hiding on archived boards — every default listing skips them.truncated: true) instead of pretending the tail doesn't exist; asana_user_queue and the list tools paginate past it where the REST API allows./batch endpoint silently discards PUT bodies and GET options upstream — so this server doesn't route writes through it. asana_batch_ops exists for GET-with-default-fields only, and its description says exactly that.html_text on stories) is downgraded to escaped plaintext *by Asana* — comments here are plain text by design rather than silently ugly.YYYY-MM-DD before comparing (a silent all-clear bug we hit and fixed).asana_user_queue uses the assignee route that works for anyone.More in docs/TROUBLESHOOTING.md.
Your PAT has the same access as your Asana login. It's read from ASANA_PAT, the macOS Keychain (asana-mcp), or ~/.asana-mcp.json (written mode 600) — never logged, never sent anywhere but api.asana.com's host. No telemetry, no phone-home; read SECURITY.md.
npm ci && npm test # 16 unit tests, no token needed
npm run doctor # live check against your workspace npm run api-docs # regenerate docs/API.md from lib/tools.js
PRs welcome — see CONTRIBUTING.md. MIT.
Also by the same author: @jtalk22/slack-mcp — catch up on Slack without reading it.