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原型
    • 文档报告
    • 素材资源
当前位置: 首页 » AI编程开发

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

1月前 AI编程开发 3194 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
#MCP #MCP Server #MCP Client 
收藏 1
Claude Code完成最后一块拼图,Claude Code支持远程 MCP 服务器,距离干翻Cursor仅一步之遥!
Cursor CLI 实测体验:补齐终端短板,但能否撼动 Claude Code?(附安装教程)
推荐阅读
  • CCCS:快速切换 Claude Code 配置文件,一键切换不同的 Claude Code API
  • 实战总结:如何用好 Cursor?踩坑后的12条经验!
  • 深度解读Cursor首席设计师12条黄金法则,让Cursor写出高质量代码,丝滑到起飞!
  • Claude Code Chat:一款VS Code的插件,让 Claude Code 秒变IDE的最佳方案
  • 一文掌握Claude Code使用全指南,从安装到订阅的Claude Code使用教程
评论 (0)
请登录后发表评论
分类精选
Cursor 0.46更新,新增支持Claude 3.7 + GPT 4.5,Cursor Pro 无限续杯攻略,全自动化工具使用说明
9762 5月前
学生党0元白嫖!手把手教你解锁Cursor Pro年VIP,超详细申请教程(附避坑指南)
9172 3月前
Cursor代码生成器中文使用教程,Cursor新手入门完全指南,全网最全面详细的Cursor使用教程
7867 7月前
Claude Code 官方已支持Windows系统!手把手教你免费安装使用Claude Code
6802 4周前
手把手教你用支付宝订阅 Cursor Pro:国内用户最全开通教程(附取消自动扣费)
5920 1月前
深入解析Cursor的安全性与功能:官方安全文档中披露的代码检索逻辑
5157 7月前
用 Cursor 搭配 Context7,让 AI 自动看文档、写对代码的神级MCP插件
4233 2月前
手把手教你在Claude Code 中使用Kimi K2 模型,超简单配置教程分享
4205 4周前
Cursor新手3分钟快速搞懂 Ask/Manual/Agent 三种模式及高级技巧
4169 2月前
手把手教你在VS Code & Cline/RooCode 中使用Kimi K2 模型,配置实录+开发实战体验
4093 4周前

文章目录

关注「苏米客」公众号

订阅推送更及时,手机查看更方便
分类排行
1 Cursor CLI 实测体验:补齐终端短板,但能否撼动 Claude Code?(附安装教程)
2 MCP 初学者教程:微软官方推出的 MCP入门指南
3 /security-review:从现在开始我建议你在Claude Code使用这个命令开启安全审查
4 Claude Code UI:把 Claude Code 搬进浏览器,一个移动端与网页端管理代码项目的开源工具
5 Conductor:一款Claude Code可视化多开神器
6 Claude Code Chat:一款VS Code的插件,让 Claude Code 秒变IDE的最佳方案
7 Claude Code新手必备的15个斜杠命令,Claude Code斜杠命令完全指南
8 Claude Code Remote:这个开源项目让我实现了远程控制Claude Code
9 Playwright MCP:让AI帮你完成所有浏览器自动化,两步搞定网页截图
10 CCCS:快速切换 Claude Code 配置文件,一键切换不同的 Claude Code API
©2015-2024 苏米客XMSUMI 版权所有 · WWW.XMSUMI.COM 闽ICP备14005900号-6
程序库 免费影视APP 花式玩客 免费字体下载 产品经理导航 Axure RP 10 免费Axure模板 Axure原型设计 Axure元件库下载 申请友联