🔍 About

ra-mcp provides AI assistants with access to millions of transcribed historical documents from Riksarkivet (the Swedish National Archives). Search 17th-19th century court records, prison registers, and other digitized materials using advanced search syntax.

RA-MCP Logo
Full-text search ALTO XML transcriptions IIIF images Wildcards Fuzzy search Boolean operators

📖 Learn more: github.com/AI-Riksarkivet/ra-mcp

🔌 Connect MCP Server

For Mistral, Claude or ChatGPT

Adding ra-mcp with streamable http:

URL: https://riksarkivet-ra-mcp.hf.space/mcp

For Claude Code

claude mcp add --transport http ra-mcp https://riksarkivet-ra-mcp.hf.space/mcp

With MCP Inspector

cat > mcp.json <<'EOF'
{
  "mcpServers": {
    "ra-mcp": {
      "type": "streamable-http",
      "url": "https://riksarkivet-ra-mcp.hf.space/mcp",
      "note": "ra-mcp server - Swedish National Archives"
    }
  }
}
EOF

npx -y @modelcontextprotocol/inspector --config ./mcp.json

Open http://0.0.0.0:7860 in your browser to access the Inspector UI.

🛠️ Available Tools

📚 Search Syntax Reference

Type Syntax Example Description
Exact "word" "Stockholm" Find exact matches
Wildcard (single) ? "St?ckholm" Match any single character
Wildcard (multiple) * "Stock*" Match zero or more characters
Fuzzy ~ "Stockholm~" Find similar terms (edit distance: 2)
Fuzzy (custom) ~N "Stockholm~1" Custom edit distance (0-2)
Proximity "w1 w2"~N "Stockholm trolldom"~10 Words within N words apart
Boosting ^N "Stockholm^4 trol*" Increase term relevance
Boolean AND AND (Stockholm AND trolldom) Both terms required
Boolean OR OR (Stockholm OR Göteborg) Either term required
Boolean NOT NOT (Stockholm NOT trolldom) Exclude second term
Grouping (...) ((Stockholm OR Göteborg) AND troll*) Create sub-queries

Note: Always use grouping () for boolean searches and "" for multi-word phrases.

🎯 Usage Examples

Ask your AI assistant naturally:

💬 "Find documents about Stockholm"

Simple keyword search

💬 "Search for troll* - any word starting with troll"

Wildcard search: trolldom, trolleri, trollkona, etc.

💬 "Find Stockholm and trolldom mentioned close together"

Proximity search within context

💬 "Search for (Stockholm OR Göteborg) AND troll*"

Complex boolean query with wildcards

💬 "Show me page 7 of document SE/RA/310187/1"

Browse specific pages with full transcription

💬 "Browse pages 5-12 and highlight trolldom"

View page ranges with keyword highlighting