# Enterium Developer Docs > Developer documentation for the Enterium platform: architecture, guides, REST API and MCP reference. English pages are canonical; every page has a Markdown twin at `.md`. ## Instructions - Start with [What is Enterium](/developers/platform/what-is-enterium.md), then [Architecture](/developers/platform/architecture.md). - To act against the platform, read [Agent quickstart](/developers/guides/quickstart.md) and [Connecting to MCP](/developers/mcp/connecting.md) first. - Always fetch the `.md` twin of a page instead of the HTML. - Machine artifacts: [manifest](/developers/manifest.json), [versions](/developers/versions.json), [Markdown sitemap](/developers/sitemap.md), [agents.md](/developers/agents.md) (what this portal offers an agent and what it does not). - Re-reads: `.md` twins and `manifest.json` carry an `ETag`; send `If-None-Match` and a 304 means "unchanged". - Search these docs as a tool: MCP server `https://entherium.duckdns.org:8443/mcp/docs/` (no token) — `search`, `fetch`, `submit_feedback`; the index it uses is [search-index.json](/developers/search-index.json). - Change and health: [changelog.json](/developers/changelog.json) (JSON Feed 1.1, portal + API + agent capability entries), `https://entherium.duckdns.org:8443/api/status.json` (Statuspage v2 shape). - Installable skill: [agent-skills index](/developers/.well-known/agent-skills/index.json) → `enterium-integration/SKILL.md` (how to integrate over REST and MCP). ## Available languages - English (en) — 206 pages — content indexed below (canonical) - Russian (ru) — 206 translated pages — under /developers/ru/, reference sections in English; not indexed below ## Knowledge Graph The living map of this documentation assembling itself. - [Knowledge Graph](/developers/platform/knowledge-graph.md): The team's internal knowledge vault — 1400+ notes behind this portal — assembling themselves into one system, driven by the same few forces that shape the real graph. ## Platform What the system is and how it is built. - [What is Enterium](/developers/platform/what-is-enterium.md): Enterium is a content-operations platform that plans, generates, verifies, publishes and measures expert content across a fleet of owned sites — end to end, mostly autonomously. - [Architecture](/developers/platform/architecture.md): C4-style overview of Enterium — a modular monolith with CI-enforced bounded contexts, a React web UI, immutable native pipelines and vendored publishing services. - [Bounded contexts](/developers/platform/contexts.md): The map of Enterium's bounded contexts — what each module owns, and how they are allowed to talk to each other. - [Data model](/developers/platform/data-model.md): The core entities of Enterium — companies, contracts, configs, runs, research facts, articles and published URLs — and the metamodel fields every business entity carries. - [Content lifecycle](/developers/platform/content-lifecycle.md): The end-to-end path of an article — Collect, Generate, the quality gates that stand on the publish path, publication, and the SEO feedback loop — as it actually runs nightly. - [Environments and versioning](/developers/platform/environments.md): The two-contour environment model (dev and prod), the promotion flow, and the two independent versioning axes — platform modules and pipeline versions. - [Glossary](/developers/platform/glossary.md): The platform's terms of art — contract, corpus, carve, grounding, dedup defer, instance and friends — each defined in one or two sentences. ## Guides Numbered step-by-step how-tos for humans and agents. - [Agent quickstart](/developers/guides/quickstart.md): From zero to your first authenticated Enterium API call — every step is a complete, copy-pasteable command with its expected result. - [Authentication and grants](/developers/guides/authentication.md): How agent tokens are minted, what the grant pool is, the token-replaces-pool gotcha and the two safe ways around it, and every 401/403 cause with its fix. - [Tasks and defects](/developers/guides/tasks-and-defects.md): The working cycle of the platform's board — task states, filing a defect that actually lands, quarantine rules, ticket actions, and what agents can and cannot do. - [How to read errors](/developers/guides/reading-errors.md): The platform's single error sink — the shape of an error event, the filters on GET /api/v1/errors, and the standard flow for investigating a failed run. - [Searching the chat archive](/developers/guides/chat-search.md): Querying the archived working chat — parameters of the search tools, and the is_full rule that decides whether a message may be quoted. ## How it works Deep dives into the mechanisms that make the platform interesting. - [How immutable pipeline versions work](/developers/how-it-works/immutable-pipeline-versions.md): Why a pipeline change is always a new carve, never an edit — and how that makes every past run reproducible and every rollback a pointer move. - [How the RAG flywheel works](/developers/how-it-works/rag-flywheel.md): Corpus-first generation — how every contract accumulates a knowledge base that makes each article cheaper and better grounded than the last. - [How source discovery works](/developers/how-it-works/source-discovery.md): Where article candidates come from — three source classes, a funnel of independent drop-gates, and the honest state of the cheap-to-expensive cascade. - [How ontologies and filtering work](/developers/how-it-works/ontologies-and-filtering.md): Every contract declares what it is about — and that declaration drives candidate ranking, draft alignment and brand defense, with filters that each own exactly one concern. - [How the article writing framework works](/developers/how-it-works/writing-framework.md): An ~18-step pipeline under a strict charter — one concern, one owner — with grounded drafting, schema-controlled LLM output and a single quality gate at the end. - [How quality gates work](/developers/how-it-works/quality-gates.md): Why the publish path is guarded by deterministic gates instead of LLM judges — with the measurements that forced that design. - [How copywriting evaluation works](/developers/how-it-works/copy-evaluation.md): Two co-equal gates — TRUE∧ACCURATE and EASY∧PLEASANT to read — enforced by adversarial screening, evidence-anchored judging and an editor-grade reading rubric. - [How the scoring systems work](/developers/how-it-works/scoring-systems.md): The platform's seven scoring axes — what each one measures, the idea behind its formula, and who consumes it — plus the rule that keeps scores from lying. - [How media generation works](/developers/how-it-works/media-generation.md): Per-section infographic-or-illustration decisions, a zero-cost deterministic chart renderer beside a generative model, and an image registry that makes storage cleanup safe. - [How publishing and the site fleet work](/developers/how-it-works/publishing-and-the-fleet.md): Three independently-deployed layers — the platform, the publishing hub, and a fleet of static Hugo sites — and the identity discipline that keeps published URLs stable. - [How SEO methodology and authorship work](/developers/how-it-works/seo-methodology-and-authorship.md): What every published page carries by construction — structured data, FAQ schema, machine-readable AI policy, per-author E-E-A-T signals — and the editorial rule behind all of it. - [How SEO analytics collection works](/developers/how-it-works/seo-analytics.md): Five source families collected daily into six time-series tables and one composite health score — and the list of ways search data lies to you if you read it naively. - [How the topic feedback loop works](/developers/how-it-works/topic-feedback-loop.md): Search results steer what gets written next — topic yield scoring, an explore floor that protects discovery, dead-topic parking, and the twin mechanism that stops paying twice for the same article. - [How nightly orchestration works](/developers/how-it-works/orchestration.md): What actually drives the fleet every night — a deliberately boring batch script with layered safety nets — and the reconciler-first design it is converging toward. - [How the run engine works](/developers/how-it-works/run-engine.md): Every pipeline execution as a stream of typed events — Redis Streams transport, a single idempotent DB writer, self-healing watchdogs, and concurrency that adapts to the provider in real time. - [How cost accounting works](/developers/how-it-works/cost-accounting.md): Token-accurate, multi-dimensional metering — how the platform knows the true cost of one published article, and what that number changes. - [How the agent trust model works](/developers/how-it-works/agent-trust-model.md): The platform treats LLM agents as first-class but untrusted users — a ladder of token scopes, default-deny grants, redaction, and anti-enumeration by design. - [How observability and alerting work](/developers/how-it-works/observability-alerting.md): Three error primitives that make silence impossible, a durable error sink, and an alerting philosophy built on one rule — "zero useful output" is a failure even when nothing crashed. - [How localization works](/developers/how-it-works/localization.md): English-pivot transcreation — one canonical content pipeline, a separate localize pipeline with its own deterministic QA gate, and one shared research corpus across all languages. ## API REST API reference generated from contracts/openapi.json. - [REST API overview](/developers/api.md): The platform REST API grouped by tag — 26 groups, generated from the OpenAPI contract. ## MCP Connecting to and using the platform MCP server. - [Connecting to MCP](/developers/mcp/connecting.md): Step-by-step MCP connection walkthrough for agents — endpoint, the three-step JSON-RPC handshake with complete curl commands, auth header, and a symptom-cause-action table. - [MCP tools reference](/developers/mcp/tools.md): All 14 MCP tools exposed by the platform server, generated from the running server (capability 2026-09-03.1). - [Interpreting platform status](/developers/mcp/interpreting-status.md): How to read the ops overview and status payloads correctly — which "empty" values are normal idle states and which actually mean trouble. ## Pipelines The content pipelines: catalog, immutable versions, promotion and pins. - [Pipeline catalog](/developers/pipelines/catalog.md): The pipelines that produce and publish content — Collect, Generate and Localize — how they are registered, versioned and dispatched from pipelines/catalog.yaml. - [Version lifecycle](/developers/pipelines/versioning.md): Immutable pipeline versions — why a change is always a new carve, never an edit, and how versions are promoted, pinned and rolled back. ## Reference The operational belt: change, limits, errors and health. - [Changelog surfaces](/developers/reference/changelog.md): Where change is recorded — the agent capability changelog, module release notes, pipeline versions, and this portal's own per-page content hashes — and how to consume each. - [Release notes](/developers/reference/release-notes.md): Dated, consumer-facing changes of the developer portal, the REST API and the agent capability surface — generated from the changelog data and the MCP surface export. - [Limits and quotas](/developers/reference/limits.md): The bounds an agent operates inside — token lifetimes, grant scopes, request limits, publish timeouts and the nightly cap — so retries and surprises don't happen. - [Errors reference](/developers/reference/errors.md): The error envelope every 4xx/5xx returns (detail, code, request_id, doc_url) and, per HTTP status, what happened and what to do — plus the rule for telling platform trouble from your own request. - [Idempotency and retries](/developers/reference/idempotency.md): What is actually idempotent on this platform — the Idempotency-Key header on the two intake endpoints, its 24-hour window and conflict rule, the de-duplicated report intake, which MCP tools are safe to repeat — and how to retry each error class. - [Versions](/developers/reference/versions.md): The five version axes a client meets — platform build, agent capability version, API contract, portal build and pipeline versions — where each is exposed, how to detect a change, and the compatibility rules. - [Platform status and health](/developers/reference/status.md): How to check whether the platform is up, what each health surface means, and how to distinguish down, idle and intentionally paused. ## For LLM agents How to consume this portal programmatically. - [For LLM agents](/developers/for-llm-agents.md): How to consume this portal programmatically — llms.txt, Markdown twins of every page, the frozen OpenAPI contract, and a build manifest with per-page content hashes. ## Optional - [Russian mirror](/developers/ru/): human-facing Russian pages; untranslated routes fall back to English.