Two doors — /api for a page, /mcp for an agent
Same database, same authorization, two shapes:
| Door | Protocol | Call it from |
|---|---|---|
/app/api/* | REST over JSON, described by /app/api/openapi.json | A page, a script, anything speaking HTTP |
/mcp | JSON-RPC 2.0 over MCP Streamable HTTP | An LLM client — Claude, Gemini, LibreChat, your own agent |
/mcp advertises fourteen tools, all namespaced aida_: aida_list_projects, aida_create_notation,
aida_validate_notation, aida_answer_notation, aida_show_person, and the rest.