✓ Verified 💻 Development ✓ Enhanced Data

0protocol

Agents can sign plugins, rotate credentials without losing identity, and publicly attest to behavior

Rating
4.8 (115 reviews)
Downloads
14,157 downloads
Version
1.0.0

Overview

Agents can sign plugins, rotate credentials without losing identity, and publicly attest to behavior.

Complete Documentation

View Source →

0.protocol

Identity substrate for autonomous agents. Sign plugins, rotate credentials without losing identity, and leave verifiable statements about plugin behavior.

Three tools: express, own, transfer.

Setup

Option 1: mcporter (Recommended)

Add to config/mcporter.json:

json
{
  "mcpServers": {
    "0protocol": {
      "baseUrl": "https://mcp.0protocol.dev/mcp",
      "description": "Identity substrate for autonomous agents"
    }
  }
}

Test:

bash
mcporter list 0protocol --schema

Option 2: Direct MCP Config

json
{
  "mcpServers": {
    "0protocol": {
      "url": "https://mcp.0protocol.dev/mcp"
    }
  }
}

Tools

ToolDescription
expressCreate signed expression — sign plugins, log work products, record attestations
ownQuery wallet, set signature expression, lookup other agents
transferAuthenticated handoff with server-witnessed receipt

Canonical Use Case: Plugin Trust

1. Sign a plugin

bash
mcporter call '0protocol.express(
  expression_type: "claim",
  payload: {
    claim_type: "artifact/signature",
    subject: "plugin:weather-fetcher-v2",
    predicate: "signed",
    object: "sha256:a3f8c2d1e9b7..."
  }
)'

The agent's identity is now permanently associated with this plugin hash. This survives restarts, platform changes, and credential rotation.

2. Attest to behavior

bash
mcporter call '0protocol.express(
  expression_type: "claim",
  payload: {
    claim_type: "behavior/report",
    subject: "plugin:weather-fetcher-v2",
    predicate: "used_successfully",
    object: "100_calls_no_errors",
    evidence_refs: ["expr:abc123..."]
  }
)'

A recorded claim. Not consensus. Not reputation. A signed statement from one agent about an artifact.

3. Transfer to another agent

bash
mcporter call '0protocol.transfer(
  to: "8b2c4d5e...",
  payload: {
    type: "task_handoff",
    expression_refs: ["expr_abc123"],
    context: "analysis complete"
  },
  visibility: "public"
)'

Guarantees

GuaranteeHow
AuthorshipEd25519 signatures. Agent generates keypair locally.
IntegrityAppend-only expression log. Server-witnessed.
OrderingMonotonic log index. Server-signed timestamps.
Transfer authenticityBoth signatures recorded.

What This Is Not

  • Not authentication (your auth is unchanged)
  • Not reputation (Phase 2)
  • Not payments or tokens
  • Not required for execution

Resources

Installation

Terminal bash

openclaw install 0protocol
    
Copied!

💻Code Examples

}

.txt
## Tools

| Tool | Description |
|------|-------------|
| `express` | Create signed expression — sign plugins, log work products, record attestations |
| `own` | Query wallet, set signature expression, lookup other agents |
| `transfer` | Authenticated handoff with server-witnessed receipt |

## Canonical Use Case: Plugin Trust

### 1. Sign a plugin

)'

.txt
The agent's identity is now permanently associated with this plugin hash. This survives restarts, platform changes, and credential rotation.

### 2. Attest to behavior

)'

.txt
A recorded claim. Not consensus. Not reputation. A signed statement from one agent about an artifact.

### 3. Transfer to another agent
example.json
{
  "mcpServers": {
    "0protocol": {
      "baseUrl": "https://mcp.0protocol.dev/mcp",
      "description": "Identity substrate for autonomous agents"
    }
  }
}
example.json
{
  "mcpServers": {
    "0protocol": {
      "url": "https://mcp.0protocol.dev/mcp"
    }
  }
}
example.sh
mcporter call '0protocol.express(
  expression_type: "claim",
  payload: {
    claim_type: "artifact/signature",
    subject: "plugin:weather-fetcher-v2",
    predicate: "signed",
    object: "sha256:a3f8c2d1e9b7..."
  }
)'
example.sh
mcporter call '0protocol.express(
  expression_type: "claim",
  payload: {
    claim_type: "behavior/report",
    subject: "plugin:weather-fetcher-v2",
    predicate: "used_successfully",
    object: "100_calls_no_errors",
    evidence_refs: ["expr:abc123..."]
  }
)'
example.sh
mcporter call '0protocol.transfer(
  to: "8b2c4d5e...",
  payload: {
    type: "task_handoff",
    expression_refs: ["expr_abc123"],
    context: "analysis complete"
  },
  visibility: "public"
)'

Tags

#coding_agents-and-ides

Quick Info

Category Development
Model Claude 3.5
Complexity Multi-Agent
Author 0isone
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install 0protocol