Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
111 changes: 78 additions & 33 deletions docs/anthropic-directory-submission.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,15 @@
Everything needed to submit the production deployment
(`https://mcp.internetcomputer.org/mcp`) to Anthropic's Connectors Directory —
the catalog that serves Claude.ai, Claude Desktop, Claude Mobile, Cowork, and
Claude Code. Field drafts below are pre-filled from this repo and the live
deployment; paste and adapt them in the portal.
Claude Code. The listing is submitted and under review (see the log below).
The field drafts further down are what the submission was built from, with
the two fields submitted differently marked inline; keep them current for the
next edit of the listing.

Verified against the official docs on **2026-07-31**. The portal UI may add
details (e.g. exact icon dimensions) not published in the docs.
Verified against the official docs on **2026-07-31**; the portal location,
who can submit, the status model, and the review model re-verified
**2026-10-23**. The portal UI may add details (e.g. exact icon dimensions)
not published in the docs.

> **Server-state claims re-verified 2026-09-01.** Tool-surface numbers below
> were regenerated from a live scan of a deployed instance of the current
Expand All @@ -19,14 +23,24 @@ details (e.g. exact icon dimensions) not published in the docs.
> through, but `/version` and `/status/` answer with a redirect at that edge —
> the rows and steps below that relied on them say so inline.

## Submission log

