Alexandria
Pesquisa semântica em mais de 4,6 milhões de trechos de texto de mais de 20.000 obras clássicas de filosofia e humanidades — Platão, Aristóteles, Kant, Nietzsche e milhares mais. Multilíngue (grego, latim, alemão, francês, inglês). Sem necessidade de instalação.
Documentação
Servidor MCP Alexandria
Busca semântica em 4,6 milhões de fragmentos de texto de mais de 20.000 obras clássicas de filosofia e humanidades. Construído para agentes de IA usando FastMCP via HTTP.
O que há na coleção
Todos os textos são de domínio público (anteriores a 1928), provenientes do Internet Archive (coleções americana, bibliotecas europeias e gutenberg).
- Filosofia: Aristóteles, Platão, Kant, Hegel, Nietzsche, Schopenhauer, Descartes, Spinoza, Locke, Hume, Mill, Wittgenstein, Aquino, Agostinho, Leibniz, Rousseau, Voltaire, Marx e centenas de outros
- Tópicos: Ética, metafísica, epistemologia, lógica, filosofia política, teologia, estoicismo, neoplatonismo, existencialismo, história das ideias
- Idiomas: Inglês, alemão, latim, francês, italiano, grego, russo
Conectando-se ao servidor
Remoto (hospedado):
claude mcp add --transport http alexandria https://alexandria.aidatanorge.no/mcp
Via configuração MCP:
{
"mcpServers": {
"alexandria": {
"type": "http",
"url": "https://alexandria.aidatanorge.no/mcp"
}
}
}
Ferramentas
search_texts
Busque na coleção usando linguagem natural. Usa recuperação híbrida densa+esparsa com reclassificação por cross-encoder.
| Parâmetro | Tipo | Descrição |
|---|---|---|
query | string | O que você está procurando |
author | string | Filtro opcional por autor/criador, ex.: Kant, Nietzsche, Plato |
language | string | Filtro opcional por idioma: eng, ger, lat, fre, ita, gre, rus |
limit | int | Número de resultados (padrão 5, máximo 20) |
Exemplos de consultas:
"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"
Cada resultado inclui: title, creator, date, language, subject, text (fragmento), rerank_score, vector_score.
Exemplo com curl:
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
Lista livros da coleção filtrados por autor, assunto ou idioma.
| Parâmetro | Tipo | Descrição |
|---|---|---|
author | string | Filtro por autor/criador, ex.: Kant, Plato |
subject | string | Filtro por palavra-chave de assunto, ex.: ethics, logic |
language | string | Filtro por código de idioma: eng, ger, lat, fre, ita, gre, rus |
limit | int | Máximo de livros a retornar (padrão 20, máximo 100) |
Exemplo com curl:
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
Teste de conectividade.
Prompts
philosopher_analysis(philosopher)— mergulho profundo nas ideias-chave de um filósofotopic_exploration(topic)— explore um tópico entre vários pensadorescompare_philosophers(philosopher_a, philosopher_b, topic)— compare dois filósofos sobre um tópico específico
Arquitetura
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
Auto-hospedagem
Requer uma instância Qdrant em execução com a coleção alexandria populada.
pip install -r requirements.txt
python alexandria_mcp_server.py
# Server starts at http://localhost:8005/mcp
Variáveis de ambiente (opcionais):
QDRANT_HOST=localhost
QDRANT_PORT=6333
MCP_PORT=8005
Licença
MIT