explaingit

kanna12580/kk-knowledge-agent

Analysis updated 2026-05-18

72PythonAudience · developerComplexity · 3/5Setup · moderate

TLDR

A lightweight knowledge base tool that stores and searches your documents by meaning, exposed as an MCP tool AI agents can call directly.

Mindmap

mindmap
  root((kk-knowledge-agent))
    What it does
      Knowledge base storage
      Text and txt upload
      Semantic search
      Streaming results
    Tech stack
      FastAPI backend
      React frontend
      SQLite
      ChromaDB
    Use cases
      Agent tool for search
      Local document search
      Demo knowledge app
    Audience
      Developers
      Agent builders
    Future plans
      Docker Compose
      PostgreSQL support
      PDF and DOCX upload

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Give an AI coding agent a searchable knowledge base of your own documents to pull answers from.

USE CASE 2

Upload text or .txt files and search them by meaning instead of exact keyword matches.

USE CASE 3

Run a small local knowledge base demo with a web frontend for managing documents.

What is it built with?

PythonFastAPIReactViteSQLiteChromaDBsentence-transformers

How does it compare?

kanna12580/kk-knowledge-agentpalaiologos1453/openinterviewprimeintellect-ai/experiments-autonomous-speedrunning
Stars727371
LanguagePythonPythonPython
Setup difficultymoderatemoderatehard
Complexity3/53/54/5
Audiencedeveloperdeveloperresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires separately setting up and running three components: backend, frontend, and MCP server.

In plain English

kk-knowledge-agent is a lightweight knowledge base system that lets you store documents and search them using natural language. You upload plain text content or .txt files, the system splits them into chunks and converts them into numerical embeddings using a local multilingual model (sentence-transformers), then stores those embeddings in ChromaDB. When you search, the system finds chunks that are semantically close to your query rather than just matching keywords, and streams the results back. The project has three parts. The backend is a FastAPI service that handles knowledge base management (create, list, update, delete), document ingestion, and search. It uses SQLite for document metadata and ChromaDB for the vector index. The frontend is a React and Vite demo app for browsing knowledge bases and uploading documents. The third part is an MCP (Model Context Protocol) server, which wraps the backend's search capability as a tool that AI agents can call directly. The README shows it being used with Claude Code and similar tools. To run it locally, you start the backend with uvicorn, the frontend with npm, and the MCP server separately with Python. The MCP config points the agent at the local server.py file. All three components communicate over HTTP on localhost. The README notes several planned improvements: Docker Compose for one-command startup, swapping SQLite for PostgreSQL and ChromaDB for Qdrant or Milvus at larger scale, adding PDF and DOCX upload, and adding hybrid BM25 and vector retrieval with reranking.

Copy-paste prompts

Prompt 1
Help me set up kk-knowledge-agent locally, running the backend, frontend, and MCP server pieces in order.
Prompt 2
Show me how to configure an MCP client to use kk-knowledge-agent's search_knowledge_base tool.
Prompt 3
Walk me through uploading a .txt file to kk-knowledge-agent and searching it semantically.
Prompt 4
Explain how kk-knowledge-agent chunks and embeds documents before storing them in ChromaDB.

Frequently asked questions

What is kk-knowledge-agent?

A lightweight knowledge base tool that stores and searches your documents by meaning, exposed as an MCP tool AI agents can call directly.

What language is kk-knowledge-agent written in?

Mainly Python. The stack also includes Python, FastAPI, React.

How hard is kk-knowledge-agent to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is kk-knowledge-agent for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.