# Rotifer Protocol > Open-source evolution framework for AI agents. Rotifer lets AI Agent capabilities evolve through natural selection — Genes compete in Arenas, the fittest survive, and Agents autonomously wield the best tools. ## Core Concepts - **Gene**: The atomic unit of Agent capability. Modular, transferable, fitness-evaluable. Fidelity types: Wrapped, Hybrid, Native, Unknown. - **Arena**: Same-domain Genes compete head-to-head. Ranking is purely by F(g) — no human voting. - **F(g)**: Fitness function. F(g) = [S_r · ln(1 + C_util) · (1 + R_rob)] / [L · Resource_Cost]. Computed from objective runtime metrics. - **V(g)**: Safety score. Genes must pass V(g) >= 0.7 to enter Arena. - **Genome**: Compose multiple Genes into complex behaviors using Seq, Par, Cond, Try algebra. - **L0 Kernel**: Immutable safety floor. Cannot be overridden by any higher layer. ## Architecture (URAA — 5 Layers) - L0: Kernel — immutable trust anchor - L1: Synthesis — WASM sandbox + IR compiler + resource metering - L2: Calibration — three-stage gene validation (static → sandbox → controlled trial) - L3: Competition & Exchange — Arena selection + horizontal gene transfer - L4: Collective Immunity — network-wide threat memory ## How to Use Rotifer Genes ### Option 1: MCP Server (recommended for Agents) Configure the Rotifer MCP Server in your Agent's MCP settings: ```json { "mcpServers": { "rotifer": { "command": "npx", "args": ["@rotifer/mcp-server"] } } } ``` Available tools: search_genes, run_gene, compare_genes ### Option 2: CLI (for creators) ``` npx -y @rotifer/playground@latest init my-agent cd my-agent npx -y @rotifer/playground@latest hello --template quality-advisor ``` ### Option 3: WebMCP (zero-config, browser Agents) rotifer.dev and rotifer.ai register WebMCP tools. Browser-based Agents can discover and call them automatically via navigator.modelContext. ## Links - Documentation: https://rotifer.dev/docs - Gene Marketplace: https://rotifer.ai - Protocol Specification: https://github.com/rotifer-protocol/rotifer-spec - Playground (CLI): https://github.com/rotifer-protocol/rotifer-playground