Alexandria
20.000'den fazla klasik felsefe ve beşeri bilimler eserinden (Platon, Aristoteles, Kant, Nietzsche ve binlercesi) 4,6 milyondan fazla metin parçası üzerinde anlamsal arama. Çok dilli (Yunanca, Latince, Almanca, Fransızca, İngilizce). Kurulum gerektirmez.
Dokümantasyon
Alexandria MCP Server
Semantic search over 4.6 million text chunks from 20,000+ classical philosophy and humanities works. Built for AI agents using FastMCP over HTTP.
What's in the collection
All texts are public domain (pre-1928), sourced from Internet Archive (americana, europeanlibraries, gutenberg collections).
- Philosophy: Aristotle, Plato, Kant, Hegel, Nietzsche, Schopenhauer, Descartes, Spinoza, Locke, Hume, Mill, Wittgenstein, Aquinas, Augustine, Leibniz, Rousseau, Voltaire, Marx, and hundreds more
- Topics: Ethics, metaphysics, epistemology, logic, political philosophy, theology, stoicism, neoplatonism, existentialism, history of ideas
- Languages: English, German, Latin, French, Italian, Greek, Russian
Connecting to the server
Remote (hosted):
claude mcp add --transport http alexandria https://alexandria.aidatanorge.no/mcp
Via MCP config:
{
"mcpServers": {
"alexandria": {
"type": "http",
"url": "https://alexandria.aidatanorge.no/mcp"
}
}
}
Tools
search_texts
Search the collection using natural language. Uses hybrid dense+sparse retrieval with cross-encoder reranking.
| Parameter | Type | Description |
|---|---|---|
query | string | What you are looking for |
author | string | Optional filter by author/creator, e.g. Kant, Nietzsche, Plato |
language | string | Optional language filter: eng, ger, lat, fre, ita, gre, rus |
limit | int | Number of results (default 5, max 20) |
Example queries:
"Nietzsche will to power eternal recurrence""Kantian categorical imperative duty""Platonic theory of forms and the Good""Stoic virtue and the sage""Hegel dialectics spirit history"
Each result includes: title, creator, date, language, subject, text (chunk), rerank_score, vector_score.
curl example:
curl -X POST https://alexandria.aidatanorge.no/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_texts",
"arguments": {
"query": "Kantian categorical imperative duty ethics",
"author": "Kant",
"limit": 3
}
}
}'
get_book_list
List books in the collection filtered by author, subject or language.
| Parameter | Type | Description |
|---|---|---|
author | string | Filter by author/creator, e.g. Kant, Plato |
subject | string | Filter by subject keyword, e.g. ethics, logic |
language | string | Filter by language code: eng, ger, lat, fre, ita, gre, rus |
limit | int | Max books to return (default 20, max 100) |
curl example:
curl -X POST https://alexandria.aidatanorge.no/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "get_book_list",
"arguments": {"author": "Plato", "language": "eng"}
}
}'
ping
Connectivity test.
Prompts
philosopher_analysis(philosopher)— deep dive into a philosopher's key ideastopic_exploration(topic)— explore a topic across multiple thinkerscompare_philosophers(philosopher_a, philosopher_b, topic)— compare two philosophers on a specific topic
Architecture
Archive.org (13,000+ books)
↓
Text extraction + chunking
↓
Qdrant (4.6M vectors)
↓
Hybrid search: intfloat/multilingual-e5-large (dense) + Qdrant/bm25 (sparse)
↓
Cross-encoder reranking: mmarco-mMiniLMv2-L12-H384-v1
↓
FastMCP 3.2 over HTTP
Self-hosting
Requires a running Qdrant instance with the alexandria collection populated.
pip install -r requirements.txt
python alexandria_mcp_server.py
# Server starts at http://localhost:8005/mcp
Environment variables (optional):
QDRANT_HOST=localhost
QDRANT_PORT=6333
MCP_PORT=8005
License
MIT