プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。Google でログインするとレビューを書けます。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

asana-gate

作者:sincekmoriバージョン 0.3.1i★ 0iパソコンで動く
レジストリ名io.github.sincekmori/asana-gate

インストール方法

What it does

Declarative access-control policy in front of the Asana API, served to AI agents over MCP.

  • Connects パソコンで動く
  • Account or key Needs ASANA_ACCESS_TOKEN
  • Category 文書・表計算・事務作業

インストール

使っているAIアプリを選んで、設定をコピーしてください。

チェック 3/3 合格 · あなたのパソコンで動きます

まず:どの AI を使っていますか?

使っているアプリを選ぶと、下に手順が表示されます。

Claude につなげますが、先に準備が必要です

asana-gate のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Node.js を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません

  1. Node.js を入れる

    1 回だけ。Node.js が必要なすべてのサーバーで使えます

    Node.js のダウンロードページを開く ↗

  2. asana-gate に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。

    キーの取り方は下の提供元 README にあります

  3. パソコン版 Claude アプリの設定ファイルを開く

    SettingsDeveloperEdit Config

  4. この設定を貼り付けて保存

    {
      "mcpServers": {
        "asana-gate": {
          "command": "npx",
          "args": [
            "-y",
            "asana-gate",
            "mcp"
          ],
          "env": {
            "ASANA_ACCESS_TOKEN": "your-value",
            "ASANA_GATE_POLICY": "your-value"
          }
        }
      }
    }

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  5. Claude を終了してもう一度開く

  6. 試してみる

    asana-gate を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Claude が asana-gate を使っていると言うか、回答に asana-gate のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

ChatGPT はまだ asana-gate につなげません

asana-gate はパソコンに入れて使うものですが、ChatGPT は Web 上で動くサーバーにしかつなげません

代わりにできること

A · asana-gate につなげるアプリを使う

  • asana-gate のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Node.js を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
  • asana-gate のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Node.js を入れてください(1 回だけ)
  • asana-gate のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Node.js を入れてください(1 回だけ)
  • asana-gate のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Node.js を入れてください(1 回だけ)

B · 文書・表計算・事務作業 の中で ChatGPT につなげる別のサーバー

同じカテゴリでよく使われているものから、キーなしでアドレスだけでつなげるものを選びました

Claude Code につなげますが、先に準備が必要です

asana-gate のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Node.js を入れてください(1 回だけ)

  1. Node.js を入れる

    1 回だけ。Node.js が必要なすべてのサーバーで使えます

    Node.js のダウンロードページを開く ↗

  2. asana-gate に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。

    キーの取り方は下の提供元 README にあります

  3. ターミナルを開く

    Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く

  4. このコマンドを貼り付けて Enter

    claude mcp add --scope user asana-gate --env ASANA_ACCESS_TOKEN=your-value --env ASANA_GATE_POLICY=your-value -- npx -y asana-gate mcp

    Enter の前に「your-value」を自分のキーに書き換えてください

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  5. Claude Code で /mcp と入力

    asana-gate が一覧にあり、接続済みと表示されれば OK です

  6. 試してみる

    asana-gate を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Claude Code が asana-gate を使っていると言うか、回答に asana-gate のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

Cursor につなげますが、先に準備が必要です

asana-gate のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Node.js を入れてください(1 回だけ)

  1. Node.js を入れる

    1 回だけ。Node.js が必要なすべてのサーバーで使えます

    Node.js のダウンロードページを開く ↗

  2. asana-gate に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。

    キーの取り方は下の提供元 README にあります

  3. このボタンで Cursor を開く

    Cursor で開く

    Cursor がインストールの確認をするので Install を押します

  4. キーを入力

    asana-gate の設定で ASANA_ACCESS_TOKEN, ASANA_GATE_POLICY が空です。自分のキーを入れて保存します

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  5. Cursor の AI チャットを Agent モードで開く

  6. 試してみる

    asana-gate を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Cursor が asana-gate を使っていると言うか、回答に asana-gate のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

VS Code につなげますが、先に準備が必要です

asana-gate のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Node.js を入れてください(1 回だけ)

  1. Node.js を入れる

    1 回だけ。Node.js が必要なすべてのサーバーで使えます

    Node.js のダウンロードページを開く ↗

  2. asana-gate に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。

    キーの取り方は下の提供元 README にあります

  3. このボタンで VS Code を開く

    VS Code で開く

    VS Code がインストールの確認をするので Install を押します

  4. キーを入力

    asana-gate の設定で ASANA_ACCESS_TOKEN, ASANA_GATE_POLICY が空です。自分のキーを入れて保存します

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  5. VS Code の AI チャットを Agent モードで開く

  6. 試してみる

    asana-gate を使って、私に何ができるか教えて、1 つやってみせて

    ✓ VS Code が asana-gate を使っていると言うか、回答に asana-gate のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

Windsurf、Zed、Gemini CLI など MCP を使える他のアプリは追加方法がそれぞれ違います。アプリ一覧で確認してください

MCP を使えるアプリをすべて見る →

