10+年产品经理聊聊产品、测测产品,产品人交流学习成长平台,按 Ctrl+D 收藏我们
留言板 小程序 交流群 关于我

苏米客

  • 首页
  • AIGC
    • AI最新动态
    • AI学习教程
    • AI工具集合
    • AI产品百科
    • AI编程开发
    • AI提示词
  • Axure
    • Axure动态
    • Axure教程
  • 产品
    • 用户体验
    • 产品设计
    • 苏米杂谈
  • 资源
    • 产品UI组件库
    • 开源图标库
    • 中后台框架
  • 书单
    • AI书籍
    • 用户体验
    • UI视觉
    • 产品研究
    • 其他类型
  • 下载
    • Axure组件
    • Axure原型
    • 文档报告
    • 素材资源
  • 登录
  • 首页
  • AIGC
    • AI最新动态
    • AI学习教程
    • AI工具集合
    • AI产品百科
    • AI编程开发
    • AI提示词
  • Axure
    • Axure动态
    • Axure教程
  • 产品
    • 用户体验
    • 产品设计
    • 苏米杂谈
  • 资源
    • 产品UI组件库
    • 开源图标库
    • 中后台框架
  • 书单
    • AI书籍
    • 用户体验
    • UI视觉
    • 产品研究
    • 其他类型
  • 下载
    • Axure组件
    • Axure原型
    • 文档报告
    • 素材资源

从零开始玩转MCP:手把手教你使用 MCP Server 快速搭建专属MCP Client

5小时前 16 0

前面苏米分享过一篇文章介绍了 Model Context Protocol(简称 MCP),它是一种让 AI 更灵活对接外部工具和资源的协议。MCP 有点像给大模型加了一个“万能接口”,可以自定义对接国内服务,搭配工作流、插件使用后,玩法非常丰富。

最近我也折腾了一段时间 MCP,虽然它用的还是普通的文本模型,跟 GPT-4 比不了,但它那套插件机制、工具系统真的有点意思,特别适合做 AI Bot、自动化工作流这类应用。

今天就手把手带大家用 MCP Server 搭建一个「AI 搜索MCP client」,顺便也带大家快速入门 MCP 的平台能力。全流程基于开源项目,部署成本低,新手也能跟着搞起来。

本文都是基于开源项目的现成例子快速搭建,对于新手友好,如果你正打算自己搭建一个MCP client可以通过这种方式快速尝试!

文章涉及到的开源项目如下:

MCP 入门文档:liaokongVFX/MCP 中文入门指南

MCP Server 示例:mundane799699/mcp-server-example

MCP Client 成品:alejandro-ao/mcp-clients

什么是 MCP?

MCP(Model Context Protocol)是一个让语言模型接入外部资源和工具的协议,简单来说,MCP就像是网络中的HTTP协议或邮件中的SMTP协议一样,为AI模型提供了一种标准化的方式来连接不同的数据源和工具。

官方把它比作 AI 的 USB-C 接口。你可以把它理解成一种「插件标准」,让任何模型都可以调用各种能力,比如数据库查询、网页搜索、Python 执行等。

它有以下核心组成:

  • Resources:资源,比如数据库、API

  • Prompts:提示词,定义与模型的交互格式

  • Tools:工具,封装的功能模块

  • Sampling:采样方式

  • Roots:根目录配置

  • Transports:传输层,模型与外部世界连接方式

第一步:搭建 MCP Server

可以直接使用mcp server例子,快速实现一个用于网络搜索的MCP服务器。

1. 初始化项目

首先,我们先来通过 uv 初始化我们的项目。

# 初始化项目
uv init mcp_getting_started
cd mcp_getting_started
​
# 创建虚拟环境并进入虚拟环境
uv venv
.venv\Scripts\activate.bat
​
# 安装依赖
uv add "mcp[cli]" httpx openai

uv 是一个非常好用的 Python 构建工具,比 pip 快,推荐使用。

MCP 为我们提供了2个对象:mcp.server.FastMCP 和 mcp.server.Server,mcp.server.FastMCP 是更高层的封装,我们这里就来使用它。

import httpx
from mcp.server import FastMCP
​
# # 初始化 FastMCP 服务器
app = FastMCP('web-search')

实现执行的方法非常简单,MCP 为我们提供了一个 @mcp.tool() 我们只需要将实现函数用这个装饰器装饰即可。函数名称将作为工具名称,参数将作为工具参数,并通过注释来描述工具与参数,以及返回值。

2. 创建 web_search.py

新建一个文件 web_search.py,写入以下内容:

@app.tool()
async def web_search(query: str) -> str:
  """
  搜索互联网内容
​
  Args:
      query: 要搜索内容
​
  Returns:
      搜索结果的总结
  """
​
  async with httpx.AsyncClient() as client:
      response = await client.post(
          'https://open.bigmodel.cn/api/paas/v4/tools',
          headers={'Authorization': '换成你自己的API KEY'},
          json={
              'tool': 'web-search-pro',
              'messages': [
                  {'role': 'user', 'content': query}
              ],
              'stream': False
          }
      )
​
      res_data = []
      for choice in response.json()['choices']:
          for message in choice['message']['tool_calls']:
              search_results = message.get('search_result')
              if not search_results:
                  continue
              for result in search_results:
                  res_data.append(result['content'])
​
      return '\n\n\n'.join(res_data)
       
if __name__ == "__main__":
  app.run(transport='stdio')

