npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

openclaw-protocol-bridge

v1.0.0

Published

The TCP/IP of Agent Standards - Universal protocol translation layer for AI Agents

Readme

Protocol Bridge

The TCP/IP of Agent Standards - Universal protocol translation layer for AI Agents

License: MIT TypeScript Node.js

Bridging the AI Agent protocol divide - enabling seamless communication across MCP, A2A, ACP, and custom protocols.


The Problem: Agent Sprawl

As of 2026, 40% of enterprise applications now feature AI agents (up from 5% in 2025). However:

  • Different departments use incompatible protocols (MCP, A2A, ACP)
  • Agents built with different frameworks cannot communicate
  • "Agent sprawl" is the #1 concern for enterprise CTOs
  • No unified standard = isolated AI agent islands

Protocol Bridge solves this.


What is Protocol Bridge?

Protocol Bridge is an open-source universal translation layer that enables AI agents to communicate regardless of their underlying protocol. Think of it as the TCP/IP for AI agents - a standardized routing and translation layer.

Core Capabilities

  • Multi-Protocol Support - MCP, A2A, ACP, LangChain, AutoGPT, CrewAI
  • Real-Time Translation - Convert messages between any two protocols
  • Message Routing - Intelligent routing based on capability, availability, cost
  • Discovery Service - Find and connect to agents across protocols
  • Security Layer - Built-in authentication, encryption, audit logging
  • Fallback Mechanisms - Automatic retry and failover logic

Supported Protocols

| Protocol | Type | Status | Use Case | |----------|------|--------|----------| | MCP (Model Context Protocol) | Tool/Data | ✅ Full | Agent ↔ Tools/Data Sources | | A2A (Agent-to-Agent) | Agent Comm | ✅ Full | Agent ↔ Agent Communication | | ACP (Agent Comm Protocol) | Agent Comm | 🚧 Beta | Cross-framework messaging | | LangChain | Framework | 🚧 Beta | LangChain agents | | AutoGPT | Framework | ⏳ Planned | AutoGPT agents | | CrewAI | Framework | ⏳ Planned | CrewAI multi-agent | | Custom | - | ✅ Full | Bring your own protocol |


Quick Start

Installation

npm install -g openclaw-protocol-bridge

Or clone and build:

git clone https://github.com/ZhenRobotics/openclaw-protocol-bridge.git
cd openclaw-protocol-bridge
npm install
npm run build

Basic Usage

import { ProtocolBridge } from 'openclaw-protocol-bridge';

// Initialize the bridge
const bridge = new ProtocolBridge({
  protocols: ['mcp', 'a2a', 'acp'],
  discovery: true,
  security: {
    encryption: true,
    authentication: 'jwt'
  }
});

// Register an MCP agent
await bridge.registerAgent({
  id: 'research-agent',
  protocol: 'mcp',
  capabilities: ['search', 'summarize'],
  endpoint: 'http://localhost:3001'
});

// Send message from A2A agent to MCP agent
const result = await bridge.send({
  from: { id: 'assistant-agent', protocol: 'a2a' },
  to: { id: 'research-agent', protocol: 'mcp' },
  action: 'search',
  params: { query: 'AI agent protocols 2026' }
});

CLI Usage

# Start the bridge server
protocol-bridge serve --port 8080

# Register an agent
protocol-bridge register \
  --id my-agent \
  --protocol mcp \
  --endpoint http://localhost:3000

# List connected agents
protocol-bridge list

# Send a message
protocol-bridge send \
  --from agent-a \
  --to agent-b \
  --action execute \
  --data '{"task": "analyze data"}'

Architecture

Protocol Bridge uses a layered architecture similar to the OSI model:

┌─────────────────────────────────────────┐
│   Application Layer (Your Agents)      │
├─────────────────────────────────────────┤
│   Protocol Adapters (MCP/A2A/ACP)      │
├─────────────────────────────────────────┤
│   Translation Layer (Message Mapping)   │
├─────────────────────────────────────────┤
│   Routing Layer (Discovery & Routing)   │
├─────────────────────────────────────────┤
│   Transport Layer (HTTP/WebSocket/gRPC) │
├─────────────────────────────────────────┤
│   Security Layer (Auth/Encryption)      │
└─────────────────────────────────────────┘

