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

Yfujita MCP

MCP Server

一个基于Docker的RAG(检索增强生成)微服务群,提供网页爬取、Elasticsearch索引和搜索功能,支持通过Claude Desktop或浏览器进行交互。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
RAG检索增强生成PythonClaude网页爬取Claude DesktopClaudeCline

安装说明

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

作者 / 组织

yfujita

提供方

yfujita

最后核验

2026/5/17 20:20

快速接入

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

详细介绍

RAG为了MCP服务器微服务群

Web翻页Elasticsearch保存到Claude Desktop 啊Cline 中查找纹理图像MCP服务器。 Docker因为只需完成,所以不要污染本地环境,马上RAG(搜索扩展生成)。 聊天UI也被捆绑,从浏览器也能检索·聊天。

🚀 快速开始

1.准备(使用向量搜索)

单击功能区上OpenAI的,之API Key中所述修改相应参数的值。

# openai_token.txt にAPI Keyを記載(改行なしで保存してください)
echo "sk-..." > openai_token.txt

※文件不存在或为空时,自动以仅检索关键字的模式动作。

2.启动服务器

./run.sh

以下服务将启动:

  • 弹性搜索:搜索引擎
  • MCP API: RAG提供搜索功能MCP服务器
  • 聊天API&查看:在浏览器中使用的聊天UI (http://localhost:15173)
  • 嵌入API:矢量化API (API Key仅在设置时)

3.运行爬行器

Elasticsearch进行动态观察时的轴心点。Elasticsearch将条目添加到文档注册表。

# デフォルト設定で実行
./run-crawler.sh

# 設定ファイルを指定して実行する場合
./run-crawler.sh crawler_config_es1.yaml

💻 利用方法

MCP从“主机”使用

Claude Desktop的配置文件(claude_desktop_config.json),模板名称将采用不同的格式。 Docker在动态输入提示中 python -m app.run_stdio 经过MCP与服务器通信。

{
  "mcpServers": {
    "rag-search": {
      "command": "docker",
      "args": [
        "exec",
        "-i",
        "rag-mcp-api",
        "python",
        "-m",
        "app.run_stdio"
      ]
    }
  }
}

RAG使用模式

Claude Desktop提供了调用预定义提示的功能。 这MCP服务器是 rag_mode 的提示RAG搜索特定的系统指示LLM来定义自定义外观。

单击功能区上 /rag_mode 的下界Enter按键(或从菜单中选择)RAG将启用搜索模式。 此模式将提示您按照以下步骤进行回答:

  1. 检查索引列表
  2. 从适当的索引中搜索
  3. 根据需要获取详细信息文档
  4. 实事求是的回答

浏览器聊天UI利用

./run.sh 启动后,在浏览器中URL中所述修改相应参数的值。

  • 网址: http://localhost:15173

RAG查看项目中可用的所有族。

📦 功能组件

系统由以下微服务组成。

1.MCP服务器(mcp-api)

FastAPI基本MCP服务器。提供以下工具:

  • search:查找匹配查询的文档,然后单击ID、返回标题和突出显示。
  • get_document_by_id: ID中所述修改相应参数的值。
  • list_elasticsearch_indices:返回可用索引的列表。

2.履带式起重机(crawler)

Requests + BeautifulSoup基本Web我是克朗。

  • 指定URL爬行Elasticsearch对较大场景进行渲染期间已观察到该故障。
  • crawler_config/ 在动态输入提示中单击YAML可以在文件中定义行为。

3.聊天应用程序(chat-api, chat-view)

  • 聊天API: mcp-api 的总和LLM (GPT-4o-mini) 使用生成回答的后端API是。
  • 聊天视图: React基于前端聊天UI是。

4.搜索引擎(elasticsearch, embedding-api)

  • 弹性搜索:文档存储和搜索引擎(v8.18.1)。
  • 嵌入API: OpenAI API具有兼容的界面并将文本矢量化(openai_token.txt 仅在设置时有效)。

⚙️ 详细设定

环境变量和通信模式

mcp-api 支持以下通信模式compose.yaml 中所述方法的备选方法env根据文件进行切换。现在是 流式HTTP 是默认值。

  • 流式HTTP (默认): .env.streamable_http

- 端点: /mcp

  • SSE(服务器发送事件): .env.sse

- 端点: /sse

开发调试

  • 如果要单独重启服务 docker compose restart {service_name} 中所述修改相应参数的值。
  • 日志确认: docker compose logs -f {service_name}

🕷️ 标尺设置

它的作用是 crawler_config/ 在动态输入提示中单击YAML中所述修改相应参数的值。 crawler_config.yaml 的主要设定项目如下。

# クロールを開始するURLのリスト
start_urls:
  - https://example.com/start-page

# クロールを許可するドメイン(これ以外のドメインには遷移しません)
allowed_domains:
  - example.com

# クロール対象とするURLの正規表現パターン
target_url_patterns:
  - "https://example\\.com/docs/.*"

# 除外するURLの正規表現パターン
exclude_url_patterns:
  - ".*\\.pdf"

# クロールの最大深さ(0はstart_urlsのみ)
max_depth: 10

# リクエスト間の遅延時間(秒)- サーバーへの負荷軽減のため
delay: 0.5

# User-Agent文字列
user_agent: "MSFR Crawler/1.0"

# 保存先のElasticsearchインデックス名
es_index: "my_index"

# インデックスの説明(LLMがツール選択時に使用)
es_index_description: "Example documentation index."

# 最大取得ドキュメント数(テスト等の制限用)
max_documents: 20

# Embedding設定(オプション)
# Chunkサイズ(文字数)
embedding_chunk_size: 1000

# Chunkのオーバーラップ(文字数)
embedding_chunk_overlap: 100

# Embeddingを有効にするかどうか (true/false)
# trueの場合、Embedding APIを使用してベクトル化を行います
enable_embedding: false

______________________________________________________________________

📚 Appendix: 开发人员测试信息

curl 来修改标记元素的显示属性MCP用于检查服务器行为的示例命令。

Streamable HTTP 测试模式

1. 初期化 (Initialize) 单击功能区上 Mcp-Session-Id 中所述修改相应参数的值。

curl -i -X POST http://localhost:8000/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc": "2.0", "id": 1, "method": "initialize",
    "params": {
      "protocolVersion": "2024-11-05",
      "capabilities": { "roots": { "listChanged": true }, "sampling": {} },
      "clientInfo": { "name": "curl-client", "version": "1.0.0" }
    }
  }'

