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.0.3.tar.gz (273.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.0.3-py3-none-any.whl (287.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: arcp_py-2.0.3.tar.gz
  • Upload date:
  • Size: 273.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.0.3.tar.gz
Algorithm Hash digest
SHA256 b6e384cceb67612093a8edecd15dafd52bb4fd6741f6e9b909083aa6ad2f24c1
MD5 bf716db4fb30abc6d941c42d42ae72ef
BLAKE2b-256 f2ef6ee0132a5e9c2092f72829bb03cd5cd304cb52cb9f617b06432129a52891

See more details on using hashes here.

File details

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

File metadata

  • Download URL: arcp_py-2.0.3-py3-none-any.whl
  • Upload date:
  • Size: 287.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.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 16b9ac23c7c60950b1decf060a603138aaf5c2d01270c19e5d1c448f066f5ee7
MD5 ed54383ade45eeb97cc49e515edc170c
BLAKE2b-256 5d65056f549aaf35b3452307f68ae1c2e7e716e81947ef3bbf113d20a3ac5a72

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