搜索接口来自智谱AI,调用一次大概 0.03 元,返回的内容质量不错,还会自动生成摘要。

官方文档:https://bigmodel.cn/dev/api/search-tool/web-search-pro

API Key 生成地址:https://bigmodel.cn/usercenter/proj-mgmt/apikeys

第二步:运行 MCP Client

npm install
npm run build
node build/index.js D:\project\PycharmProjects\mcp_getting_started\web_search.py

D:\project\PycharmProjects\mcp_getting_started\web_search.py要换成你自己的路径

第三步:测试接口

用 Postman 或其他 API 工具测试:

接口 1:检查服务状态

bash
​
​
复制编辑
GET http://localhost:3000/health

返回:

json复制编辑{
"status": "ok",
"tools": ["web_search"]
}

接口 2:发起查询

bash复制编辑POST http://localhost:3000/chat
Content-Type: application/json
​
{
"query": "今天广州的天气"
}

返回示例:

json复制编辑{
"response": "[Calling tool web_search with args {\"query\":\"今天广州天气\"}]\n今天(2025年6月18日)广州的天气情况如下:……"
}

写在最后

MCP作为一个新兴的开源协议,为LLM连接真实世界的工具和数据提供了开放标准。虽然目前生态还在发展初期,但潜力巨大。

苏米建议大家可以从简单的工具开始,逐步探索更复杂的应用场景。

这次我们只是实现了一个简单的搜索工具,但 MCP 的能力远不止于此,它支持多个工具协同、工作流串联,还能自定义 Prompt 模板,甚至接入自己的模型、插件系统。

对比市面上一些“低代码AI平台”,MCP 更适合开发者自己 DIY,更灵活,也更可控。

如果你在实践过程中遇到问题,欢迎在评论区交流讨论。

声明:本站原创文章文字版权归本站所有,转载务必注明作者和出处;本站转载文章仅仅代表原作者观点,不代表本站立场,图文版权归原作者所有。如有侵权,请联系我们删除。
#MCP #MCP Server #MCP Client 
收藏 1
推荐阅读
  • Claude Code:你的智能代码助手,智能编码的最佳实践
  • Claude Code完成最后一块拼图,Claude Code支持远程 MCP 服务器,距离干翻Cursor仅一步之遥!
  • Cursor全栈开发环境配置指南(Win版):Python/JavaScript/Node.js/Java环境搭建、基础配置
  • Cursor + Git: 用Cursor AI 搭建智能化 Git 协同
  • 从零开始玩转MCP:手把手教你使用 MCP Server 快速搭建专属MCP Client
评论 (0)
请登录后发表评论
分类精选
Cursor 0.46更新,新增支持Claude 3.7 + GPT 4.5,Cursor Pro 无限续杯攻略,全自动化工具使用说明
8751 3月前
学生党0元白嫖!手把手教你解锁Cursor Pro年VIP,超详细申请教程(附避坑指南)
6993 1月前
Cursor代码生成器中文使用教程,Cursor新手入门完全指南,全网最全面详细的Cursor使用教程
6856 6月前
深入解析Cursor的安全性与功能:官方安全文档中披露的代码检索逻辑
4255 6月前
手把手教你上手Cursor安装使用,搭配神级Prompt(Thinking Claude),零基础实战开发谷歌插件小游戏
3265 6月前
Cursor新手3分钟快速搞懂 Ask/Manual/Agent 三种模式及高级技巧
2295 1月前
Cursor 0.47.x更新必看:新增rules、mcp、auto model、主题等,附Cursor免费攻略合集,GitHub开源项目方案大全
2275 3月前
Cursor 0.47 更新Claude 3.7 的 Max 模式,支持长达 200k 上下文,这钱花的值不值
2056 3月前
一文搞懂所有模型,Cursor 模型选择终极指南:从入门到精通
1856 1月前
深度解读Cursor首席设计师12条黄金法则,让Cursor写出高质量代码,丝滑到起飞!
1794 2月前

文章目录

关注「苏米客」公众号

订阅推送更及时,手机查看更方便
分类排行
1 Claude Code实战全攻略:从0到1的AI辅助开发案例分享
2 从零开始玩转MCP:手把手教你使用 MCP Server 快速搭建专属MCP Client
3 Claude Code完成最后一块拼图,Claude Code支持远程 MCP 服务器,距离干翻Cursor仅一步之遥!
4 Claude Code + Cursor 结合的高阶实战技巧(附Claude Code 官方指南精解)
5 Stagewise:Cursor最强微调辅助,开源氛围编程助手Stagewise快速上手实战指南
6 手把手教你用支付宝订阅 Cursor Pro:国内用户最全开通教程(附取消自动扣费)
7 Cursor Tab功能深度体验:跨文件智能重构
8 10x-Tool-Calls:让Cursor的500次请求变成12500次的小工具!Cursor 的调用次数暴涨10倍
9 Cursor上线 Deeplinks:一键安装MCP的正确打开方式,Deeplinks功能详解
10 MCP Feedback Enhanced:从一句提示词到交互反馈MCP,拯救你的Cursor额度
©2015-2024 苏米客XMSUMI 版权所有 · WWW.XMSUMI.COM 闽ICP备14005900号-6
免费影视APP 花式玩客 免费字体下载 产品经理导航 Axure RP 10 免费Axure模板 Axure原型设计 Axure元件库下载 原创Axure模板 申请友联