Create the two required documentation files for MCNS: - README.md: project overview, quick-start (build/configure/run), links to ARCHITECTURE.md and RUNBOOK.md - RUNBOOK.md: operator-focused procedures with numbered steps covering health checks, start/stop/restart, backup/restore, log inspection, and incident playbooks for database corruption, certificate expiry, MCIAS outage, DNS resolution failures, and port conflicts Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
MCNS
Metacircular Networking Service -- an authoritative DNS server for the Metacircular platform. MCNS serves DNS zones backed by SQLite, forwards non-authoritative queries to upstream resolvers, and exposes a gRPC and REST management API authenticated through MCIAS. Records are updated dynamically via the API and visible to DNS immediately on commit.
Quick Start
Build the binary:
make mcns
Copy and edit the example configuration:
cp deploy/examples/mcns.toml /srv/mcns/mcns.toml
# Edit TLS paths, database path, MCIAS URL, upstream resolvers
Run the server:
./mcns server --config /srv/mcns/mcns.toml
The server starts three listeners:
| Port | Protocol | Purpose |
|---|---|---|
| 53 | UDP + TCP | DNS (no auth) |
| 8443 | TCP | REST management API (TLS, MCIAS auth) |
| 9443 | TCP | gRPC management API (TLS, MCIAS auth) |
Documentation
- ARCHITECTURE.md -- full technical specification, database schema, API surface, and security model.
- RUNBOOK.md -- operational procedures and incident response for operators.
- CLAUDE.md -- context for AI-assisted development.
Description
Languages
Go
97.5%
Shell
1.2%
Makefile
0.7%
Dockerfile
0.6%