ManualMind
by jwgv
Overview
ManualMind is an AI-powered document search and query system designed to help users find answers to questions about music technology manuals using natural language processing and vector search.
Installation
./scripts/deploy.sh startEnvironment Variables
- OPENAI_API_KEY
- MANUALMIND_API_KEY
- MANUALMIND_INTERNAL_TOKEN
- REDIS_HOST
- REDIS_PORT
- REDIS_DB
- MAX_CHUNK_SIZE
- CHUNK_OVERLAP
- RATE_LIMIT_PER_MINUTE
- MCP_HTTP_PORT
- MANUALMIND_API_URL
- MAX_QUERY_LENGTH
- OPENAI_DEFAULT_MODEL
- LANGSMITH_API_KEY
- LANGSMITH_PROJECT
- LANGCHAIN_TRACING_V2
Security Notes
CRITICAL: The `eval()` function is used in `main.py` to deserialize `processed_files` retrieved from Redis. If a malicious actor gains access to the Redis instance (which is unauthenticated within the Docker network), they could inject arbitrary Python code into the `processed_files` key, leading to Remote Code Execution (RCE). CRITICAL: The `/query` endpoint in `main.py` is explicitly public (no API key required), allowing unauthenticated and unmonitored access to the core LLM query functionality, leading to potential abuse, high OpenAI costs, and prompt injection risks despite internal sanitization efforts. CRITICAL: The MCP server's HTTP endpoints (`/tools`, `/call`, `/query`, `/status`, `/process`, `/llm-models`) are unauthenticated. While it uses `MANUALMIND_API_KEY` for calls to the main ManualMind backend for some tools, the direct access to the MCP server's HTTP layer is unprotected, relying only on rate limiting. This exposes sensitive operations (e.g., triggering `process_documents`) to unauthorized callers. MEDIUM: Redis is configured without authentication within the Docker network. Given the RCE vulnerability with `eval()` and the unauthenticated MCP server, this setup presents a significant attack surface if any component in the network is compromised or misconfigured.
Similar Servers
aderyn
A powerful Solidity static analyzer that provides structured access to smart contract code, ASTs, and analysis results via a Model Context Protocol (MCP) server or Language Server Protocol (LSP), primarily intended for AI agents or advanced tooling.
enrichmcp
A Python framework for building semantic APIs for AI agents, allowing them to discover, understand, and navigate structured data models via the Model Context Protocol.
meds-mcp
Provides a medical context protocol (MCP) server and a React-based chat interface for interacting with patient records via LLMs and medical ontologies, facilitating evidence review and patient data exploration.
dotbox-mcp
An MCP server that enables LLMs to execute .NET workloads in isolated Docker containers for C# code execution, project management, and web API hosting.