Skip to content
Agentmart
Submit a tool

haiku.rag

Local-first agentic RAG with citations - hybrid search, reranking, multimodal document retrieval

Connector by ggozad · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 636
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/ggozad-haiku-rag

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Local-first agentic RAG with citations - hybrid search, reranking, multimodal document retrieval

Use cases: knowledge-base, document-processing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
6 read · 0 write · 1 delete
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Tools by what they do 7

Read from the source code; the running server may list different tools.

Read 6 · Look things up without changing anything.

  • get_document
  • get_document_outline
  • get_document_section
  • list_documents
  • search_documents
  • search_documents_by_image

Delete 1 · Delete, drop, revoke or wipe things.

  • execute_code

Files it touches

  • Any path the agent passes to its tools

Tools (7)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • execute_code

    Run a Python program over the documents and return what it printed. Use this when the answer is a count, an aggregate, a comparison across many documents, a lookup by document or chunk metadata, or a pattern over whole documents: whatever a search cannot rank. The program runs in a sandboxed interpreter on the server. Each call is one program, nothing carries over between calls, and `print` is the only output. Inside the program, `/documents/{document_id}/` holds `metadata.json` (id, title, uri, created_at, metadata), `content.txt` (the whole text), `items.jsonl` (one item per line: self_ref…

  • get_document

    Read one document whole, in reading order. Use this after a search when a passage is not enough. Returns the document's content, title, uri and metadata. Ids come from search results and `list_documents`. Args: document_id: The document's id. source: The collection holding it. Without one every collection is asked.

  • get_document_outline

    The heading tree of a document, with page numbers. Use this on a long document to see its structure before reading, then pass a node's `id` to `get_document_section`. Returns the headings nested by level; an empty list means the document has no headings, so read it with `get_document`. Args: document_id: The document's id. source: The collection holding it. Without one every collection is asked.

  • get_document_section

    The text of one section of a document, subsections included. Use this to read a part of a long document instead of the whole. `section_id` is a node `id` from `get_document_outline`. Returns the section's heading, page numbers and text in reading order, up to the next heading of the same or a higher level. Args: document_id: The document's id. section_id: The `id` of a node in the document's outline. source: The collection holding it. Without one every collection is asked.

  • list_documents

    List what the knowledge base holds. Use this to see which documents exist, their titles, URIs and metadata, and so what a `filter` can match. Not a search: it returns no passages. Args: limit: How many documents to return. offset: How many documents to skip, for paging.

  • search_documents

    Search the knowledge base by meaning and keyword. Use this first for any question the documents might answer; it needs no model and is the cheapest call. Results come best first, each with its rank, `Document ID`, `Collection` when the server covers several, the document title, section headings, the matched chunk's metadata when it has any, and the matching passage expanded to its section; pass the id and collection to the document tools. Pictures in the results follow as images, each labelled with its result. Ranks, not scores, are the signal: scores are not comparable across queries. If not…

  • search_documents_by_image

    Search the knowledge base with an image as the query. Use this when the question is about a picture rather than words. The image is embedded and matched against document text and figures by vector similarity alone. Results have the shape of `search_documents` results. Args: image_base64: The query image, PNG or JPEG bytes as base64. limit: How many results to return; the server's configured default when omitted. include_images: Return the pictures in the results as images. False for a smaller response.

Compare and alternatives

Featured in

Signals

Stars
636
Forks
55
Open issues
3
Contributors
14
Weekly downloads
806
Last commit
Oct 23, 2026 (5 days ago)
Last release
Oct 23, 2026 (5 days ago)
Last package publish
Oct 23, 2026 (5 days ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.ggozad/haiku-rag
Version
0.101.0
Auth
No auth
Packages
pypi haiku-rag
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from ggozad

Cite this page

haiku.rag MCP server. Agent Mart. https://agentmart.dev/connectors/ggozad-haiku-rag (last updated 2026-10-24)