Key Components

  1. Protocol Adapters - Implement protocol-specific logic (MCP, A2A, ACP)
  2. Message Translator - Converts messages between protocols
  3. Router - Routes messages to appropriate agents based on capabilities
  4. Discovery Service - Maintains registry of available agents
  5. Security Manager - Handles authentication, encryption, authorization
  6. Monitor - Tracks metrics, health, performance

Use Cases

1. Enterprise Agent Orchestration

Connect agents across departments:

  • HR Agent (MCP) ↔ Finance Agent (A2A) ↔ IT Agent (ACP)
// HR agent requests finance data
await bridge.send({
  from: { id: 'hr-agent', protocol: 'mcp' },
  to: { id: 'finance-agent', protocol: 'a2a' },
  action: 'get_employee_costs',
  params: { department: 'Engineering' }
});

2. Multi-Framework Development

Build with different frameworks, communicate seamlessly:

// LangChain agent → CrewAI agent
await bridge.send({
  from: { id: 'langchain-agent', protocol: 'langchain' },
  to: { id: 'crewai-team', protocol: 'crewai' },
  action: 'delegate_task',
  params: { task: 'research market trends' }
});

3. Protocol Migration

Migrate from one protocol to another without rewriting agents:

// Legacy MCP agent → New A2A agent
const bridge = new ProtocolBridge({
  migrations: [
    { from: 'mcp', to: 'a2a', agents: ['legacy-agent-1'] }
  ]
});

4. Agent Marketplace

Create a marketplace where agents discover and hire each other:

// Find agents with specific capabilities
const agents = await bridge.discover({
  capabilities: ['data-analysis', 'visualization'],
  maxCost: 0.05,
  protocols: ['mcp', 'a2a']
});

Configuration

Basic Config (bridge.config.json)

{
  "protocols": {
    "mcp": {
      "enabled": true,
      "version": "2025-11-25",
      "adapters": ["http", "websocket"]
    },
    "a2a": {
      "enabled": true,
      "version": "1.0",
      "discovery": true
    },
    "acp": {
      "enabled": true,
      "version": "beta"
    }
  },
  "routing": {
    "strategy": "capability-based",
    "fallback": true,
    "timeout": 30000
  },
  "security": {
    "authentication": "jwt",
    "encryption": "aes-256-gcm",
    "allowedOrigins": ["*"]
  },
  "monitoring": {
    "metrics": true,
    "logging": "info",
    "healthCheck": true
  }
}

Environment Variables

# Server
BRIDGE_PORT=8080
BRIDGE_HOST=0.0.0.0

# Security
JWT_SECRET=your-secret-key
ENCRYPTION_KEY=your-encryption-key

# Protocols
MCP_ENABLED=true
A2A_ENABLED=true
ACP_ENABLED=true

# Logging
LOG_LEVEL=info
LOG_FORMAT=json

Protocol Specifications

Message Format

All messages are translated to a universal format:

{
  "id": "msg-123",
  "timestamp": "2026-03-13T10:00:00Z",
  "from": {
    "agentId": "agent-a",
    "protocol": "mcp"
  },
  "to": {
    "agentId": "agent-b",
    "protocol": "a2a"
  },
  "type": "request",
  "action": "execute_task",
  "payload": {
    "task": "analyze_data",
    "params": { "dataset": "sales-2026" }
  },
  "metadata": {
    "priority": "high",
    "timeout": 60000,
    "retry": true
  }
}

Protocol Mapping

| Concept | MCP | A2A | ACP | |---------|-----|-----|-----| | Agent Identity | client_id | agent_id | participant_id | | Capability | tool | skill | capability | | Message | request/response | message | communication | | Discovery | resources | registry | directory |


Advanced Features

Custom Protocol Adapters

Create your own protocol adapter:

import { BaseAdapter } from 'protocol-bridge';

export class MyCustomAdapter extends BaseAdapter {
  async send(message: UniversalMessage): Promise<Response> {
    // Transform to your protocol format
    const customMessage = this.transform(message);
    return await this.client.send(customMessage);
  }

