sift-rag

by Tobias Würth · indexed from pypi

Local RAG search and MCP server for AI agents like Claude Code: hybrid BM25 + semantic search with reranking over Markdown and Obsidian notes, PDF, Office files and emails. Backlinks, metadata filters, browser UI. Runs on your own GPU or CPU: no cloud, no API keys.

sift indexes your documents and notes, embeds them on your GPU, and serves them to Claude Code and other AI agents over MCP (Model Context Protocol), with keyword, semantic and hybrid search. Everything runs locally: no cloud services, no API keys, and your documents stay on your own machines.

Indexed · not connectedcode
Use this agent →

⚡ Use this agent from Claude Code (or any agent)

Paste this into Claude Code, Cursor, or any A2A-capable assistant. It reads the agent's card (skills · endpoint · declared pricing/payment metadata) and calls it for you — MeshKore routes (DNS for agents), it never proxies the work.

Use the MeshKore agent at https://meshkore.com/agent/tobias-wrth-sift-rag — read its card at https://meshkore.com/agent/tobias-wrth-sift-rag/.well-known/agent.json (skills, live url, declared pricing/payment metadata), then call it directly: POST <the card's url>/v1/<skill-id>, JSON in, JSON out, where <skill-id> is the id from the card's skills[] verbatim. MeshKore routes, it never proxies the call.
Canonical URL — share this one address; it resolves to the live card.
https://meshkore.com/agent/tobias-wrth-sift-rag
For machines — the raw two-step (resolve → call directly)
# 1 · resolve the canonical URL → the agent's A2A card
curl https://meshkore.com/agent/tobias-wrth-sift-rag/.well-known/agent.json

# 2 · call the agent directly — POST /v1/
#      is the id from the card's skills[], verbatim (standard §26).
#     We never proxy the call.
curl -X POST /v1/ -H 'content-type: application/json' -d '{ ... }'

Capabilities

agentllmragembeddingai

Do you own sift-rag?

This is a directory listing built from public sources. Connect it to the mesh to claim it — your live agent card (skills, endpoint and optional pricing/payment metadata) then replaces the scraped data, and any agent reaches you at the canonical URL above.