别再手动调API了!5分钟让你的AI模型拥有"超能力"!MCP协议深度解析和实操 原创

发布于 2025-3-24 13:00
浏览
0收藏

在人工智能的浪潮中,每一次技术的突破都可能引发行业的巨变。2024年11月,Anthropic推出了一项名为MCP(Model Context Protocol)的开放协议,这一协议旨在为大型语言模型(LLM)与外部数据和行为的连接提供一个通用的开放标准。今天,我们就来深入探讨MCP的架构、功能及其对未来AI发展的潜在影响。

MCP的核心架构

MCP的设计理念是通过一个开放的协议,为外部工具或数据源提供与LLM交互的统一接口。其系统架构主要包含以下几个关键组件:

  • MCP Host:这是LLM的宿主应用,如Cursor、Cline等,负责处理一个或多个MCP Server的应用程序。
  • MCP Client:位于Host内部,专门用于与MCP Server建立和维持一对一连接的模块。它负责按照MCP协议的规范发送请求、接收响应和处理数据。
  • MCP Server:提供外部能力或数据的工具,如实时获取天气、浏览网页等。

MCP Client 更多是一个底层技术术语,是关于 MCP Server 连接到 MCP Host 的底层细节,不用过于区分 MCP Host 和 MCP Client。


别再手动调API了!5分钟让你的AI模型拥有"超能力"!MCP协议深度解析和实操-AI.x社区Image

MCP Server的能力

MCP Server目前支持三类可被复用的能力:

  1. Tools:向LLM提供可执行的功能,如爬取网页内容、获取天气信息等。
  2. Resources:允许LLM公开读取Server的数据或内容的能力。
  3. Prompts:支持提示词的共享。

MCP Server的安装

MCP服务虽然刚出现没多久,但官方已经给我们提供了很多主流的服务器实例,就不需要我们自己开发服务端了: ​​https://github.com/modelcontextprotocol/servers​

比较常用的MCP Server有:

  • Filesystem — 文件操作与可配置的访问控制
  • GitHub — 仓库管理、文件操作和GitHub API集成
  • SQLite — 数据库交互

这些服务器可以根据我们实际需要单独使用,或者组合在一起进行使用。例如,在项目开发中可以同时使用文件系统、数据库以及搜索工具服务。

目前,许多客户端已经支持MCP Servers的使用,如Cline、Cursor。用户可以直接在这些客户端中使用社区开发好的Servers。安装MCP Server需要node.js和python两个环境,这是确保服务正常运行的关键。

在Cline中配置和使用MCP

1、安装环境和相关工具

Windows用户使用下面的方法安装uv和sqlite工具。

# 使用 winget
winget install --id=astral-sh.uv -e
winget install sqlite.sqlite

# 或直接下载:
# uv: https://docs.astral.sh/uv/

# SQLite: https://www.sqlite.org/download.html

或者在powershell中执行
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

Mac用户,使用brew进行安装

# 使用 Homebrew
brew install uv  sqlite3

# 或直接下载:
# uv: https://docs.astral.sh/uv/
# SQLite: https://www.sqlite.org/download.html
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

2、新建数据库

安装好sqlite3之后,我们要新建一个数据库。

依次执行下面的三条命令,创建一个数据表,并写入一些测试数据。

sqlite3 ./test.db

CREATE TABLE products (
  id INTEGER PRIMARY KEY,
  name TEXT,
  price REAL
);

INSERT INTO products (name, price) VALUES
  ('Widget', 19.99),
  ('Gadget', 29.99),
  ('Gizmo', 39.99),
  ('Smart Watch', 199.99),
  ('Wireless Earbuds', 89.99),
  ('Portable Charger', 24.99),
  ('Portable SSD', 179.99);
EOF
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.

命令执行成功后,可以在当前目录下看到一个名为test的文件。

3、配置MCP服务器

别再手动调API了!5分钟让你的AI模型拥有"超能力"!MCP协议深度解析和实操-AI.x社区

如图所示,打开Cline,点击右上方的MCP配置按钮,然后点击左下角的Edit MCP Settings,打开配置文件,并添加下面的内容。

{
  "mcpServers": {
    "mcp-server-sqlite": {
      "command": "uvx",
      "args": [
        "mcp-server-sqlite",
        "--db-path",
        "D:\\test\\test.db"
      ]
    }
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

Windows用户需要将 command这一行做下调整,否则会找不到uvx的执行路径。这个要调整成你的uvx命令所在的路径,默契情况需要将用户名替换成自己的就行。

{
  "mcpServers": {
    "mcp-server-sqlite": {
      "command": "C:\\Users\\xsl\\.local\\bin\\uvx",
      "args": [
        "mcp-server-sqlite",
        "--db-path",
        "D:\\test\\test.db"
      ]
    }
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

配置好后保存文件,在左侧MCP Servers界面看到出现一个绿灯表示配置没有问题。

别再手动调API了!5分钟让你的AI模型拥有"超能力"!MCP协议深度解析和实操-AI.x社区

4、执行命令

直接和Cline对话,看下能否执行成功。这里我们让Cline帮我查下当前数据库中有几张表。

可以很清楚的看到,Cline分析了我们的需求,并通过SQLite数据库服务器去查下表的信息,最终数据库响应的结果是只有一张表 products,和我们的数据一致。

我常用的几个MCP Server

​github​

围绕 GitHub 平台操作的工具集合,覆盖仓库管理、文件操作、Issue 处理、分支管理等场景,适用于 GitHub 自动化操作。

​sequential-thinking​

处理顺序化逻辑任务,适用于分步骤推导、多阶段流程协调(如复杂逻辑分析)。

​tavily​

基于 Tavily 服务,实现网络搜索与内容提取,适用于外部数据检索与处理。

大家在工作中使用过哪些 MCP Server?或者说更倾向于推荐哪些 MCP Server?欢迎在评论区分享你的经验,与大家一起交流学习。


本文转载自公众号AI 博物院 作者:longyunfeigu

原文链接:​​https://mp.weixin.qq.com/s/4_C7FRzpMFhUzcB5LZWK8g​

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
收藏
回复
举报


回复
相关推荐