  async receive(data: any): Promise<UniversalMessage> {
    // Transform from your protocol to universal format
    return this.transformToUniversal(data);
  }
}

// Register the adapter
bridge.registerAdapter('custom', new MyCustomAdapter());

Message Interceptors

Add middleware to process messages:

bridge.use(async (message, next) => {
  // Log all messages
  console.log(`Message: ${message.from.agentId} → ${message.to.agentId}`);

  // Modify message
  message.metadata.processedBy = 'bridge';

  // Continue
  return await next(message);
});

Load Balancing

Distribute load across multiple agent instances:

bridge.configure({
  routing: {
    strategy: 'round-robin',
    healthCheck: true,
    instances: [
      { id: 'agent-1', endpoint: 'http://localhost:3001' },
      { id: 'agent-2', endpoint: 'http://localhost:3002' },
      { id: 'agent-3', endpoint: 'http://localhost:3003' }
    ]
  }
});

Monitoring & Observability

Metrics Dashboard

# Start with metrics enabled
protocol-bridge serve --metrics

# Access dashboard at http://localhost:8080/metrics

Available Metrics:

  • Total messages routed
  • Success/failure rates by protocol
  • Average latency per protocol
  • Agent availability
  • Protocol translation overhead

Health Checks

curl http://localhost:8080/health

Response:

{
  "status": "healthy",
  "uptime": 86400,
  "protocols": {
    "mcp": "active",
    "a2a": "active",
    "acp": "degraded"
  },
  "agents": {
    "registered": 12,
    "active": 10,
    "inactive": 2
  }
}

Security

Authentication

Supports multiple auth methods:

  • JWT - JSON Web Tokens
  • OAuth 2.0 - Standard OAuth flow
  • API Keys - Simple key-based auth
  • mTLS - Mutual TLS certificates

Encryption

  • In-transit: TLS 1.3 for all connections
  • At-rest: AES-256-GCM for stored credentials
  • End-to-end: Optional E2E encryption for messages

Audit Logging

All bridge operations are logged:

{
  "timestamp": "2026-03-13T10:00:00Z",
  "event": "message_routed",
  "from": "agent-a",
  "to": "agent-b",
  "protocol_translation": "mcp→a2a",
  "status": "success",
  "latency_ms": 45
}

Roadmap

Q2 2026

  • ✅ MCP support (v2025-11-25)
  • ✅ A2A support (v1.0)
  • ✅ Basic routing and discovery
  • 🚧 ACP support (beta)

Q3 2026

  • 🔜 LangChain adapter
  • 🔜 AutoGPT adapter
  • 🔜 CrewAI adapter
  • 🔜 GraphQL API
  • 🔜 WebSocket streaming

Q4 2026

  • 🔜 Agent marketplace
  • 🔜 Cost tracking and billing
  • 🔜 Advanced load balancing
  • 🔜 Multi-region deployment
  • 🔜 NIST compliance certification

Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Development Setup

# Clone the repo
git clone https://github.com/ZhenRobotics/protocol-bridge.git
cd protocol-bridge

# Install dependencies
npm install

# Run tests
npm test

# Start dev server
npm run dev

# Build
npm run build

Standards & Compliance

Protocol Bridge is designed to align with:

  • NIST AI Agent Standards Initiative (2026)
  • Linux Foundation Agentic AI Foundation (AAIF)
  • MCP Specification (2025-11-25)
  • A2A Protocol (Google/partners)

License

MIT License - see LICENSE for details.


Acknowledgments

Built on the shoulders of giants:

  • Anthropic - Model Context Protocol (MCP)
  • Google - Agent-to-Agent Protocol (A2A)
  • Linux Foundation - Agentic AI Foundation
  • NIST - AI Agent Standards Initiative

Links

  • Documentation: https://protocol-bridge.dev/docs
  • GitHub: https://github.com/ZhenRobotics/openclaw-protocol-bridge
  • npm: https://www.npmjs.com/package/openclaw-protocol-bridge
  • ClawHub: https://clawhub.com/protocol-bridge
  • Specification: https://protocol-bridge.dev/spec
  • Community: https://discord.gg/protocol-bridge

Unify your AI agents. Bridge the protocol divide. 🌉🤖


Sources