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
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
📄 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8c441768691231874a18dcc2e67b40a2dfd52bd48909880f312c568db6a48b3
|
|
| MD5 |
c6990d2bea96d90804ea3b34e7e782cb
|
|
| BLAKE2b-256 |
f5a652af9d785896af0c5238e9a4b7003cb4e07522722d88400030109427cb9a
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31a62f42ae7f8ef860e17a142f97e5d93dcdda644ed11f78cf6e4f5013aad7c0
|
|
| MD5 |
c2bc7e6761615a869cab8fba96f0ff49
|
|
| BLAKE2b-256 |
149071d063bb11d3b861da44c8a75a3ed741f81ddf1a1eeca0a7339633852b42
|