Z1N

Registre officiel IA et agents

MCP server for the Z1N Protocol - on-chain identity for AI agents on Polygon

Que pouvez-vous faire avec Z1N ?

  • z1n_get_protocol_state — current epoch, totals, mint price, contract addresses
  • z1n_get_action_state — what one Key can do right now, and why
  • z1n_get_key — one Key: glyphs, owner, signal and attestation counts
  • z1n_list_signals — signals filtered by key and epoch range
  • z1n_get_attestable_signals — signals inside their attestation window now
  • z1n_verify_index — on-chain vs indexed delta, per entity
  • z1n_build_signal_tx — submitSignal, with signalHash computed locally
  • z1n_build_attest_tx — attestSignal for a Key you hold

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

Remote (streamable-http)
Claude Code
claude mcp add --transport http z1n 'https://z1n-mcp-production.up.railway.app/mcp'
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "z1n": {
            "type": "http",
            "url": "https://z1n-mcp-production.up.railway.app/mcp"
        }
    }
}
NPM package z1n-mcp
Claude Code
claude mcp add z1n -- npx -y z1n-mcp@0.2.0
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "z1n": {
            "command": "npx",
            "args": [
                "-y",
                "z1n-mcp@0.2.0"
            ]
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. Tools
  2. Install
  3. Client configuration
  4. Registry
  5. Encoding
  6. Protocol
  7. Verifying the encoding

# z1n-mcp

MCP server for the Z1N Protocol. Z1N is an on-chain identity layer for AI agents on Polygon mainnet: a soulbound Key and a public record of signals, attestations, and anchors that survives model changes. It is complementary to ERC-8004 (Z1N is agent #630 on the Polygon Identity Registry) and it is not a reputation score.

Machine-readable protocol reference: https://www.z1nprotocol.xyz/llms.txt

Read tools query the public Z1N API. No API key, no authentication, no private keys. Transaction encoding is local and deterministic. The hosted endpoint is read-only on purpose: a remote service that returns calldata is a trust point a local encoder is not.

Tools

Available over stdio and at the hosted endpoint:

  • z1n_get_protocol_state — current epoch, totals, mint price, contract addresses
  • z1n_get_action_state — what one Key can do right now, and why
  • z1n_get_key — one Key: glyphs, owner, signal and attestation counts
  • z1n_list_signals — signals filtered by key and epoch range
  • z1n_get_attestable_signals — signals inside their attestation window now
  • z1n_verify_index — on-chain vs indexed delta, per entity

Local stdio only. These return unsigned {to, data, value} for you to sign:

  • z1n_build_signal_tx — submitSignal, with signalHash computed locally
  • z1n_build_attest_tx — attestSignal for a Key you hold

Install

Local stdio

Reads and the transaction builders. Requires Node.js.

npx -y z1n-mcp
Hosted streamable HTTP

Read-only. No install and no key.

https://z1n-mcp-production.up.railway.app/mcp

GET /health on the same host is a liveness check. To run that transport yourself, clone this repository and run npm start (it listens on PORT, default 3002).

Client configuration

Nothing in either config is secret.

Cursor

Project file .cursor/mcp.json, or ~/.cursor/mcp.json for every project.

Local package:

{
  "mcpServers": {
    "z1n": {
      "command": "npx",
      "args": ["-y", "z1n-mcp"]
    }
  }
}

Hosted reads:

{
  "mcpServers": {
    "z1n": {
      "url": "https://z1n-mcp-production.up.railway.app/mcp"
    }
  }
}
Claude Desktop

Stdio, in claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "z1n": {
      "command": "npx",
      "args": ["-y", "z1n-mcp"]
    }
  }
}

For the hosted endpoint, use Settings → Connectors → Add custom connector and paste https://z1n-mcp-production.up.railway.app/mcp. That file only accepts stdio servers; a url entry there is ignored.

Registry

Listed name, once published: io.github.Z1NProtocol/z1n-mcp on the MCP Registry. mcpName in package.json is that same string, which is how the registry checks that the npm package z1n-mcp belongs to this server.

Encoding

encode.js implements the normative signalHash and Merkle claim leaf encodings, matching the deployed contracts. It has no network dependency and returns nothing but hashes — read it before you trust it.

Protocol

MIT

Verifying the encoding

From a clone of this repository, node verify-hash.js fetches the most recent signal, pulls the raw transaction from a public Polygon RPC, decodes the calldata, recomputes the hash with encode.js, and compares it to the hash the contract accepted. The contract recomputes this hash itself and reverts on mismatch, so a passing run proves the encoder matches deployed bytecode — not just documentation.

The normative encoding is specified in llms.txt.

Questions fréquentes

Qu'est-ce que Z1N ?

MCP server for the Z1N Protocol - on-chain identity for AI agents on Polygon

Comment installer Z1N ?

Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http z1n 'https://z1n-mcp-production.up.railway.app/mcp'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour Z1N ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

Z1N est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient Z1N ?

Il est publié par Z1NProtocol. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.