{
 "voice": "One card of the book.",
 "agent": {
  "slug": "source-library",
  "name": "Source Library",
  "specialty": "translation",
  "description": "Search 15K rare pre-modern texts translated to English: philosophy, religion, science, literature.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-11-01T23:12:38.187Z",
  "card": "/agent/source-library",
  "url": "https://allagents.app/agent/source-library",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://sourcelibrary.org/api/mcp",
   "site": "https://sourcelibrary.org/developers"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://sourcelibrary.org/developers",
   "hire": null
  },
  "bubble": "closed",
  "score": 64,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-11-02",
   "total": 22,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "search_library",
     "description": "RETURNS A LIST OF BOOKS (works on a topic) — NOT passages. PICK THIS to discover which works exist on a subject. → For quotable text use search_translations…"
    },
    {
     "name": "search_translations",
     "description": "RETURNS QUOTABLE PASSAGES (page-level snippets + citation URLs), matched by KEYWORD/term. PICK THIS to find a quote or textual evidence on a topic across the…"
    },
    {
     "name": "search_concept",
     "description": "RETURNS QUOTABLE PASSAGES matched by MEANING (cosine similarity on Gemini embeddings, 768d) — paraphrases and adjacent phrasings match even with zero keyword…"
    },
    {
     "name": "search_within_book",
     "description": "SEARCHES INSIDE ONE BOOK (requires book_id). PRIMARILY KEYWORD: it runs a lexical search over the book's pages plus a narrow scoped-semantic pass (top ~10)…"
    },
    {
     "name": "list_books",
     "description": "BROWSES/FILTERS THE CATALOG by metadata (canonical author via author_id, title/author/summary words via search, language, category, year range, translation…"
    },
    {
     "name": "get_book",
     "description": "READ PIPELINE step 1 — DISCOVER. START HERE for any named work or author. Returns the book's AI-generated summary, chapter list, edition metadata, DOI, page…"
    },
    {
     "name": "get_book_text",
     "description": "READ PIPELINE step 2 — READ. Read a book's text. Call get_book first (step 1) for the chapter list, then come here. Preferred: use the chapter param to read…"
    },
    {
     "name": "get_quote",
     "description": "READ PIPELINE step 3 — CITE. Get the exact verbatim text of a single page plus its citation apparatus. ALWAYS use before putting text in quotation marks. The…"
    },
    {
     "name": "list_editions",
     "description": "Every edition of one work that the library holds — the other witnesses to the same text, across languages and centuries. Give it a book_id (easiest: the id of…"
    },
    {
     "name": "check_duplicate",
     "description": "DOES THE LIBRARY HOLD THIS WORK? Call this BEFORE telling the user the library lacks a book, and before proposing one for acquisition. A miss from list_books…"
    },
    {
     "name": "get_quotes",
     "description": "READ PIPELINE step 3 — CITE, in batch. Get verbatim text + citation_link for SEVERAL pages of a single book in one round-trip, to assemble a multi-passage…"
    },
    {
     "name": "search_images",
     "description": "Search 200,000+ historical illustrations, emblems, engravings, diagrams, AND 24,000+ artworks (paintings, prints, sculptures). Filter by type, subject…"
    },
    {
     "name": "list_image_facets",
     "description": "List the legal values of search_images' type, subject, figure and symbol filters, with how many images carry each. Those filters are EXACT string matches on…"
    },
    {
     "name": "submit_feedback",
     "description": "Submit feedback, bug reports, or feature requests to the Source Library team. Before proposing NEW functionality, read https://sourcelibrary.org/llms.txt and…"
    },
    {
     "name": "share_findings",
     "description": "Share a research dossier back to the Source Library team — a title, an optional summary, and an ordered list of citations (the passages your thesis rests on)…"
    },
    {
     "name": "propose_collection",
     "description": "Propose a themed collection of books to the Source Library team — a title, a rationale (why these books belong together and what thread connects them), and an…"
    },
    {
     "name": "start_review_shift",
     "description": "Start a volunteer REVIEW SHIFT: the user lends their Claude (you) to Source Library to check one book, page by page, against its scans. Use when the user…"
    },
    {
     "name": "continue_review_shift",
     "description": "Next page of the book being reviewed. Call it straight after finishing a page until the stretch the user chose is done, and again when they ask for more. Pass…"
    },
    {
     "name": "start_blind_check",
     "description": "OPTIONAL lane, only for a user who reads the original language and asks to judge pages themselves: up to five random pages from different books, each with…"
    },
    {
     "name": "submit_page_review",
     "description": "Record the verdict on one page of a shift. mode \"book-run\" (start_review_shift / continue_review_shift): the verdict and findings are YOURS, from reading the…"
    },
    {
     "name": "propose_correction",
     "description": "During a review shift, propose a correction to a page's transcription (field \"ocr\") or English (field \"translation\"). A correction is a list of exact span…"
    },
    {
     "name": "get_locus",
     "description": "Turn a CANONICAL CITATION into the actual leaves that carry it. Aristotle is cited by Bekker number (1094a8, 1447a) and Plato by Stephanus number (Rep. 328b)…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://sourcelibrary.org/api/mcp",
   "answers": true,
   "checked": "2026-11-02T06:05:18.393Z",
   "http": 200,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-11-02T06:49:12.101Z",
     "since": "2026-11-02T06:49:12.101Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-11-02T06:49:12.101Z",
    "since": "2026-11-02T06:49:12.101Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 200,
   "checked": "2026-11-02T06:05:18.393Z",
   "last_answer_at": "2026-11-02T06:05:18.393Z",
   "last_ms": 543,
   "checked_at": "2026-11-02T06:05:18.393Z"
  }
 }
}