JSON 設定は下の「開発者向け」にあります

つまずいたら?asana-gate を使っている人に聞いてみましょう💬 ディスカッション →
開発者向け:ターミナルのコマンドと JSON 設定

パソコンにインストール

Claude Code

claude mcp add --scope user asana-gate --env ASANA_ACCESS_TOKEN=your-value --env ASANA_GATE_POLICY=your-value -- npx -y asana-gate mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "asana-gate": {
      "command": "npx",
      "args": [
        "-y",
        "asana-gate",
        "mcp"
      ],
      "env": {
        "ASANA_ACCESS_TOKEN": "your-value",
        "ASANA_GATE_POLICY": "your-value"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "asana-gate": {
      "command": "npx",
      "args": [
        "-y",
        "asana-gate",
        "mcp"
      ],
      "env": {
        "ASANA_ACCESS_TOKEN": "your-value",
        "ASANA_GATE_POLICY": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "asana-gate": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "asana-gate",
        "mcp"
      ],
      "env": {
        "ASANA_ACCESS_TOKEN": "your-value",
        "ASANA_GATE_POLICY": "your-value"
      }
    }
  }
}

自分で入力する値

  • ASANA_ACCESS_TOKEN 秘密 env
    The Asana Personal Access Token the gate works with; not needed when one is saved with `asana-gate token set`.
  • ASANA_GATE_POLICY env
    The policy file to enforce; by default the project's .asana-gate/policy.yaml, else ~/.asana-gate/policy.yaml.

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

ひと目でわかる

週あたりのダウンロードi
932/週
接続方法
パソコンで動く
最新バージョンi
0.3.1
レジストリ公開日i
2026年11月12日
コードの最終更新i
2026年11月12日
作者
sincekmori
パッケージ
npm: asana-gate
レジストリでの状態
有効

使えるアプリ

このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。

パソコン上で動かせるアプリ

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

すべてのアプリと長所・短所 →

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月12日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント sincekmori で確認済みです

  • ✓ 合格

    今もメンテナンスされている

    コードの最終更新:今日

  • ✓ 合格

    ライセンスがある

    Apache-2.0を使用

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

話し合い

質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。

まだ投稿はありません。最初の質問や共有をどうぞ。

ここの投稿は利用者によるもので、PopNx チームのものではありません。

Google でログインして投稿

ユーザーレビュー

まだレビューはありません

Google でログインしてレビューを書く

文書・表計算・事務作業のほかのサーバーとの比較i

  • このカテゴリのほかの3785件のうち0%よりスターが多い
  • このカテゴリのほかの3785件のうち99%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの3785件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

asana-gateは安全ですか?

当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:ASANA_ACCESS_TOKEN

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は今日、最新バージョン(0.3.1)がレジストリに届いたのは今日です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:Puter MCP, XcodeBuildMCP, XcodeBuildMCP

同じカテゴリのほかの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Puter MCP

Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more

作者:HeyPuter広く使われている★ 4.4万5 か月前更新

クラウドで動く✓ 提供元 · puter.com

XcodeBuildMCP

XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.

作者:getsentry広く使われている↓ 13万/週 共有パッケージの数★ 65634 か月前更新

パソコンで動く✓ 提供元 · xcodebuildmcp.com

XcodeBuildMCP

XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.

作者:cameroncooke広く使われている↓ 13万/週 共有パッケージの数★ 656314 か月前更新

パソコンで動く

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

asana-gate

A declarative access-control policy in front of the Asana REST API, served to AI agents over MCP.

MCP client ──MCP──▶ asana-gate ──policy──▶ Asana REST API

You give an agent a Personal Access Token through asana-gate instead of directly. A policy file then decides, per project, section, task, tag or assignee, what the agent can see and do. Everything else does not exist for the agent.

Why

