Provides knowledge management tool for code repositories, suggesting integration with Git repositories
References cloning from a GitHub repository as part of the setup process
Uses Ollama for efficient embedding generation, requiring it to be installed and running for vector operations
Mentions potential future distribution through PyPI, allowing installation via pip
Code Knowledge Tool
A knowledge management tool for code repositories using vector embeddings. This tool helps maintain and query knowledge about your codebase using advanced embedding techniques.
Building and Installing
1. Build the Package
First, you need to build the distribution files:
This will create two files in the dist/ directory:
- code_knowledge_tool-0.1.0-py3-none-any.whl (wheel file for installation)
- code_knowledge_tool-0.1.0.tar.gz (source distribution)
2. Install the Package
Prerequisites
- Ensure Ollama is installed and running:
- Install the package:
Option 1: Install from wheel file (recommended for usage)
Option 2: Install in editable mode (recommended for development)
This option is best if you want to modify the tool or contribute to its development:
Integration with RooCode/Cline
- Copy the MCP configuration to your settings:
For Cline (VSCode):
Add this configuration:
For RooCode:
Add the same configuration as above.
- Restart RooCode/Cline to load the new tool.
Using as Memory Bank and RAG Context Provider
This tool can serve as your project's memory bank and RAG context provider. To set this up:
- Copy the provided template to your project:
- Customize the rules and patterns in .clinerules for your project's needs
The template includes comprehensive instructions for:
- Knowledge base management
- RAG-based development workflows
- Code quality guidelines
- Memory management practices
See clinerules_template.md for the full configuration and usage details.
Features
- Local vector storage for code knowledge
- Efficient embedding generation using Ollama
- Support for multiple file types
- Context-aware code understanding
- Integration with RooCode and Cline via MCP
- RAG-based context augmentation
- Persistent knowledge storage
Requirements
- Python 3.8 or higher
- Ollama service running locally
- chromadb for vector operations
Development
Running Tests
The project follows an integration-first testing approach, focusing on end-to-end functionality and MCP contract compliance. The test suite consists of:
- MCP Contract Tests
- Tool registration and execution
- Resource management
- Knowledge operations
- Error handling
- Package Build Tests
- Installation verification
- Dependency resolution
- MCP server initialization
- Basic functionality
To run the tests:
Test Environment Requirements:
The tests use a temporary directory (test_knowledge_store) that is cleaned up automatically between test runs.
For more details on the testing strategy and patterns, see the documentation in docs/
.
Future Distribution
If you want to make this package available through pip (i.e., pip install code-knowledge-tool
), you would need to:
- Register an account on PyPI
- Install twine:
pip install twine
- Upload your distribution:
twine upload dist/*
However, for now, use the local build and installation methods described above.
License
MIT License
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Provides a project memory bank and RAG context provider for enhanced code understanding and management through vector embeddings, integrated with RooCode and Cline.
- Building and Installing
- Integration with RooCode/Cline
- Using as Memory Bank and RAG Context Provider
- Features
- Requirements
- Development
- Future Distribution
- License
Related Resources
Related MCP Servers
- AsecurityFlicenseAqualityEnables interaction with Redmine projects and issues via the Cline VS Code extension, supporting project management and issue creation through the Model Context Protocol.Last updated 5 months ago121JavaScript
- -securityFlicense-qualityEnables efficient vector database operations for embedding storage and similarity search through a Model Context Protocol interface.Last updated 7 months ago6Python
- AsecurityFlicenseAqualityA powerful context management system that maintains persistent context across coding sessions, helping development teams track project structure, dependencies, and progress.Last updated 4 months ago62TypeScript
- -securityFlicense-qualityImplements Retrieval-Augmented Generation (RAG) using GroundX and OpenAI, allowing users to ingest documents and perform semantic searches with advanced context handling through Modern Context Processing (MCP).Last updated 3 months ago3Python