Token导航 LogoToken导航TokenDH.com
Docs2db MCP Server logo
搜索检索stdio官方级别未说明来源级核验

Docs2db MCP Server

MCP Server

提供针对RHEL文档的语义和混合搜索工具,支持MCP协议和实时流传输。

工具数

1

提示词数

0

GitHub Stars

3

资源数

0
搜索混合搜索PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

rhel-lightspeed

提供方

rhel-lightspeed

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run python -m docs2db_mcp

详细介绍

docs2db-mcp服务器

用于docs2db-api-RAG查询的MCP服务器。为RHEL文档提供语义和混合搜索工具。与llama stack、Goose、Claude Desktop和其他MCP客户端兼容。

特性

  • 混合搜索:将向量相似性和BM25关键字搜索与互序融合相结合
  • 交叉编码器重新排序:使用ms-marco-MiniLM-L-6-v2提高结果质量
  • MCP协议:通过FastMCP的标准模型上下文协议
  • 苏格兰和南方能源公司运输:服务器发送实时流媒体事件
  • 可配置的:所有设置的环境变量
  • 生产就绪:容器化、非root用户、健康检查

安装

先决条件

安装 紫外线:

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Or with brew
brew install uv

来自PyPI

uv add docs2db-mcp-server

源自

git clone https://github.com/rhel-lightspeed/docs2db-mcp-server.git
cd docs2db-mcp-server
uv sync
uv pip install -e .

快速开始

先决条件

  1. PostgreSQL与pgvector 包含docs2db RAG数据库
  2. docs2db 构建RAG数据库(请参见 docs2db)

运行服务器

# Start the MCP server (uses localhost defaults)
uv run python -m docs2db_mcp

默认配置连接到 postgresql://postgres:postgres@localhost:5432/ragdb

服务器将于启动 http://localhost:8002/sse

与骆驼堆叠一起使用

添加到您的 run.yaml:

tool_runtime:
  - provider_id: model-context-protocol
    provider_type: remote::model-context-protocol

registered_resources:
  tool_groups:
    - toolgroup_id: mcp::docs2db-rag
      provider_id: model-context-protocol
      mcp_endpoint:
        uri: http://localhost:8002/sse

与Goose一起使用

添加 ~/.config/goose/config.yaml:

extensions:
  docs2db-rag:
    enabled: true
    type: stdio
    name: docs2db-rag
    cmd: uv
    args:
    - run
    - python
    - -m
    - docs2db_mcp
    envs:
      DOCS2DB_MCP_TRANSPORT: stdio

与Claude Desktop一起使用

添加 claude_desktop_config.json:

{
  "mcpServers": {
    "docs2db-rag": {
      "command": "uv",
      "args": ["run", "python", "-m", "docs2db_mcp"]
    }
  }
}

配置

所有配置均通过环境变量进行 DOCS2DB_MCP_ 前缀。

备注:对于stdio传输, DOCS2DB_LOG_LEVEL 自动设置为 CRITICAL 以尽量减少启动日志。如果需要,手动设置。

MCP服务器设置

变量默认值描述
DOCS2DB_MCP_TRANSPORTsse运输类型(sse/stdio)
DOCS2DB_MCP_HOST0.0.0.0绑定地址
DOCS2DB_MCP_PORT8002端口号
DOCS2DB_MCP_LOG_LEVELINFO日志记录级别
DOCS2DB_MCP_SHOW_BANNERtrue显示FastMCP横幅(stdio自动抑制)

数据库设置

变量默认值描述
DOCS2DB_MCP_DB_HOSTlocalhostPostgreSQL主机
DOCS2DB_MCP_DB_PORT5432PostgreSQL端口
DOCS2DB_MCP_DB_DATABASEragdb数据库名称
DOCS2DB_MCP_DB_USERpostgres数据库用户
DOCS2DB_MCP_DB_PASSWORDpostgres数据库密码

RAG设置

变量默认值描述
DOCS2DB_MCP_RAG_SIMILARITY_THRESHOLD0.7最小相似性得分
DOCS2DB_MCP_RAG_MAX_CHUNKS5要返回的最大块数
DOCS2DB_MCP_RAG_ENABLE_RERANKINGtrue启用交叉编码器重新排序

工具

搜索文档

使用混合搜索(vector+BM25)搜索RHEL文档。

参数:

  • query (字符串,必填):搜索查询
  • max_chunks (整数,可选):要返回的最大块数(默认值:5)
  • similarity_threshold (浮点数,可选):最小相似性得分(默认值:0.7)
  • enable_reranking (布尔值,可选):启用交叉编码器重新排序(默认值:true)

退货:

{
  "chunks": [
    {
      "text": "Chunk content...",
      "contextual_text": "LLM-generated context...",
      "similarity": 0.85,
      "source": "path/to/source/file.html",
      "metadata": {...}
    }
  ],
  "query_used": "original query"
}

Docker/Podman

塑造形象

podman build -t docs2db-mcp-server .

运行容器

podman run -d \
  --name docs2db-mcp \
  -p 8002:8002 \
  -e DOCS2DB_MCP_DB_HOST=postgres \
  -e DOCS2DB_MCP_DB_PASSWORD=mysecret \
  docs2db-mcp-server

Docker作曲/Podman作曲

services:
  postgres:
    image: pgvector/pgvector:pg17
    environment:
      POSTGRES_PASSWORD: postgres
    volumes:
      - ragdb:/var/lib/postgresql/data
      - ./ragdb_dump.sql:/docker-entrypoint-initdb.d/init.sql

  docs2db-mcp:
    image: docs2db-mcp-server
    ports:
      - "8002:8002"
    environment:
      DOCS2DB_MCP_DB_HOST: postgres
      DOCS2DB_MCP_DB_PASSWORD: postgres
    depends_on:
      - postgres

发展

# Clone repo
git clone https://github.com/rhel-lightspeed/docs2db-mcp-server.git
cd docs2db-mcp-server

# Install dependencies
uv sync
uv pip install -e ".[dev]"

# Run tests
uv run pytest

# Run linters
uv run ruff check .
uv run mypy src/

建筑

┌─────────────────────────────────────┐
│ MCP Client                          │
│ (llama-stack, Goose, Claude, etc.)  │
└──────────────┬──────────────────────┘
               │ MCP Protocol (SSE/stdio)
               ↓
┌─────────────────────────────────────┐
│ docs2db-mcp-server                  │
│                                     │
│ FastMCP Server                      │
│   └─ search_documents (tool)        │
│         ↓                           │
│   UniversalRAGEngine                │
│   (from docs2db-api)                │
└──────────────┬──────────────────────┘
               │
               ↓
┌─────────────────────────────────────┐
│ PostgreSQL + pgvector               │
│ (docs2db RAG database)              │
└─────────────────────────────────────┘

相关项目

许可证

Apache许可证2.0-请参阅 许可证 了解详情。

贡献

欢迎投稿!请打开问题或拉取请求。

支持

  • 问题: https://github.com/rhel-lightspeed/docs2db-mcp-server/issues
  • 讨论: https://github.com/rhel-lightspeed/docs2db-mcp-server/discussions

目录标签

目录标签

搜索混合搜索PythonClaude语义搜索本地部署RAGMCP协议实时流

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP