使用说明
LightRAG MCP服务器
MCP服务器,用于将LightRAG与AI工具集成。为通过MCP协议与LightRAG API交互提供统一的接口。
描述
LightRAG MCP服务器是LightRAG API和兼容MCP的客户端之间的桥梁。它允许在支持MCP协议的各种AI工具中使用LightRAG(检索增强生成)功能。
主要特点
- 信息检索:对文档执行语义和关键字查询
- 文档管理:上传、索引和跟踪文档状态
- 知识图谱操作:管理知识图谱中的实体和关系
- 监控:检查LightRAG API状态和文档处理
安装
此服务器旨在用作MCP服务器,应使用uv安装在虚拟环境中,而不是作为全系统软件包。
开发安装
# Create a virtual environment
uv venv --python 3.11
# Install the package in development mode
uv pip install -e .
需求
- Python 3.11+
- 运行LightRAG API服务器
Docker和Docker Compose
该回购提供 Dockerfile 对于MCP服务器和 docker-compose.yml 它同时运行LightRAG和MCP服务器。
快速入门(Docker Compose)
docker compose up -d --build
docker compose ps
MCP端点: http://localhost:8000/
LightRAG API: http://localhost:9621/
用法
LightRAG MCP服务器支持两种MCP传输模式:
- stdio(默认):运行MCP客户端配置文件(
mcp-config.json) - 可流式传输http:作为远程MCP客户端的独立HTTP服务器运行
命令行选项
LightRAG API连接:
--host:LightRAG API主机(默认值:localhost)--port:LightRAG API端口(默认值:9621)--api-key:LightRAG API密钥(可选)
MCP传输:
--mcp-transport:MCP传输(stdio或streamable-http,默认值:stdio)--mcp-http-host:MCP HTTP主机(默认值:127.0.0.1)--mcp-http-port:MCP HTTP端口(默认值:8000)--mcp-http-path:MCP HTTP基/装载路径(默认值:/)--mcp-http-stateless:启用无状态HTTP模式(每个请求一个新会话)--mcp-http-json-response:返回JSON响应,而不是HTTP的SSE
与LightRAG API集成
MCP服务器需要运行LightRAG API服务器。按如下方式启动:
# Create virtual environment
uv venv --python 3.11
# Install dependencies
uv pip install -r LightRAG/lightrag/api/requirements.txt
# Start LightRAG API
uv run LightRAG/lightrag/api/lightrag_server.py --host localhost --port 9621 --working-dir ./rag_storage --input-dir ./input --llm-binding openai --embedding-binding openai --log-level DEBUG
设置为MCP服务器(stdio)
要将LightRAG MCP设置为MCP服务器,请将以下配置添加到MCP客户端配置文件中(例如。, mcp-config.json):
使用uvenv(uvx):
{
"mcpServers": {
"lightrag-mcp": {
"command": "uvx",
"args": [
"lightrag_mcp",
"--host",
"localhost",
"--port",
"9621",
"--api-key",
"your_api_key"
]
}
}
}
发展
{
"mcpServers": {
"lightrag-mcp": {
"command": "uv",
"args": [
"--directory",
"/path/to/lightrag_mcp",
"run",
"src/lightrag_mcp/main.py",
"--host",
"localhost",
"--port",
"9621",
"--api-key",
"your_api_key"
]
}
}
}
替换 /path/to/lightrag_mcp 使用lightrag mcp目录的实际路径。
通过流式HTTP(独立服务器)运行
当您需要远程访问或希望在HTTP基础架构后托管MCP服务器时,请使用此选项:
uv run src/lightrag_mcp/main.py \
--mcp-transport streamable-http \
--mcp-http-host 0.0.0.0 \
--mcp-http-port 8000 \
--mcp-http-path /mcp \
--host localhost \
--port 9621 \
--api-key your_api_key
MCP客户端应连接到: http://localhost:8000/mcp
Docker运行时配置
提供以下秘密 LIGHTRAG_API_KEY 在运行时(不在图像中):
docker build -t lightrag-mcp:local .
docker run --rm -it --env-file docker/mcp-example.env lightrag-mcp:local
可用的MCP工具
文档查询
query_document:通过LightRAG API执行对文档的查询
文档管理
insert_document:将文本直接添加到LightRAG存储中upload_document:将文档从文件上传到/input目录insert_file:将文档从文件直接添加到存储中insert_batch:从目录中添加一批文档scan_for_new_documents:开始扫描/input目录以查找新文档get_documents:获取所有上传文档的列表get_pipeline_status:获取管道中文档处理的状态
知识图谱操作
get_graph_labels:从知识图中获取标签(节点和关系类型)create_entities:在知识图中创建多个实体edit_entities:编辑知识图中的多个现有实体delete_by_entities:按名称从知识图中删除多个实体delete_by_doc_ids:删除与多个文档关联的所有实体和关系create_relations:在知识图中的实体之间创建多个关系edit_relations:编辑知识图中实体之间的多个关系merge_entities:通过关系迁移将多个实体合并为一个
监控
check_lightrag_health:检查LightRAG API状态
发展
安装开发依赖项
uv pip install -e ".[dev]"
运行过梁
ruff check src/
mypy src/
许可证
麻省理工学院