# caip2

Get the CAIP-2 chain id for this node:

Agent View of the PolicyLayer registry record for `caip2`. HTML page: https://policylayer.com/tools/network-tenzro-tenzro/caip2

## Facts

- Tool: `caip2`
- Server: Tenzro Ledger MCP (`https://canton-mcp.tenzro.network/mcp`) — https://policylayer.com/tools/network-tenzro-tenzro.md
- Homepage: https://github.com/tenzro/tenzro-network
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server auth posture: gated_ambiguous
- Server CORS policy: *
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Allowed

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "caip2",
    "arguments": {}
  }
}
```

## Why caip2 is rated Low

This tool retrieves and returns a chain identifier (CAIP-2 format) from the current node. It is a read-only query operation with no capability to modify, delete, execute code, or move funds. The blast radius of misuse is minimal—an agent could only obtain chain identification information, which is typically non-sensitive metadata.

From the tool's own definition: "Tool name and description: 'Get the CAIP-2 chain id for this node' — a pure retrieval operation that queries and returns a chain identifier with no side effects or state modifications."

## Use case

AI agents call caip2 to retrieve information from Tenzro Ledger MCP without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Tenzro Ledger MCP:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "caip2": {}
  }
}
```

## Other tools on Tenzro Ledger MCP (359)

- `clear_secure_mint_policy` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/clear-secure-mint-policy.md
- `delete_model` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/delete-model.md
- `deregister_agent` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/deregister-agent.md
- `drop_database` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/drop-database.md
- `forget_identity` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/forget-identity.md
- `freeze_address` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/freeze-address.md
- `revoke_did` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/revoke-did.md
- `revoke_session` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/revoke-session.md
- `secure_mint_record_burn` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/secure-mint-record-burn.md
- `urwa_clear_kill_switch` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/urwa-clear-kill-switch.md
- `urwa_trigger_kill_switch` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/urwa-trigger-kill-switch.md
- `x402_deregister_resource` — Destructive — https://policylayer.com/tools/network-tenzro-tenzro/x402-deregister-resource.md
- `assign_task` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/assign-task.md
- `axelar_call_contract` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/axelar-call-contract.md
- `babylon_submit_finality_signature` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/babylon-submit-finality-signature.md
- `canton_submit_command` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/canton-submit-command.md
- `chat_completion` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/chat-completion.md
- `chat_stream` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/chat-stream.md
- `create_swarm` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/create-swarm.md
- `database_query` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/database-query.md
- `deploy_contract` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/deploy-contract.md
- `derive_key` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/derive-key.md
- `download_model` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/download-model.md
- `encode_function` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/encode-function.md
- `encrypt_data` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/encrypt-data.md
- `hyperlane_dispatch` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/hyperlane-dispatch.md
- `moe_forward` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/moe-forward.md
- `rotate_validator_key` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/rotate-validator-key.md
- `send_agent_message` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/send-agent-message.md
- `set_secure_mint_paused` — Execute — https://policylayer.com/tools/network-tenzro-tenzro/set-secure-mint-paused.md
- …and 329 more: https://policylayer.com/tools/network-tenzro-tenzro.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=network-tenzro-tenzro · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/network-tenzro-tenzro