- **2026-07-31** — pre-submission email to <mcp-review@anthropic.com> asking
ahead about the financial-transactions acknowledgment. It got an automated
acknowledgement (ticket `#120537913`, from directory@mail.anthropic.com)
and no human reply. The question it asked is moot now: the funding tools it
described were removed, and ledger methods are refused (blocker 2).
- **2026-09-28** — submitted through the portal as **"Internet Computer"**,
URL slug **`icp`** (manage page: <https://claude.ai/directory/manage/icp>).
Status **In review** since then; no reviewer feedback as of 2026-10-27.

## Where and how submission happens

- **Portal:** <https://claude.ai/admin-settings/directory/submissions/new>
(status/feedback afterwards at
<https://claude.ai/admin-settings/directory/submissions>).
- **Who can submit:** an **Owner** (or, on Enterprise, a custom role with the
*Directory management* permission) of a Claude **Team or Enterprise
organization**. There is no submission path for individual plans.
- **Portal:** <https://claude.ai/directory/manage> — new listings, and the
status and reviewer feedback of submitted ones. This listing's page is
<https://claude.ai/directory/manage/icp>.
- **Who can submit:** anyone on a **paid Claude plan** can submit through the
portal; no organization role is required.
- **Governing documents:**
[Anthropic Software Directory Policy](https://support.claude.com/en/articles/13145358)
(effective 2026-04-15) and
Expand All @@ -35,11 +49,21 @@ details (e.g. exact icon dimensions) not published in the docs.
- **Process docs:**
[Submission](https://claude.com/docs/connectors/building/submission),
[Review criteria](https://claude.com/docs/connectors/building/review-criteria),
[Submission status](https://claude.com/docs/directory/submission-status),
[Authentication](https://claude.com/docs/connectors/building/authentication).
- **Review:** automated policy scan first, then listing as a *Community*
connector; Anthropic may escalate to a human *Verified* review on its own.
No published SLA ("review times vary with queue volume"). Escalations and
special requests: <mcp-review@anthropic.com>.
connector; Anthropic may escalate to a human *Verified* review on its own,
in which reviewers run a functional test of each tool (hence the
test-credentials requirement under blocker 3). No published SLA ("review
times vary with queue volume").
- **Statuses** an MCP connector listing moves through: *Draft*, *In review*,
*Changes requested*, *Not approved*, *Approved*, *Published*. *In review*
means a person is checking the listing and the next move is Anthropic's.
Editing an *Approved* listing before it is published returns it to draft
for another review.
- **Escalations and special requests:** <mcp-review@anthropic.com>, giving
the listing name, the submitting organization, and the status the portal
shows.
- **Not required:** listing in the open MCP Registry
(registry.modelcontextprotocol.io) — the directory docs state its
domain-ownership proof "applies only to the open MCP Registry, not the
Expand Down Expand Up @@ -86,7 +110,7 @@ on unless `OAUTH_CIMD_ENABLED=0`), so Claude selects CIMD and registers nothing.

## Blockers to resolve before submitting

### 1. Privacy policy URL (hard blocker)
### 1. Privacy policy URL (hard blocker) — resolved

> "Missing or incomplete privacy policies result in immediate rejection."

Expand Down Expand Up @@ -150,8 +174,8 @@ current draft: the identifier-linkability wording and the updated third-party
list). The MCP server no longer serves a copy:
`https://mcp.internetcomputer.org/privacy-policy` answers with a permanent
redirect to that home ([#165](https://github.com/dfinity/imcp2/pull/165); the
gateway front redirects it as well). Enter the canonical URL in the portal.
The reviewed source
gateway front redirects it as well). That canonical URL is what the
2026-09-28 submission entered in the portal. The reviewed source
text is [`icp-mcp-privacy-policy-draft.md`](icp-mcp-privacy-policy-draft.md).

### 2. Financial-transactions policy
Expand Down Expand Up @@ -207,8 +231,12 @@ financial-transactions acknowledgment is made on that basis, without
qualifications.

**mcp-review thread:** an email to <mcp-review@anthropic.com> (2026-07-31)
asked ahead about this acknowledgment. No reply is needed to submit; if one
arrives, answer with the posture above.
asked ahead about this acknowledgment, describing the funding tools the
server served at the time. It got an automated acknowledgement only (ticket
`#120537913`, from directory@mail.anthropic.com) and no human reply, and the
question is moot: those tools are gone and ledger methods are refused, as
above. The submission made the acknowledgment on that basis; if a reviewer
raises it, answer with the posture above.

Related point for the same step: the **model-readable metadata describes the
surface and the constraints on using it, without attempting to manipulate
Expand Down Expand Up @@ -253,12 +281,16 @@ right call for this connector: Internet Identity is passkey-based and
device-bound, so a "shared account" would mean circulating a recovery phrase,
and every read-only tool works against public network state, so a
freshly-created identity exercises the bulk of the surface within a minute.

One tension to be ready for: the review criteria say *"Test credentials are
required and must be a fully populated account."* Self-serve sign-up is a
reasonable answer for an authentication system nobody can pre-provision into,
but a reviewer may still ask for a populated account — most plausibly to
exercise `canister_update_call` against an app where the identity has data.
The instructions went in with the 2026-09-28 submission package (the draft is
under *Reviewer test instructions* below).

One tension to be ready for: the review criteria say *"Test credentials:
required, and they must be for a fully populated account"*, and in a Verified
review the reviewers run a functional test of each tool. Self-serve sign-up
is a reasonable answer for an authentication system nobody can pre-provision
into, but a reviewer may still ask for a populated account — most plausibly
to exercise `canister_update_call` against an app where the identity has
data.
If that comes back, the fallback is a dedicated identity with a recovery
phrase in the team vault and an account at a demo app. (No controlled canister or
cycles balance is needed: the connector has no canister-management tools.)
Expand All @@ -279,6 +311,13 @@ release cut from current `main` (on-host `curl localhost:8000/version`, or the
deploy workflow's record) — or have the fronting layer forward `/version`
again so the check works from anywhere.

Since then the release scheme from
[#204](https://github.com/dfinity/imcp2/pull/204) is in place — an
`rc-X.Y.Z-N` tag deploys a candidate to staging, the matching `vX.Y.Z` tag
publishes the crates (which production embeds) and the local MCP — and the
crates are at 0.5.1. The on-host check above is still how the exact commit
production runs gets confirmed.

### 5. Icon asset — ready

The official ICP mark is committed at
Expand All @@ -299,16 +338,22 @@ the served pages keep using the DFINITY wordmark

## Portal field drafts

Paste-and-adapt; portal limits in parentheses.
What the 2026-09-28 submission was built from; portal limits in parentheses.
Two fields went in differently from their drafts and are marked
**superseded** below with what was submitted. Keep the rest current for the
next edit of the listing.

- **Server URL:** `https://mcp.internetcomputer.org/mcp`
- **Transport:** Streamable HTTP
- **Authentication mode:** OAuth 2.0 with Dynamic Client Registration
(`oauth_dcr`)
- **Name** (≤100 chars): `Internet Computer (ICP)` — matches what users
search; the landing page's `ICP MCP` is the alternative. The display name is
hard to change after publication.
- **URL slug** (permanent): `internet-computer`
- **Name** (≤100 chars): **submitted as `Internet Computer`**, which
supersedes the draft `Internet Computer (ICP)` (the landing page's `ICP MCP`
was the other alternative). The display name is hard to change after
publication.
- **URL slug** (permanent once published): **submitted as `icp`**, which
supersedes the draft `internet-computer`; the manage page is
<https://claude.ai/directory/manage/icp>.
- **Tagline** (≤55 chars): `Connect your AI chat to the Internet Computer`
- **Description** (≤2000 chars, draft):

Expand Down Expand Up @@ -432,10 +477,10 @@ conversation beyond tool arguments and generates no media.

## Submission-day checklist

- [ ] Privacy policy entered in the portal — enter `https://internetcomputer.org/icp-mcp/privacy-policy/`, the page's one home (live; the old mcp.internetcomputer.org URL permanently redirects there) (blocker 1)
- [x] Privacy policy entered in the portal — `https://internetcomputer.org/icp-mcp/privacy-policy/`, the page's one home (live; the old mcp.internetcomputer.org URL permanently redirects there), entered with the 2026-09-28 submission (blocker 1)
- [x] Financial-transactions acknowledgment is a clean yes (blocker 2): the server does not support financial transactions. No mcp-review reply is needed; if one arrives, answer with the stated posture. The first-party-API/data-handling question was NOT in the 2026-07-31 email: raise it with mcp-review only if the portal's data-handling options don't fit
- [x] Reviewer access settled: self-serve Internet Identity, instructions in the test-credentials field (blocker 3) — if a reviewer asks for a populated account, provision a demo-app account (no funding needed: there are no funding or canister-management tools)
- [ ] `vX.Y.Z` release cut (promoted from a staging candidate) and picked up by the gateway; production confirmed to run the intended commit by the operators — externally `/version` is cut off by the gateway front, so the check is on-host or via the deploy workflow's record (blocker 4)
- [x] Reviewer access settled: self-serve Internet Identity, test-account instructions included in the submission package (blocker 3) — if a reviewer asks for a populated account, provision a demo-app account (no funding needed: there are no funding or canister-management tools)
- [x] Release cut: the crates are at 0.5.1 and the `rc-*` (staging candidate) / `v*` (release) tag scheme from [#204](https://github.com/dfinity/imcp2/pull/204) is in place. Confirming the exact commit production runs stays an on-host check or the deploy workflow's record — externally `/version` is cut off by the gateway front (blocker 4)
- [x] Square PNG icon exported — `docs/assets/icp-logo-{1024,512}.png` (blocker 5)
- [ ] Every tool exercised once by the submitter (portal asks you to confirm this; MCP Inspector or a custom connector in Claude both count)
- [ ] Submitter has Owner / Directory-management access in DFINITY's Claude Team/Enterprise org
- [ ] Submitter is on a paid Claude plan (the portal's only access requirement; no organization role is needed)
Loading