{"name":"io.github.The-40-Thieves/alexandria-mcp","slug":"the-40-thieves-alexandria-mcp","title":"Alexandria","description":"Search, read, and cite across 152 libraries: 11 tools, 3 prompts, and a full-text resource.","url":"https://mcp.market/server/the-40-thieves-alexandria-mcp","rating":null,"grade":"B","score":77,"certified":false,"status":"active","category":"search","tags":["search"],"presence":{"score":22,"stars":2,"forks":0,"downloads_week":28,"last_push_at":"2026-09-07T01:37:52.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/The-40-Thieves/alexandria-mcp","website":null,"version":"11.0.0","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@the-40-thieves/alexandria-mcp","version":"11.0.0","runtimeHint":"npx","transport":{"type":"stdio"},"environmentVariables":[{"description":"OpenAI key for routing (library_ask), synthesis (library_answer, library_research), and embeddings (library_ingest). Search and read tools work without it.","format":"string","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible gateway base URL shared by every LLM role (router, synth, research, embeddings, rerank). Falls back to https://api.openai.com/v1.","format":"string","placeholder":"https://gateway.example.com/v1","name":"ALEXANDRIA_BASE_URL"},{"description":"API key paired with ALEXANDRIA_BASE_URL. Falls back to OPENAI_API_KEY.","format":"string","isSecret":true,"name":"ALEXANDRIA_API_KEY"},{"description":"Unlocks the core source (CORE, 57M+ open access papers). Free key from core.ac.uk/services/api.","format":"string","isSecret":true,"name":"CORE_API_KEY"},{"description":"Unlocks the courtlistener source (US federal and state court opinions). Free key from courtlistener.com.","format":"string","isSecret":true,"name":"COURTLISTENER_API_KEY"},{"description":"Unlocks govinfo (Congressional Record, Federal Register, US Code); also accepted by congress and regulations. Free key from api.data.gov.","format":"string","isSecret":true,"name":"GOVINFO_API_KEY"},{"description":"Unlocks the googlebooks source (40M+ books). Free key from the Google Cloud Console (Books API).","format":"string","isSecret":true,"name":"GOOGLE_BOOKS_API_KEY"},{"description":"Unlocks githubsearch and githubmcp (GitHub code search); optional for ghsa and openiti. Public-repo read scope is enough.","format":"string","isSecret":true,"name":"GITHUB_TOKEN"},{"description":"Unlocks the nasaads source (NASA Astrophysics Data System). Free key from ui.adsabs.harvard.edu.","format":"string","isSecret":true,"name":"NASA_ADS_API_KEY"},{"description":"Unlocks the europeana source (50M+ European cultural heritage items). Free key from apis.europeana.eu.","format":"string","isSecret":true,"name":"EUROPEANA_API_KEY"},{"description":"Optional for semanticscholar and library_recommend; raises the rate limit. Free key from semanticscholar.org/product/api.","format":"string","isSecret":true,"name":"SEMANTIC_SCHOLAR_API_KEY"}]}],"tools":[{"name":"library_answer","description":"Ask a question in plain English and get a synthesized answer with inline [n] citations, fused across sources with reciprocal rank fusion. Use this instead of library_ask when you want a cited answer rather than raw results. Every factual sentence is cited or dropped; an uncited or all-dropped answer is flagged in warnings[]. Requires OPENAI_API_KEY (or ALEXANDRIA_SYNTH_API_KEY). Set response_forma","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_ask","description":"Ask for content in plain English; automatically selects the best sources from all … libraries, generates optimized per-source queries, and searches in parallel. Use this as the default entry point for any natural-language request. Use library_search instead when you already know which source to query. Requires OPENAI_API_KEY (already set for embeddings). Set response_format: \"detailed\" for routing","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_citations","description":"List the works a scholarly item cites (direction: \"references\") or the works that cite it (direction: \"citations\"), resolved through OpenAlex's citation graph with OpenCitations as a fallback when OpenAlex has no record. Accepts an id/source from library_search or library_ask, or a bare DOI/arXiv id. Set format: \"bibtex\" | \"ris\" | \"apa\" to also return a `formatted` bibliography string; BibTeX pref","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_health_check","description":"Report per-source health: 'ok', 'degraded', 'down', 'key_missing', or 'unknown', merging this process's live error rate and latency with the last off-process probe run. The probe layer reads eval/probe-latest.json, which published installs do not ship, so on a published install a source's status stays 'unknown' until this process itself calls it. Use before relying on a source that has been errori","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_index","description":"Dry run: fetch text, chunk semantically, score OCR quality. No writes. Full-text sources only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_ingest","description":"Chunk, embed, and store a text. Idempotent. Full-text sources only. Requires OPENAI_API_KEY + SUPABASE_URL + SUPABASE_SERVICE_ROLE_KEY.","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_list_sources","description":"List all … library sources (count computed from the live registry at startup) with descriptions and capabilities.","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_read","description":"Fetch text from a library source. Full-text sources return cleaned text (truncated at 200k chars). Metadata sources return item details and an external URL.","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_recommend","description":"Get papers similar to a given paper using Semantic Scholar's recommendation engine. Pass a paperId from a semanticscholar search result. Returns up to 500 similar papers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_research","description":"Deep research on a topic: outlines 3 to 7 coverage objectives, generates search queries, answers each with library_answer, extracts learnings and follow-up questions, then recurses with half the breadth. Stops once every objective is covered by a learning, at the given depth, at the time budget, or once a round finds no new sources. Requires OPENAI_API_KEY (or ALEXANDRIA_RESEARCH_API_KEY / ALEXAND","write_action":false,"price_micros":0,"input_schema":null},{"name":"library_search","description":"Search a specific library source by name. Use library_ask instead for natural language queries across multiple sources. Sources marked [full text] support library_read and library_ingest. Sources marked [metadata] return discovery info and external URLs only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"read","description":"fake read","write_action":false,"price_micros":0,"input_schema":null},{"name":"search","description":"fake search","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":77,"grade":"B","scanned_at":"2026-10-16T17:05:42.087Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-16T17:05:42.019Z","components":{"code":{"score":25,"max":25,"notes":["393 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":12,"max":15,"notes":["last push 40 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@the-40-thieves/alexandria-mcp","version":"11.0.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":16,"publishedAt":"2026-09-05T08:57:05.884Z","repositoryUrl":"git+https://github.com/The-40-Thieves/alexandria-mcp.git","weeklyDownloads":28}],"repo":{"found":true,"owner":"The-40-Thieves","repo":"alexandria-mcp","archived":false,"pushedAt":"2026-09-07T01:37:52Z","stars":2,"forks":0,"openIssues":2,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/278549586?v=4","ownerCreatedAt":"2026-04-23T00:50:02Z","license":"MIT"},"icon":{"url":null,"source":"none"},"presence":{"stars":2,"forks":0,"downloadsWeek":28,"license":"MIT","lastPushAt":"2026-09-07T01:37:52.000Z","score":22}}}},"grade_history":[],"reviews":[]}