---
title: Data for agents and researchers
description: Sitemap, llms.txt, JSON index, Markdown twins, search and citation APIs, the MCP server and JSON schemas for MRM Library.
url: https://library.mrm.org/data
---

# Data for agents and researchers

MRM Library is a reading site for historical primary sources, and it is built to be read by software too. These are the plain files, APIs and tools behind it. All of it is free, read only and needs no key.

## Discovery

Start here to find everything else. The same entry points are announced in the head of every page and in its HTTP Link headers.

- [/robots.txt](https://library.mrm.org/robots.txt): Crawl rules, with a pointer to the sitemap.
- [/sitemap.xml](https://library.mrm.org/sitemap.xml): Sitemap index. It lists the files in /sitemaps/, for example /sitemaps/misc-1.xml and /sitemaps/improvement-era.xml.
- [/llms.txt](https://library.mrm.org/llms.txt): Short guide for language models: every work and author, URL patterns and the APIs below.
- [/llms-full.txt](https://library.mrm.org/llms-full.txt): Index of full text bundles, one Markdown file per work (large works are split by part).
- [/index.json](https://library.mrm.org/index.json): Catalog of collections, authors and works, with rights and manifest URLs.
- [/.well-known/mcp.json](https://library.mrm.org/.well-known/mcp.json): MCP server card. The same card is at /.well-known/mcp/server-card.json.

Each work also has its own guide and bundle, for example /jst/llms.txt and /jst/llms-full.txt.

## Markdown and manifests

Every page has a Markdown twin: add .md to a work, part, section or collection URL. Add .json instead for a manifest with children, sections, rights and neighbors. Authors have .json only.

- [/jst/romans/5.md](https://library.mrm.org/jst/romans/5.md): A section as Markdown, with citation, source and rights in the frontmatter.
- [/jst/romans/5.json](https://library.mrm.org/jst/romans/5.json): The same section as a manifest.
- [/improvement-era/1910/01/ruins-of-the-casas-grandes-region.md](https://library.mrm.org/improvement-era/1910/01/ruins-of-the-casas-grandes-region.md): An article from a periodical.
- [/collection/theology.md](https://library.mrm.org/collection/theology.md): A collection as a Markdown list of works.
- [/author/joseph-smith-jr.json](https://library.mrm.org/author/joseph-smith-jr.json): An author record.
- [/improvement-era/1910/llms-full.txt](https://library.mrm.org/improvement-era/1910/llms-full.txt): Bundle: one year of a periodical as a single Markdown file.

The Markdown source of the library is published only through these twins and bundles.

## Search and citations

Full text search covers every section. All words must match, and titles weigh more. Responses are JSON with open CORS.

- [/api/search?q=charity&limit=5](https://library.mrm.org/api/search?q=charity&limit=5): Parameters: q, limit (up to 100), offset. Each hit has ref, title, work, url, markdown and an excerpt.
- [/api/resolve?ref=IE%2013:205](https://library.mrm.org/api/resolve?ref=IE%2013:205): Turns a citation into library URLs. Try Romans 5:8 JST, JD 3:12 or IE 13:205. A verse or page anchor is included.
- [/search?q=charity](https://library.mrm.org/search?q=charity): The same search as a page.
- [/jod/13/2](https://library.mrm.org/jod/13/2): Every section page has a Cite control with Chicago footnote and bibliography forms. The forms follow Chicago 17th edition typography, including its page ranges. The same strings, without an access date, are the citation in each page's JSON-LD and the citation_chicago field of the MCP tools get_section, get_rights and get_work_info.
- [/improvement-era/1910/01/p205](https://library.mrm.org/improvement-era/1910/01/p205): Printed page redirect: /<work>/p123, or /<periodical>/v13/p234 for a volume. It sends you to the section that holds that page.

## MCP server

A public, read only Model Context Protocol server. Streamable HTTP, stateless, no authentication.

- [/mcp](https://library.mrm.org/mcp): Endpoint. POST JSON-RPC here; GET answers 405.
- [/.well-known/mcp.json](https://library.mrm.org/.well-known/mcp.json): Server card, with tool definitions.
- [/webmcp.js](https://library.mrm.org/webmcp.js): WebMCP: the same search and reading tools offered to browser agents on every page.

Tools:

```
search_library    full text search, optional collection or work scope
list_toc          browse collections, works, parts and sections
get_section       a section as Markdown or text, with citation_chicago
get_rights        rights status and basis for any page
get_work_info     metadata and section list for a work
resolve_reference citation to URL, such as IE 13:205
```

Client config (Cursor and other remote clients):

```
{
  "mcpServers": {
    "mrm-library": { "url": "https://library.mrm.org/mcp" }
  }
}
```

Client config (Claude Desktop, through a bridge):

```
{
  "mcpServers": {
    "mrm-library": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://library.mrm.org/mcp"]
    }
  }
}
```

Claude Code:

```
claude mcp add --transport http mrm-library https://library.mrm.org/mcp
```

List the tools with curl:

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

Rights for any page: call get_rights. Works are public domain by publication year (1930 or earlier) unless the author gave permission.

## Schemas and JSON-LD

The JSON files above follow JSON Schema (draft 2020 12).

- [/schema/index.schema.json](https://library.mrm.org/schema/index.schema.json): The catalog, /index.json.
- [/schema/node.schema.json](https://library.mrm.org/schema/node.schema.json): A manifest, <path>.json.
- [/schema/work.schema.json](https://library.mrm.org/schema/work.schema.json): A work.
- [/schema/section.schema.json](https://library.mrm.org/schema/section.schema.json): A section.
- [/schema/work-index.schema.json](https://library.mrm.org/schema/work-index.schema.json): A work's index.
- [/schema/part-index.schema.json](https://library.mrm.org/schema/part-index.schema.json): A part's index.
- [/schema/collection.schema.json](https://library.mrm.org/schema/collection.schema.json): A collection.
- [/schema/authors.schema.json](https://library.mrm.org/schema/authors.schema.json): Authors.
- [/schema/common.schema.json](https://library.mrm.org/schema/common.schema.json): Shared definitions.

Pages carry schema.org JSON-LD: WebSite with SearchAction, DataCatalog and WebAPI on the home page; Book, Periodical, PublicationVolume, PublicationIssue, Chapter and Article for works; Person and ProfilePage for authors; CollectionPage and ItemList for collections; BreadcrumbList everywhere.

## URLs and freshness

```
/<work>                              a work
/<work>/<section>                    a section
/<work>/<part>/<section>             a section inside a part
/improvement-era/YYYY/MM/<slug>      periodicals are keyed by date
/<work>/p123                         printed page redirect
/author/<slug>                       an author
/collection/<slug>                   a collection
<any URL>.md  .json                  Markdown twin and manifest
```

Stored files are cached for five minutes and revalidated in the background, so new works appear within minutes of a publish. Use the paths and URLs the APIs return rather than guessing them.
