A Python SDK for setting up Internet of Agents servers. This tool automates the process of configuring servers with DNS records, SSL certificates, and required software.
Pre-requistie commands
ssh into the servers
sudo apt update
sudo apt install python3 python3-pip
pip install git+https://github.com/aidecentralized/nanda-ioa-sdk.git
pip install git+https://github.com/aidecentralized/nanda-ioa-sdk.git
The setup requires two mandatory parameters:
--anthropic-key
: Your Anthropic API key--domain
: Your complete domain name (e.g., myapp.example.com)
Optional parameters:
--smithery-key
: Your Smithery API key for connecting to MCP servers. A default key will be provided by application for connectivitiy--agent-id
: A specific agent ID (if not provided, a random 6-digit number will be generated)--num-agents
: Number of agents to set up (defaults to 1 if not specified)
Example commands:
# Basic setup with random agent ID
ioa-setup --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> "
# Setup with specific agent ID
ioa-setup --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> --agent-id 123456
# Setup with multiple agents
ioa-setup --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> --num-agents 3
# Setup with your own smithery key
ioa-setup --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> --smithery-key <your_smithery_api_key>
After setup completes, verify your agent is running:
# Check service status
systemctl status internet_of_agents
# View logs
journalctl -u internet_of_agents -f
# list of servers
ps aux | grep run_ui_agent_https
Your agent will be:
- Running as a systemd service
- Accessible at your specified domain
- Automatically starting on server reboot
The SDK automatically:
- Generates a random 6-digit agent ID (if not specified)
- Gets your server's public IP
- Creates a DNS record (e.g., chat123456.nanda-registry.com)
- Installs required packages:
- Python and pip
- Git
- Certbot for SSL
- Nginx
- Sets up SSL certificates
- Clones the repository
- Sets up Python virtual environment
- Configures the systemd service
If you encounter any issues:
- Check the service status:
systemctl status internet_of_agents
- View detailed logs:
journalctl -u internet_of_agents -f
- For Route53 DNS issues, contact the IOA support team.
- Python 3.6 or higher
- Linux server (tested on Ubuntu)
- Anthropic API key
If you encounter any issues with Route53 DNS setup, please contact the IOA support team.
MIT License