Royal Archives is an open, linked library of the Scriptures and the Church Fathers — Scripture, patristic works, and reference encyclopedias cross-referenced into a single corpus, patristic-catena centered. Most of that corpus is openly readable by machines as well as people. This page documents the programmatic ways in: a Model Context Protocol server for AI agents, standard OPDS and RSS feeds for e-reader and feed apps, a linked cross-reference graph, and the underlying catalog and entity data as JSON.

Everything here is read-only retrieval over already-public material. Please be considerate with request volume.

MCP server

The Model Context Protocol (MCP) server lets an AI agent search and read the whole corpus — Scripture and the Fathers — as a set of typed retrieval tools. It is a Cloudflare Worker speaking Streamable HTTP at a single endpoint:

https://mcp.royalarchives.org/mcp

The server performs no AI synthesis — every tool is a pure, read-only lookup that returns passages, metadata, and deep links for your own agent to reason over. The tools are:

search_corpus
Hybrid full-text + semantic search across Scripture and the Fathers. Returns ranked passages with deep links. Filterable by author, work, language, testament, century, and kind (work / scripture).
get_verse
Fetch one Scripture verse in one or more editions. Accepts free-form ("John 1:1") or dotted ("John.1.1") references.
get_chapter
Fetch a full chapter — a Bible chapter by reference, or a work chapter by author + work + chapter slug. Plain text or HTML.
get_work
A work's metadata and table of contents: author, century, language, translation type, license, description, chapters, and parallel editions.
get_commentary_on
The patristic catena for a verse: the Fathers who expound, quote, or allude to it (typed cross-references) plus the semantically-nearest commentary, with citations.
get_cross_references
"What links here" for a verse or a work division: typed cross-reference edges (cites, mentions, wrote, hasDivision), inbound or outbound.
get_original_text
Original-language text (Greek / Russian / Latin) for a Bible passage or a work chapter.
lookup_lexicon
Look up a Greek word in the Strong's lexicon by number, lemma, or surface form. Returns lemma, transliteration, gloss, and definition.
lookup_entity
Look up a person or place (saint, biblical figure, city, monastery) by name or id. Returns a dossier plus where it is mentioned across the corpus.
list_works
List works in the catalog, filterable by author, century, language, category, or translation type. Paginated via cursor.
browse
Browse the catalog by a facet (author, century, category, or language) with work counts per group.

Add to your AI agent

The quickest way in: hand your AI agent the instruction below and it will install the server itself — no keys, no login. Copy it, paste it into Claude Code, Cursor, Codex, or any MCP-capable agent, and let it run the step for its own runtime.

Install the Royal Archives MCP server for me — a public, read-only MCP server for a corpus of Orthodox Scripture and the Church Fathers at https://mcp.royalarchives.org/mcp (no auth). For Claude Code: `claude mcp add --transport http royal-archives https://mcp.royalarchives.org/mcp`. For other agents, add `"royal-archives": { "url": "https://mcp.royalarchives.org/mcp" }` to your MCP config. Then restart to load the tools. Full instructions: https://royalarchives.org/agent-setup/prompt.md

Or just tell your agent: Fetch https://royalarchives.org/agent-setup/prompt.md

Connecting

For an MCP client that speaks HTTP directly (e.g. Claude Code), point it at the endpoint:

{
  "mcpServers": {
    "royal-archives": {
      "type": "http",
      "url": "https://mcp.royalarchives.org/mcp"
    }
  }
}

For hosts that only speak stdio (e.g. older Claude Desktop), bridge to the HTTP endpoint with the standard mcp-remote proxy — set the server command to npx -y mcp-remote https://mcp.royalarchives.org/mcp. You can smoke-test the endpoint and list its tools directly with JSON-RPC:

curl -X POST https://mcp.royalarchives.org/mcp \
  -H 'content-type: application/json' \
  -H 'accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

OPDS catalog

The library is published as an OPDS 1.2 acquisition feed, so e-reader apps (KOReader, Calibre, Moon+ Reader, Thorium) can browse the whole catalog and download each work directly. Add this feed URL in your reader:

/feeds/opds.xml

Each entry carries Dublin Core metadata (title, author, language, subject, publication year), a cover image, a link to the work's reading page, and acquisition links to the downloadable EPUB, AZW3 (Kindle), KEPUB (Kobo), and PDF files where a built edition exists.

Download formats

