Skip to main content

ARCP (Agent Registry & Control Protocol) is a sophisticated agent orchestration protocol that provides centralized service discovery, registration, communication, and control for distributed agent systems.

Project description

ARCP - Agent Registry & Control Protocol

License: Apache 2.0 Python Code style: black Security PyPI version Docker

A sophisticated agent orchestration protocol that provides centralized service discovery, registration, communication, and control for distributed agent systems.

✨ Features

🔧 Centralized Management 🔍 Service Discovery 🤝 Agent Communication
Register & control agents Automatic endpoint resolution Secure agent collaboration
🛡️ Security 📊 Dashboard 🐳 Production
Built-in authentication Metrics & Alerts & Logs Docker & monitoring stack
⚙️ Extensible 👨‍💻 Developers 📚 Docs
Custom use cases Python client, API Guides & references

🚀 Quick Start

Running the Server

🐍 pip Installation

# Install ARCP
pip install arcp-py

# Set up configuration
curl -o .env https://raw.githubusercontent.com/0x00K1/ARCP/main/.env.example
# Edit .env file with your configuration

# Start the server
python -m arcp

🐳 Docker Deployment (Recommended)

For a complete production setup with monitoring, use Docker:

# Clone ARCP
git clone https://github.com/0x00K1/ARCP.git
cd ARCP

# Set up configuration
cp .env.example .env
cp .env.example deployment/docker/.env
# Edit .env file with your configuration

# Start full stack (ARCP + Redis + Monitoring)
cd deployment/docker
docker-compose up -d --build

💡 Need help? Check out our detailed Installation Guide.

🛠️ Agent Development

Build agents that integrate seamlessly with ARCP:

from arcp import ARCPClient, AgentRequirements

async def register_with_arcp():
    """Register this agent with ARCP"""
    # Create ARCP client
    arcp_client = ARCPClient("http://localhost:8001")
    
    try:
        # Register the agent
        agent = await arcp_client.register_agent(
            agent_id="my-agent-001",
            name="My Demo Agent",
            agent_type="automation",
            endpoint="http://localhost:8080",
            capabilities=["processing", "automation"],
            context_brief="A demo agent showcasing ARCP integration",
            version="1.0.0",
            owner="Developer",
            public_key="your-public-key-min-32-chars-long",
            communication_mode="remote",
            metadata={
                "framework": "fastapi",
                "language": "python",
                "created_at": "2025-09-20T03:00:00.000000",
            },
            features=["http-api", "json-responses"],
            max_tokens=1000,
            language_support=["en"],
            rate_limit=100,
            requirements=AgentRequirements(
                system_requirements=["Python 3.11+", "FastAPI"],
                permissions=["http-server"],
                dependencies=["fastapi", "arcp"],
                minimum_memory_mb=256,
                requires_internet=True,
                network_ports=["8080"]
            ),
            policy_tags=["utility", "demo"],
            agent_key="test-agent-001"
        )
        
        print(f"✅ Agent registered: {agent.name}")
        print(f"📊 Status: {agent.status}")
        
    finally:
        await arcp_client.close()

# Run the registration
import asyncio
asyncio.run(register_with_arcp())

🎯 Want to dive deeper? Explore our comprehensive Agent Development Guide.

📚 Documentation

Everything you need to get started, develop agents, and operate ARCP

📖 Complete Documentation

📄 License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arcp_py-2.1.0.tar.gz (385.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arcp_py-2.1.0-py3-none-any.whl (412.3 kB view details)

Uploaded Python 3

File details

Details for the file arcp_py-2.1.0.tar.gz.

File metadata

  • Download URL: arcp_py-2.1.0.tar.gz
  • Upload date:
  • Size: 385.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for arcp_py-2.1.0.tar.gz
Algorithm Hash digest
SHA256 79426cc77d4e0ca52832b913abc1de9c3b89a266e06fd72b20f5c5be81979614
MD5 efe0a5cb8a05d2205cb988413bf425f5
BLAKE2b-256 8520476058d3b66303ffa838f66eb231a4ed0cbe387259abbf853ffa63b8668f

See more details on using hashes here.

File details

Details for the file arcp_py-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: arcp_py-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 412.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for arcp_py-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bdf7e9806b6725a0d939e23b0195eeb44f37e7646341b227e1c701a8cc9e2c52
MD5 9a46dddf7337c2701155fd290c302be9
BLAKE2b-256 4541fc1e529c5eaf81a23bdfb8f0f564464457d0ebc93191e38937d0e8f64612

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page