Skip to main content
Glama

Deprecated

This project has moved to stache-ai - it is no longer maintained here.

RAGBrain MCP

Python 3.10+ License: MIT

MCP server that connects Claude Desktop to your RAGBrain knowledge base.

Install

pip install ragbrain-mcp

Related MCP server: Personal RAG MCP Server

Configure Claude Desktop

Add to your config file:

OS

Path

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

Linux

~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "ragbrain": {
      "command": "ragbrain-mcp",
      "env": {
        "RAGBRAIN_URL": "http://localhost:8000"
      }
    }
  }
}

Restart Claude Desktop. Done.

Tools

Tool

Description

ragbrain_list_namespaces

List namespaces with doc counts

ragbrain_search

Semantic search

ragbrain_browse_namespace

List docs in a namespace

ragbrain_get_document

Get full document by ID

ragbrain_discover_documents

Find docs by topic via summary search

Example prompts

  • "What namespaces do I have?"

  • "Search for machine learning"

  • "Show docs in work/projects"

  • "Get document abc-123"

Config

Environment variables:

Variable

Default

Description

RAGBRAIN_URL

http://localhost:8000

RAGBrain API URL

RAGBRAIN_TIMEOUT

60

Request timeout (seconds)

RAGBRAIN_LOG_LEVEL

INFO

DEBUG, INFO, WARNING, ERROR

RAGBRAIN_MAX_RESULTS

20

Max search results

RAGBRAIN_MAX_DOCUMENT_LENGTH

100000

Max doc length (chars)

Development

git clone https://github.com/ragbrain/ragbrain-mcp.git
cd ragbrain-mcp
uv venv && source .venv/bin/activate
uv pip install -e ".[dev]"
pytest
┌─────────────────┐     stdio      ┌─────────────────┐     HTTP      ┌─────────────────┐
│  Claude Desktop │ ◄────────────► │  RAGBrain MCP   │ ◄───────────► │  RAGBrain API   │
└─────────────────┘                └─────────────────┘               └─────────────────┘

Troubleshooting

Can't connect? Check RAGBrain is running: curl http://localhost:8000/health

Tools not showing? Verify config path, test with ragbrain-mcp, restart Claude Desktop.

Timeouts? Set RAGBRAIN_TIMEOUT higher.

License

MIT

Available Tools

5 tools
ragbrain_browse_namespaceA

List all documents stored in a specific namespace. Returns document names, IDs, chunk counts, and creation dates. Use this to see what's in a particular knowledge area.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of documents to return (default: 50)
namespaceYesThe namespace to browse (e.g., 'personal', 'work/projects')

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description is the sole source for behavioral info. It discloses that the tool is a read operation (listing documents) and mentions return fields. However, it does not clarify pagination behavior (though the limit parameter is documented in schema) or whether there are any other side effects or authentication needs. Given no annotations, a score of 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise: two sentences. The first sentence states the core function and return values; the second provides usage guidance. No unnecessary words. It is front-loaded with the main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description must explain return values. It does so by listing names, IDs, chunk counts, and creation dates. However, it does not mention ordering or whether there is pagination beyond the limit parameter. For a browsing tool, this is a minor gap. Score 3 means adequate but could be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (both 'namespace' and 'limit' have descriptions). The description adds context by explaining namespace as 'a particular knowledge area' with examples ('personal', 'work/projects'), which adds meaning beyond the schema. The limit parameter details (default 50, max 200) are in schema, but the description reinforces usage. Slight room for improvement if description clarified the effect of limit on results.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: listing documents in a namespace. It specifies the verb 'list' and the resource 'documents in a namespace', and mentions return fields (names, IDs, chunk counts, dates). It distinguishes from siblings like ragbrain_search (query-based) and ragbrain_list_namespaces (lists namespaces, not documents).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a usage hint: 'Use this to see what's in a particular knowledge area.' This implies when to use it but does not mention when to avoid it or explicitly compare to siblings like ragbrain_discover_documents or ragbrain_search. More explicit guidance on alternatives would improve this.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ragbrain_discover_documentsA

