MCP

MCP

概念

Model Context Protocol (MCP)​ ​ 是一种用于增强大型语言模型(LLM)上下文理解和管理能力的协议或框架。它旨在通过结构化方式整合模型的输入、历史交互、外部知识库以及用户意图,从而优化模型输出的相关性和准确性。

通过标准化方式调用大模型工具箱

与之前技术对比

  • Function Call
    • 模型专属:不同模型(GPT/Claude/DeepSeek)的调用规则不同,协议碎片化:需为每个模型单独开发适配层
    • 功能扩展难:新增工具需重新训练模型或调整接口
  • RAG(分片,向量化存储,相似度匹配,大模型总结)
    • 检索精度不足:首先,RAG 最核心的就是先将知识转换成 "向量" ,导入 "向量数据库",然后在将用户输入的信息也转换成 "向量" ,然后再去向量数据库匹配出相似的 "向量",最后再由大模型去总结检索到的内容。
    • 生成内容不完整:由于 RAG 处理的是文档的切片,而切片的局部性注定了它无法看到整篇文档的信息,因此在回答诸如"列举XXX""总结XXX"等问题时,一般回答是不完整的。
    • 缺乏大局观:RAG 无法判断需要多少个切片才能回答问题,也无法判断文档间的联系。
    • 多轮检索能力弱:RAG 缺乏执行多轮、多查询检索的能力,而这对推理任务来说是必不可少的。

MCP服务器mcp.so

MCP客户端

cursor,cline,dify(mcp_sse)等

调用方式

  • STDIO(本地使用比较方便)
bash 复制代码
# Linux,Mac
npx -y mcp-mongo-server mongodb://muhammed:kilic@localhost:27017/database --read-only

# windows
cmd /c npx -y mcp-mongo-server mongodb://muhammed:kilic@localhost:27017/database --read-only
  • SSE(共享服务)
bash 复制代码
uv tool install mcp-proxy

mcp-proxy --sse-host 0.0.0.0 --sse-port 8080 -- npx -y mcp-mongo-server "mongodb://root:[email protected]:27017/difydb?authSource=admin"

dify配置sse

  • 安装MCP_SSE插件
  • 配置SSE服务器地址
  • 可以配置多个sse服务器
json 复制代码
{
    "server_name":
    {
        "url": "http://10.60.5.50:8000/sse",
        "headers":
        {},
        "timeout": 60,
        "sse_read_timeout": 300
    }
}

dify的sse存在的问题

  • 仅支持SSE模式调用
  • 配置服务器是全局的,不能跟随agent去设置

搭建服务器

  • docker搭建mongo服务器
  • 将excel导入mongo数据库
    • 注意时间格式 2025/4/25
    • 时间查询存在问题

数据QA分段

知识库转MARKDOWN

操作步骤:

  1. 导入知识库
  1. 对比,人工对比原文和markdown,纠正自动转化中的错误(包含文字错误和层级关系错误)
  1. 导出markdown文档

操作步骤:

  1. 创建项目
  1. 导入上一步导出的markdown文件,并将文档分块
  1. 将每一块逐个交给大模型生成问题,人工审核问题是否正确,是否有遗漏的问题
  1. 批量生成答案, 人工审核答案是否是基于文档回答的,回答的是否正确
  1. 检查无误后,导出QA对
  1. 导入dify知识库
相关推荐
众乐乐_200818 分钟前
Java 后端给前端传Long值,精度丢失的问题与解决
java·前端·状态模式
一叶茶28 分钟前
VsCode和AI的前端使用体验:分别使用了Copilot、通义灵码、iflyCode和Trae
前端·vscode·gpt·ai·chatgpt·copilot·deepseek
熊猫钓鱼>_>33 分钟前
基于MCP的桥梁设计规范智能解析与校审系统构建实践
前端·easyui·设计规范
若初&44 分钟前
文件上传Ⅲ
前端·web安全
若愚67921 小时前
前端取经路——前端安全:构建坚不可摧的Web应用防线
前端·安全
邪恶的贝利亚1 小时前
定时器设计
java·linux·前端
inksci1 小时前
Vue 3 打开 el-dialog 时使 el-input 获取焦点
前端·javascript·vue.js
若愚67922 小时前
前端取经路——量子UI:响应式交互新范式
前端·ui·交互
PHASELESS4112 小时前
HTML常用标签用法全解析:构建语义化网页的核心指南
前端·html