An Asana token grants everything its owner can do. Agents need much less: read this team, update tasks in that project, never touch the Done section, never delete. asana-gate turns such sentences into a YAML file and enforces it on every one of Asana's REST operations.

  • The policy is the only source of permissions. The token's rights are an upper bound; the default is deny.
  • Invisible, not forbidden. Objects the policy hides answer exactly like nonexistent gids (a 404 with Asana's own wording), and never appear in lists, searches, typeahead or events.
  • Every endpoint is covered. Every operation of Asana's OpenAPI definition is classified. A plain read, update or delete of one object (GET /tasks/{task_gid}) is classified from its path; any other operation Asana adds fails the build until it is classified, and the weekly OpenAPI report names every new one for review, so none passes through unreviewed.
  • MCP as specified. stdio and Streamable HTTP transports, no client-specific extensions.

Install

npm install -g asana-gate

Node.js 24 or later is required. npx asana-gate works too. The server is listed in the MCP Registry as io.github.sincekmori/asana-gate, for the clients and catalogs that read it.

Quick start

  1. Create a Personal Access Token and give it to asana-gate: exported for this shell, or saved in your home directory in a file only you can read (it is never printed).
   export ASANA_ACCESS_TOKEN="…"   # this shell only

asana-gate token set --user # or keep it in ~/.asana-gate/token, typed unseen or piped in

  1. Let asana-gate look at your workspace and create the project's .asana-gate directory: a policy skeleton, a settings file and a .gitignore that keeps personal settings and the token file out of git.
   asana-gate init
  1. Edit .asana-gate/policy.yaml, then validate it: names are resolved against Asana, every gid the rules name is checked to exist, and the token is checked.
   asana-gate check
  1. Serve it to your MCP client.
   asana-gate mcp

For Claude Code, asana-gate init --agent claude-code writes the project's .mcp.json, a copy of the skill and a permission rule that keeps the token from the agent (see Agents). For any other MCP host, register the command; started inside the project directory, asana-gate mcp finds the policy and the token by itself, and -C points it at the project when the host starts it elsewhere:

   {

"mcpServers": { "asana-gate": { "command": "npx", "args": ["-y", "asana-gate", "mcp", "-C", "/path/to/project"] } } }

Policy

A policy names one workspace and lists rules. Each rule has a scope (where), the actions it allows or denies there, and optionally constraints on the requests made there.

version: 1

workspace: "1200000000000001" # a gid or a name

rules:

No where: the whole workspace. Read everything.

  • allow: [read]

Everything a team owns is writable (create and update, no delete).

  • where: { team: "Platform" } allow: [write]

Full task work in one project, plus comments and tags.

  • where: { project: "1200000000000123" } allow: ["task:*", story:create, tag:apply]

...but its Done section is frozen (still visible; deny: ["*"] would hide it).

  • where: { project: "1200000000000123", section: "Done" } deny: [modify]

Tasks tagged ai-ok may be updated wherever they are already visible.

  • where: { tag: "ai-ok" } allow: [task:update]

Read a project, and update only these task fields in it.

  • where: { project: "Design System" } allow: [read] fields: { task: [completed, assignee, due_on] }

Tasks created here get a prefix and a tag, must have a due date,

are capped at 20 an hour, and are deleted only after a person confirms.

  • where: { project: "AI backlog" } allow: ["task:*"] require: { task: { due_on: true } } apply: { task: { name: { prefix: "[AI] " }, tags: { add: [ai-generated] } } } limit: { "task:create": { max: 20, per: 1h } } confirm: [task:delete]

Hide a project completely.

  • where: { project: "Payroll" } deny: ["*"]

Names are resolved to gids when the policy loads; an unknown or ambiguous name is an error. Gids always work. Every scope key accepts one value or a list (any of them matches).

Scopes
KeyMatchesLevel
_(none)_the whole workspace0
teamthe team and every project in it1
portfoliothe portfolio, its nested portfolios, and every project in them1
unhomed: truetasks that belong to no project (and inherit none from a parent task)1
projectthe project and everything in it2
sectiona section of the project given alongside (a section gid needs no project)3
subtreea task (gid) and all of its subtasks, recursively4
taskexactly that task (gid)5
tagfilter: tasks carrying the tag+
assigneefilter: tasks assigned to me, a gid or an email+
custom_fieldfilter: tasks whose field (by name or gid) holds one of the values, e.g. { Owner: AI }+
created_byfilter: tasks created by me, a gid or an email+
completedfilter: completed (true) or open (false) tasks+
has_parentfilter: subtasks (true) or top-level tasks (false)+
namefilter: tasks whose name satisfies prefix, suffix, contains or matches (a regex)+
overduefilter: tasks whose due date has passed (true) or not (false)+
due_withinfilter: tasks due within a duration from now, such as 7d+
created_withinfilter: tasks created within a duration, such as 24h+

Hierarchy keys in one where are ANDed. Filters (tag, assignee, custom_field and the state filters below them) are ANDed with the hierarchy keys and never make an object visible on their own: they narrow or widen what may be done with objects that another rule already lets the agent read, and they may hide objects (deny: [task:read]). For a create request, the filters see the object the request would create: its name after apply, the token's user as its creator, its due date and so on.

Objects that are not tasks live at the nearest hierarchy level: stories, attachments, time entries and the like follow their task; sections, briefs, status updates, memberships, templates and webhooks follow their project, portfolio or goal; tags, users, custom field definitions and most administrative resources live at workspace level.

Actions

An action is : . Groups and wildcards expand to concrete actions: read (every read), modify (every other verb, the complement of read), write (read plus every creating and modifying verb), admin (everything), * (same as admin), task:*, *:delete. A rule takes part only for the actions it names, so a scope is made read-only with allow: [read] and deny: [modify] together: the deny keeps a broader allow elsewhere from reaching it, and unlike deny: ["*"] it leaves the objects visible.

ResourceVerbs
taskread create update delete complete move add_project remove_project set_parent assign
story project_brief goal goal_relationship membershipread create update delete
attachmentread create delete
sectionread create update delete reorder
projectread create update delete archive manage_members
portfolioread create update delete manage_members
status_updateread create delete
tagread create update delete apply

| custom_field allocation budget rate role record table ooo_entry time_tracking_category `time_tracking_entr

冒頭だけを表示しています。続きはリポジトリで読めます