2.工具执行(例如:获取索引列表) 已获取 Mcp-Session-Id 将条目添加到文档注册表。

# SESSION_ID=""
curl -X POST http://localhost:8000/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Mcp-Session-Id: $SESSION_ID" \
  -d '{
    "jsonrpc": "2.0", "id": 3, "method": "tools/call",
    "params": { "name": "list_elasticsearch_indices", "arguments": {} }
  }'

SSE 测试模式

.env.sse 对较大场景进行渲染期间已观察到该故障。

SSEテストコマンドを開く

# 1. SSE接続開始(バックグラウンドで実行)
curl -N -H "Accept: text/event-stream" http://localhost:8000/sse &

# 2. 上記レスポンスの `endpoint` URLからセッションIDを確認し設定
# data: /messages/?session_id=abcd... => abcd...
export SESSION_ID=""

# 3. 初期化
curl -X POST -H "Content-Type: application/json" \
  --data '{"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"protocolVersion": "2024-11-05", "capabilities": {"tools": {}}, "clientInfo": {"name": "curl-test", "version": "1.0.0"}}}' \
  "http://localhost:8000/messages/?session_id=$SESSION_ID"

# 4. 検索実行
curl -X POST -H "Content-Type: application/json" \
  --data '{"jsonrpc": "2.0", "id": 4, "method": "tools/call", "params": {"name": "search", "arguments": {"query": "elasticsearch", "index": "es_1_5_reference"}}}' \
  "http://localhost:8000/messages/?session_id=$SESSION_ID"

目录标签

目录标签

RAG检索增强生成PythonClaude网页爬取本地部署Elasticsearch微服务

支持客户端

Claude DesktopClaudeCline

接入字段

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

未说明

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

api-key

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明api-key部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP