当前位置: 首页 > news >正文

第二章:MCP服务器分类

Chapter 2: MCP服务器分类


🌟 从上一章到本章

在第一章:Model Context Protocol (MCP)中,我们学习了如何通过MCP让LLM安全访问文件系统。现在,让我们想象一个更复杂的需求:假设你需要让LLM同时处理文件、查询数据库、分析代码仓库,甚至连接云端服务。这时候问题来了——如何快速找到适合这些任务的服务器?

本章将介绍MCP服务器的三类分类体系(官方示例、官方集成、社区开发),帮助你像“超市购物”一样,根据需求快速选择或构建服务器!


🎯 中心用例:选择适合任务的服务器

假设你正在开发一个AI助手,需要以下功能:

  1. 读取本地文件(如PDF合同)
  2. 查询公司数据库(如客户信息)
  3. 分析GitHub仓库(如项目代码变更)
  • 对于文件操作,你可以直接使用官方提供的Reference服务器(如Filesystem
  • 对于数据库访问,可能需要集成Third-Party服务器(如AWS或PostgreSQL)
  • 对于GitHub分析,社区可能已开发了现成的Community服务器

🔍 三类服务器的核心区别

MCP将服务器分为三类,用不同“信任等级”和“使用场景”帮助开发者快速决策:

1. Reference(官方示例)

  • 信任度:最高(由MCP团队维护)
  • 用途:学习MCP标准、快速验证功能
  • 示例
    # 启动官方文件系统服务器(安全目录白名单)
    npx -y @modelcontextprotocol/server-filesystem /my/safe/directory
    

2. Third-Party(官方集成)

  • 信任度:高(由知名公司维护)
  • 用途:连接主流工具(如AWS、GitHub、Docker)
  • 示例
    // 配置AWS服务器(需提供API密钥)
    {"aws": {"command": "npx","args": ["@vendor/server-aws"],"env": {"AWS_ACCESS_KEY": "your_key"}}
    }
    

3. Community(社区开发)

  • 信任度:中/低(需自行验证)
  • 用途:探索创新场景(如小众工具、实验性功能)
  • 示例
    # 安装社区开发的Nginx服务器
    git clone https://github.com/user/nginx-mcp-server
    cd nginx-mcp-server && npm start
    

🛠️ 如何根据需求选择?

步骤1:确定需求类型

场景推荐类别例子
核心功能(文件/数据库)ReferenceFilesystem, PostgreSQL
企业级工具集成Third-PartyAWS, GitHub, Docker
小众需求(如游戏引擎)CommunityUnity编辑器控制、3D模型渲染

步骤2:配置服务器

在客户端配置文件中注册服务器,例如:

{"mcpServers": {"文件系统": {                   // Reference服务器"command": "npx","args": ["@modelcontextprotocol/server-filesystem", "/data"]},"数据库": {                    // Third-Party服务器"command": "npx","args": ["@aws/server-postgres", "localhost:5432"]},"代码分析": {                  // Community服务器"command": "python","args": ["./custom-git-server.py"]}}
}

🕵️ 内部实现:分类如何影响调用流程?

以下时序图展示LLM调用不同分类服务器的过程:

LLM MCP客户端 Third-Party服务器 GitHub API Reference服务器 本地文件系统 请求"分析代码仓库" 转发请求给GitHub服务器 获取仓库数据 返回代码变更记录 格式化结果 请求"读取合同文件" 转发请求给文件系统 读取合同.pdf 返回文件内容 返回文本内容 LLM MCP客户端 Third-Party服务器 GitHub API Reference服务器 本地文件系统

💡 总结与展望

本章我们学到:

  1. 三类服务器的区别:官方示例→高信任,官方集成→强功能,社区开发→高创新
  2. 选择方法:根据需求类型快速定位服务器
  3. 配置示例:如何在客户端注册不同类别的服务器

接下来,我们将深入MCP传输机制,探索服务器与LLM如何通过不同协议(如STDIO、HTTP)高效通信——这将解答“为什么某些服务器启动更快”等问题!

🚀 下一步:尝试在你的项目中混合使用不同类别的服务器,比如同时配置文件系统和GitHub分析工具!

相关文章:

  • postgres 导出导入(基于数据库,模式,表)
  • ROS2---时间戳对齐
  • LeetCode 2799.统计完全子数组的数目:滑动窗口(哈希表)
  • Vue实战2
  • 架构-信息安全技术基础知识
  • 如何创建和使用 Hive 视图
  • debian切换用户
  • golang的cgo的一点小心得
  • 查看系统是debian还是redhat
  • 工业自动化中的高效桥梁:EtherCAT转Profinet网关在封装环节的应用
  • Qwen2.5简要全流程以及QA
  • 5.第五章:数据分类的方法论
  • 实时操作系统在服务型机器人中的关键作用
  • 航电系统之信息融合技术篇
  • React+TypeScript:现代化前端路由导航系统开发详解
  • 机器学习中的特征存储是什么?我需要一个吗?
  • PC接入deepseek
  • 【数据可视化-29】食物营养成分数据可视化分析
  • Qt C++/Go/Python 面试题(持续更新)
  • MySQL的图形管理工具-MySQL Workbench的下载安装及使用【保姆级】
  • 韩国首尔江南区一大型商场起火,消防部门正在灭火中
  • 中科院新增三名副秘书长
  • 印控克什米尔恐袭引爆印巴新一轮外交摩擦,地区安全风险骤增
  • 国防部:“台独”武装摆练纯属搞心理安慰,怎么演都是溃败的死局
  • 民生访谈|马拉松中签率低何解?预付费监管落实得如何?市体育局回应
  • 主动权益基金一季度重仓股出炉:腾讯跃升至第一,阿里、比亚迪、中芯国际新进前十