Get Started
Set up your own AI-powered content management infrastructure in minutes.
Already Set Up?
If you already have Metarium AI infrastructure running, you don't need to start from scratch.
Have a Management Server?
Tell your AI agent the server URL (default: http://localhost:8420). The agent connects, checks GET /health, and picks up where you left off.
Have a CMS Deployed?
Provide your CMS URL to the agent. It works through your management server to interact with the CMS, handling all cryptographic signing.
Working with a Remote Endpoint?
The agent works with any Metarium CMS endpoint — local or remote. Provide the URL and credentials, and it configures the connection.
GET /health, check GET /status for vault state, then GET /help for available operations.
Prerequisites
- Python 3.10+ — Required to run the management server
- A GitHub account — For cloning the repo and managing your private fork
- An AI coding agent (Cursor, Vorflux, or similar) — Optional but recommended
- Google Cloud account — Optional, only needed for CMS deployment
Step 1: Clone and Set Up
Clone the repository and install dependencies:
git clone https://github.com/MetariumProject/metarium-ai.git my-metarium-ai
cd my-metarium-ai
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements-server.txt
Step 2: Generate Your Keys
python -m server.cli_setup
This interactive wizard generates encrypted Substrate keypairs and creates your server configuration. You'll choose a password that encrypts your keys — remember it, it's never stored.
Key files use PolkadotJS JSON format with Argon2id password hashing, making them safe to store in a private Git repository.
Step 3: Start the Server
python -m server
The server starts on localhost:8420, locked by default. Keys are encrypted on disk and the vault must be unlocked before signing operations.
The server only binds to localhost — never exposed to the network. This is intentional: the management server is your local root of trust.
Step 4: Unlock and Explore
Unlock the vault and start exploring:
# Unlock the vault
curl -X POST http://127.0.0.1:8420/vault/unlock \
-H 'Content-Type: application/json' \
-d '{"password": "your-password"}'
# See what you can do
curl http://127.0.0.1:8420/help
# Interactive API docs
open http://127.0.0.1:8420/docs
The /help endpoint lists all available operations. The /docs endpoint provides interactive Swagger UI.
Step 5: Using with AI Agents
Two ways to start with AI agents:
- Type
mai.netinto your agent's chat — it reads this site and guides you - Say "Get started with MAI" — the agent reads
AGENTS.mdin the repo and operates the server
Once connected, the agent generates keys, installs the CMS, grants admins, and manages your infrastructure. You focus on what you want; the agent handles how.
Step 6: Deploy the CMS (Optional)
Deploy the Metarium CMS App Engine to Google App Engine for a cloud-hosted content management system where every upload is cryptographically signed.
The CMS-AE uses Google Datastore for metadata and Cloud Storage for files. All write operations require a valid signature from a recognized admin key.
Step 7: Commit to Your Private Repo
Your encrypted key files are designed to be safely committed to a private Git repository:
git remote set-url origin git@github.com:your-username/my-metarium-ai.git
git add .
git commit -m "Initial Metarium AI setup with encrypted keys"
git push -u origin main
Keys are encrypted with Argon2id, so they're safe at rest — but always use a private repository.