Back to Home
akvo icon

vector-knowledge-base-mcp-server

by akvo

Overview

A FastAPI/FastMCP server for vector-based knowledge management, providing document storage, similarity search, and intelligent retrieval capabilities for LLM-powered agents.

Installation

Run Command
./dev.sh up -d

Environment Variables

  • DATABASE_URL
  • MINIO_ENDPOINT
  • MINIO_ACCESS_KEY
  • MINIO_SECRET_KEY
  • MINIO_BUCKET_NAME
  • MINIO_SERVER_URL
  • CHROMA_DB_HOST
  • CHROMA_DB_PORT
  • OPENAI_API_KEY
  • OPENAI_API_BASE
  • OPENAI_EMBEDDINGS_MODEL
  • ADMIN_API_KEY
  • RABBITMQ_HOST
  • RABBITMQ_PORT
  • RABBITMQ_USER
  • RABBITMQ_PASS
  • APP_ENV

Security Notes

1. **Publicly Accessible Documents**: The MinIO bucket is configured for public read access. This makes all uploaded documents directly accessible via URL without authentication, posing a significant risk if sensitive information is stored. 2. **Default Credentials/Keys**: The `.env.example` and `config.py` provide default MinIO credentials ('minioadmin') and a placeholder 'ADMIN_API_KEY' ('changeme' in `api_util.py`). These *must* be changed for any production deployment. 3. **Filename Sanitization Vulnerability (CRITICAL)**: The `DocumentService.upload_documents` method directly uses `file.filename` from user uploads to construct file paths in MinIO without sufficient sanitization. Although a `make_clean_filename` function exists, it is commented out and not used. This allows for potential path traversal attacks (e.g., using `../../../` in filenames) or other file system manipulation if an attacker can craft a malicious filename. This could lead to unauthorized file creation, overwriting, or access outside the intended directories in MinIO, making it a critical vulnerability. 4. **Celery `asyncio.run` in worker**: Using `asyncio.run` inside a synchronous Celery task can lead to unexpected behavior and resource exhaustion if not handled carefully.

Similar Servers

Stats

Interest Score0
Security Score3
Cost ClassMedium
Avg Tokens5000
Stars0
Forks0
Last Update2025-12-09

Tags

vector-databaseknowledge-baseFastAPIMinIOChromaDBLLM-agentMCP