Discover documents by semantic search over their summaries. Use this to find documents about a topic BEFORE searching for specific content. Returns document titles, headings, and relevance scores. Example queries: 'documents about leadership', 'notes on valuation', 'files covering conflict resolution'. After discovering relevant documents, use ragbrain_search to find specific content.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSemantic query to find documents by topic or content. Can be a question, topic, or description of what you're looking for.
top_kNoNumber of documents to return (default: 10, max: 50)
namespaceNoOptional: limit discovery to a specific namespace (e.g., 'mba/finance'). Supports wildcards like 'mba/*'

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It discloses the return values (titles, headings, relevance scores) and mentions 'semantic search over summaries'. It does not discuss potential side effects, rate limits, or authentication, but the inferred read-only nature is reasonable. The description adds some behavioral context beyond the schema but could be more thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (under 50 words) and well-structured. The key purpose is front-loaded, followed by usage guidance, example queries, and a clear link to the next step (ragbrain_search). Every sentence serves a purpose with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema, the description adequately explains what is returned (titles, headings, relevance scores). The parameter schema is fully documented. The description also provides example queries and workflow guidance. It could mention pagination or result limits (though top_k is in schema), but overall it is complete enough for an AI agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by providing example queries and explaining the workflow (e.g., using the tool before searching). It also clarifies that the tool returns titles, headings, and scores, which adds meaning beyond the schema definitions. This elevates the score above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Discover documents by semantic search over their summaries.' It uses a specific verb ('Discover') and resource ('documents'), and distinguishes it from sibling tools by specifying it should be used before searching for specific content and directing to 'ragbrain_search' afterward.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use this tool: 'Use this to find documents about a topic BEFORE searching for specific content.' It also gives example queries and names the follow-up sibling tool 'ragbrain_search'. However, it does not explicitly state when not to use it, missing full exclusion guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ragbrain_get_documentA

Retrieve the full content of a specific document by its ID. Returns the complete reconstructed text from all chunks. Use this when you need to read an entire document.

ParametersJSON Schema
NameRequiredDescriptionDefault
doc_idYesThe document ID (UUID) to retrieve

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavioral traits. It states that it 'Returns the complete reconstructed text from all chunks,' which gives a good understanding of the output. Minor missing details like performance implications but adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no wasted words. The purpose is front-loaded, and every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description covers purpose, return value (reconstructed text), and usage hint. Could mention handling of missing IDs or size limits, but not essential.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a single parameter (doc_id) already described in the schema as 'The document ID (UUID) to retrieve.' The description adds no further semantic meaning beyond the schema, so baseline applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Retrieve the full content of a specific document by its ID' and distinguishes itself from sibling tools (browse, discover, list, search) by specifying its use for reading an entire document.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use this when you need to read an entire document,' providing clear context for when to use it. However, it does not mention when not to use it or suggest alternative tools for partial reads.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ragbrain_list_namespacesA

List all namespaces in the RAGBrain knowledge base. Returns namespace names, descriptions, document counts, and hierarchy. Use this to discover what knowledge areas are available.

ParametersJSON Schema
NameRequiredDescriptionDefault
tree_viewNoIf true, returns namespaces as a hierarchical tree. If false, returns flat list. Default: false

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavioral aspects. It mentions return fields but does not disclose whether the operation is read-only, has side effects, or requires permissions. The optional parameter 'tree_view' is not mentioned in the description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only two sentences, front-loads the purpose, and contains no extraneous information. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (listing namespaces with one optional param), the description covers the main action and return types. However, it does not explain the hierarchy structure or the effect of the 'tree_view' parameter, and it does not differentiate from sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with the parameter 'tree_view' already described. The description adds no additional meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists all namespaces and specifies the returned fields (names, descriptions, counts, hierarchy). It also indicates usage for discovering knowledge areas. However, it does not explicitly differentiate from sibling tools like browse_namespace.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says 'Use this to discover what knowledge areas are available,' which gives a usage context. But it lacks explicit guidance on when not to use this tool or what alternatives exist (e.g., browsing a specific namespace).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv0.1.0
    • First observedragbrain_browse_namespace
    • First observedragbrain_discover_documents
    • First observedragbrain_get_document
    • First observedragbrain_list_namespaces
    • First observedragbrain_search

TDQS

A4.1/5.0

Scored across 5 tools

Disambiguation5/5

Each tool serves a distinct purpose: listing namespaces, browsing a namespace, discovering documents via summaries, searching content chunks, and retrieving full documents. No ambiguity in their roles.

Naming Consistency5/5

All tools follow a consistent 'ragbrain_verb_noun' pattern with clear verbs (list_namespaces, browse_namespace, discover_documents, search, get_document) and snake_case throughout.

Tool Count5/5

Five tools is well-scoped for a knowledge retrieval server, covering all necessary operations without being excessive or insufficient.

Completeness5/5

The tool set provides complete coverage for querying a RAG knowledge base: exploring namespaces, discovering and searching documents, and retrieving full content. No obvious gaps for read-only operations.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Turns Claude Desktop into a personal document question-answering system using local vector search. Index PDF, TXT, and Markdown documents into collections and get answers based strictly on your documents with zero hallucination.
    12
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude Desktop to search and query personal document collections (PDF, Word, Markdown, text) using semantic search and conversational AI with full context preservation across exchanges.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Connects Claude to a personal knowledge base with hybrid search over code, documents, and images. Allows the AI assistant to retrieve and answer from your own files during conversations.
    1
    MIT