Every work with a built edition is offered in four formats, served from the same download tree and linked from both work.json and the OPDS feed:

  • EPUB (application/epub+zip) — the reference edition, epubcheck-validated.
  • AZW3 (application/x-mobi8-ebook) — Kindle.
  • KEPUB (application/kepub+zip) — Kobo.
  • PDF (application/pdf) — a screen-reading edition: A4, cover page, a clickable table of contents with resolved page numbers, PDF bookmarks, and footnotes at the foot of the page. Rendered from the same source as the EPUB.

RSS feed

New and recently updated works are published as a standard RSS 2.0 feed — subscribe in any feed reader to follow additions to the corpus:

/rss.xml

Open data & the linked corpus

The corpus is a linked web of typed cross-references — verses, works, authors, persons, places, terms, and the citations between them. The graph that powers the connections panel is published as static JSON.

Cross-reference graph

Per-verse adjacency files are served from the site, one per OSIS reference:

/graph/verse/John.3.16.json

Each file is a single node document — { id, type, label, url?, out?, in? } — listing the divisions that cite the verse (in) with an inverse relation of citedBy. The connections panel on any Bible chapter reads these directly; the same per-entity shape is used for persons and places (see Entities below).

Entities

Persons and places have their own pages under /persons and /places. The set of entity ids that have a generated page is published as JSON:

/entity-ids.json

It returns { person: string[], place: string[] }; each id resolves to its /persons or /places page listing where the entity is mentioned across the corpus.

Catalog & per-work JSON

The catalog and per-work metadata are served as JSON from the content host. The catalog lists every author and work; each work has its own file with the table of contents, edition details, and download links:

// https://cdn.royalarchives.org/content/catalog.json
{
  "authors": [
    {
      "slug": "john_chrysostom",
      "name": "John Chrysostom",
      "century": "4th century",
      "works": [
        {
          "authorSlug": "john_chrysostom",
          "workSlug": "...",
          "title": "...",
          "authors": ["John Chrysostom"],
          "language": "en",
          "workClass": "book",              // capability tier: "book" (full) or "article" (shorter piece); defaults to "book"
          "translationType": "public-domain",
          "license": "PD",
          "commercialOK": true,
          "category": "theology",
          "century": "4th century",
          "hasOriginal": true,
          "originalLanguage": "grc"
        }
      ]
    }
  ]
}
// https://cdn.royalarchives.org/content/works/<author>/<work>/work.json
{
  "authorSlug": "...",
  "workSlug": "...",
  "title": "...",
  "language": "en",
  "workClass": "book",               // capability tier: "book" (full) or "article" (shorter piece); defaults to "book"
  "translationType": "public-domain",
  "license": "PD",
  "commercialOK": true,
  "description": "...",              // the authored one-paragraph hook (also the store description)
  "keywords": ["Orthodox spirituality", "..."],  // store search keywords (KDP parity; [] for older works)
  "categories": ["Religion & Spirituality", "..."],  // store browse categories ([] for older works)
  "toc": [
    { "kind": "chapter", "slug": "chapter_1", "title": "Chapter One" }
  ],
  "original": { "language": "grc", "title": "..." },
  // Download links — present per format when a built file exists.
  "epubDownloadUrl": "https://.../work.en.epub",
  "azw3DownloadUrl": "https://.../work.en.azw3",        // Kindle
  "kepubDownloadUrl": "https://.../work.en.kepub.epub", // Kobo
  "pdfDownloadUrl": "https://.../work.en.pdf",          // screen-reading PDF
  "amazonUrl": "https://www.amazon.com/dp/..."          // live Amazon store listing; absent for most works
}

License-restricted works carry commercialOK: false; the chapter HTML for each work is served alongside its work.json under works/<author>/<work>/<view>/chapters/<slug>.html.

Licensing

The historical texts and translations taken from public-domain editions remain in the public domain.

Royal Archives’ own contributions — original translations, the Orthodox Catholic Bible (OCB) recension, and editorial apparatus — are © Royal Archives, all rights reserved.

In short: the historical texts and public-domain translations are free to reuse; Royal Archives' own original translations, the Orthodox Catholic Bible (OCB) recension, and editorial apparatus are © Royal Archives. See the About page for the full rights statement and a guide to the edition badges.

Beta

These interfaces are in beta: endpoints and data shapes may change, and scan-derived texts are corrected continually. If you build something on the corpus, expect to track occasional changes.