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.

For AI agents: If the user says they already have a setup, ask for their management server URL and/or CMS URL. Test with GET /health, check GET /status for vault state, then GET /help for available operations.

Prerequisites

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:

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.

See the full architecture

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.