Console と API はひとつの正本を共有する
Backend Platform は Console・API・AI agent に別々の現実を持たせるべきではない。LUNO が一つの system of record に置く理由。
LUNO Team編集
luno.rest の編集。AI-era Backend Platform。
If your public API drifts from the editor UI, you do not have a platform. You have two backends.
AI agent が加わるほど、この主張は重要になります。
人は Console、application は API、agent は MCP。それでも操作するのは一つの backend であるべきです。
Different interfaces. One backend.
これは「Console のデータを API でも取れます」という機能説明ではありません。system of record の設計思想です。カテゴリ: /blog/what-is-ai-era-backend-platform。agent の操作: /blog/operate-luno-from-mcp。
別表現が生む問題
多くのスタックは admin CMS と developer API がゆっくり分岐します。schema、publish の意味、権限、validation が分かれます。
Console → CMS database
Public API → Separate API model → Sync → Frontendagent が都合の良いクライアントをまた増やすと、断片化は加速します。
API がずれたら backend が二つ
An API is not a second backend
API parity is not enough. State parity matters.
共有すべきは underlying state — data / content / schema / forms / media / publishing state / revisions / relationships / configuration。狭い意味の「同じ DB row」だけではありません。
Console が作り、API が後でコピーする構造ではない。同じ backend state を異なる interface が参照・操作する。
One system of record
Console / API / MCP
↓
Shared Backend
Same data / schema / state / rulesThe interface changes. The backend does not.
Platform は DB の周りの API だけではありません。consistent model、shared state、authorization semantics、lifecycle、publishing が必要です。
Console は backend ではなく interface
Console → Human interface
API → Application interface
MCP → Agent interfaceAPI は第二の backend ではない
The frontend does not consume a copy of the backend. It consumes the backend itself.
MCP は agent 専用 backend ではない
MCP is another interface, not another backend.
Interface drift は backend fragmentation になります。Console=A、API=B、MCP=C なら、三つの現実です。
一つの backend、三人の operator
One Backend
│
┌─────────────┼─────────────┐
│ │ │
Human Application Agent
│ │ │
Console API MCPSame backend does not mean same authority.
認証・認可・承認・本番ガバナンスは別問題。詳細: /blog/agent-autonomy-without-production-authority
AI時代に system of record がより重要になる理由
The more operators a backend has, the more important a single source of truth becomes.
具体例: AI agent がコンテンツを作る
Agent creates (MCP)
↓
Same record
↓
Human reviews (Console)
↓
Publish
↓
API serves published state
↓
Website rendersagent の内容を別 CMS にコピーする同期ジョブは不要です。publishing state も同じ system of record の一部です。
同じ state、異なる authority
| Capability | Console | API | MCP |
|---|---|---|---|
| Inspect / read backend state | Yes | Yes | Yes |
| Create / update content | Yes | Yes* | Yes |
| Schema-aware operations | Yes | Yes* | Yes |
| Publishing workflow | Yes | Yes* | Yes |
| Same underlying record | Yes | Yes | Yes |
*公開向け Public API は published state の消費が中心。書き込み・管理は認証された admin/agent 面。要点は shared backend semantics。
LUNO の位置
Human → Console
Application → REST / Public API
AI Agent → MCP
↓
LUNO Backend三つで三システムに触れるのではなく、同じ backend を操作する三つの経路です。
競合比較は /blog/luno-vs-wordpress-contentful へ。
なぜ毎回作り直さないかは /blog/never-build-backends-again。料金単位は /blog/pricing-without-seat-tax。
Conclusion
One backend.
Different interfaces.
Different authority.
One system of record.Different interfaces. One backend.
次: /blog/operate-luno-from-mcp と /blog/agent-autonomy-without-production-authority