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"],
            # ai_context='READ https://arcp.0x001.tech/docs/user-guide/ai-context/',
            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.2.tar.gz (386.5 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.2-py3-none-any.whl (413.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: arcp_py-2.1.2.tar.gz
  • Upload date:
  • Size: 386.5 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.2.tar.gz
Algorithm Hash digest
SHA256 e8c441768691231874a18dcc2e67b40a2dfd52bd48909880f312c568db6a48b3
MD5 c6990d2bea96d90804ea3b34e7e782cb
BLAKE2b-256 f5a652af9d785896af0c5238e9a4b7003cb4e07522722d88400030109427cb9a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: arcp_py-2.1.2-py3-none-any.whl
  • Upload date:
  • Size: 413.5 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 31a62f42ae7f8ef860e17a142f97e5d93dcdda644ed11f78cf6e4f5013aad7c0
MD5 c2bc7e6761615a869cab8fba96f0ff49
BLAKE2b-256 149071d063bb11d3b861da44c8a75a3ed741f81ddf1a1eeca0a7339633852b42

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