KbSAFE
Build a knowledge base into a tar.gz and give it to this MCP server, and it is ready to serve.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
[](https://mseep.ai/app/geeksfino-kb-mcp-server)
A Model Context Protocol (MCP) server implementation powered by txtai, providing semantic search, knowledge graph capabilities, and AI-driven text processing through a standardized interface.
The Power of txtai: All-in-one Embeddings Database
This project leverages txtai, an all-in-one embeddings database for RAG leveraging semantic search, knowledge graph construction, and language model workflows. txtai offers several key advantages:
- Unified Vector Database: Combines vector indexes, graph networks, and relational databases in a single platform
- Semantic Search: Find information based on meaning, not just keywords
- Knowledge Graph Integration: Automatically build and query knowledge graphs from your data
- Portable Knowledge Bases: Save entire knowledge bases as compressed archives (.tar.gz) that can be easily shared and loaded
- Extensible Pipeline System: Process text, documents, audio, images, and video through a unified API
- Local-first Architecture: Run everything locally without sending data to external services
How It Works
The project contains a knowledge base builder tool and a MCP server. The knowledge base builder tool is a command-line interface for creating and managing knowledge bases. The MCP server provides a standardized interface to access the knowledge base.
It is not required to use the knowledge base builder tool to build a knowledge base. You can always build a knowledge base using txtai's programming interface by writing a Python script or even using a jupyter notebook. As long as the knowledge base is built using txtai, it can be loaded by the MCP server. Better yet, the knowledge base can be a folder on the file system or an exported .tar.gz file. Just give it to the MCP server and it will load it.
##
714aa0d57afbOBSERVED · 2026-10-07Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add kb-mcp-server --env TOKENIZERS_PARALLELISM=${TOKENIZERS_PARALLELISM} -- uvx kb-mcp-server{
"mcpServers": {
"kb-mcp-server": {
"command": "uvx",
"args": [
"kb-mcp-server"
],
"env": {
"TOKENIZERS_PARALLELISM": "${TOKENIZERS_PARALLELISM}"
}
}
}
}Exposed tools (7)
5 read · 2 write · 0 destructive.
| Tool | Risk | Description |
|---|---|---|
add_documents | write | Add multiple documents to the search index. |
analyze_graph | read | Implementation of graph analysis using txtai graph. |
answer_question | read | Answer questions using txtai |
create_graph | write | Implementation of graph creation using txtai graph. |
echo | read | Echo back the message. |
extract_text | read | |
list_documents | read | List all documents in the search index. |
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (1 observation(s))
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (4)
ds = pickle.load(f)
index_data = pickle.load(f)
return hashlib.md5(key_string.encode()).hexdigest()
This creates a symbolic link from your user-specific installation to a system-wide location. For macOS applications like Claude Desktop, you can modify the system-wide PATH by creating or editing a la
Gates applied: no_behavioural_pass.
714aa0d57afbfull audit observations/trust-audit/mcp-server/geeksfino__kb.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-07 | 714aa0d57afb | SAFE | B | 89 | first audit |
Questions
What is the Kb MCP server?
Build a knowledge base into a tar.gz and give it to this MCP server, and it is ready to serve.
What tools does Kb expose?
7 in total: 5 read-only, 2 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.
Is Kb safe to connect to an agent?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.
What credentials does Kb need?
It reads TOKENIZERS_PARALLELISM from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How does Kb run?
It speaks stdio, so it runs as a local process your client starts. It is published on PyPI as kb-mcp-server.
How current is this page?
The grade is for one exact copy of the source (714aa0d57afb), read on 2026-10-07. The repository is watched and re-audited when it changes.