Claude MCP服务搭建全流程:从本地开发到远程部署

MCP协议标准化AI调用外部工具的方式,从本地开发到远程部署全流程解析
MCP(Model Context Protocol)是Anthropic开源的标准协议,将AI与外部工具的集成从M×N简化为M+N。本文介绍了使用FastMCP框架本地开发MCP服务器的四步流程(环境设置、代码开发、CLI注册、工具调用),解析了STDIO和Streamable HTTP两种通信模式,并讲解了通过Docker容器化部署到云服务器的远程方案。目前阿里云、腾讯云等大厂已积极落地MCP服务。
什么是MCP服务?
MCP(Model Context Protocol)是一种让AI模型调用外部工具和服务的标准协议。该协议由Anthropic于2024年11月正式开源,其设计灵感来源于语言服务器协议(LSP,Language Server Protocol)——正是LSP让VS Code等编辑器能够通过统一接口支持数百种编程语言。MCP试图解决AI领域同样的碎片化问题:此前每个AI应用都需要为每个外部工具单独开发集成代码,形成M×N的复杂度爆炸。MCP将这种关系标准化为M+N,任何兼容MCP的AI客户端都能调用任何兼容MCP的服务器,无需重复开发。通过MCP,Claude等AI助手可以直接与本地或远程服务进行交互,极大扩展了AI的能力边界。
目前已有多种成熟的MCP服务可供使用:
- Playwright:为AI提供浏览器自动化能力,可进行自动化测试、网页浏览和数据抓取
- Figma:直接调用Figma设计稿生成代码,实现设计到开发的无缝衔接
- GitHub:AI直接与GitHub平台交互,进行代码管理操作
除了使用现成的MCP服务,我们也可以自己构建MCP服务器。本文将详细介绍从本地搭建到远程部署的完整流程。
本地构建MCP服务器
本地构建MCP服务器分为四个步骤:环境设置、MCP服务器开发、Claude CLI配置、工具调用。
第一步:环境设置
开发环境使用VS Code,需要完成以下准备工作:
- 安装Python及相关插件(Python、Python Environment)
- 通过命令面板创建Python虚拟环境:打开命令面板,选择"Python Create Environment",选择venv模式
- 使用pip安装MCP和CLI依赖:
pip install mcp cli
如果安装速度较慢,可以使用UV工具加速安装。整个安装过程大约需要2-3分钟。
第二步:编写MCP服务器代码
创建一个Python脚本,使用FastMCP框架定义MCP服务器和工具方法。FastMCP是MCP Python SDK的高层封装,借鉴了FastAPI的设计哲学——通过Python装饰器(Decorator)将普通函数声明式地转化为可被外部调用的接口。装饰器@mcp.tool()在运行时会自动解析函数签名、参数类型注解和文档字符串,生成符合MCP规范的工具描述(Tool Schema),AI模型正是依赖这份Schema来理解工具的功能和参数要求。这种设计让开发者无需手动编写JSON Schema,大幅降低了MCP服务的开发门槛:
from fastmcp import FastMCP
import time
# 创建MCP服务器
mcp = FastMCP("MyTools")
# 获取当前时间
@mcp.tool()
def get_current_time():
return time.strftime("%Y-%m-%d %H:%M:%S")
# 计算两个数的和
@mcp.tool()
def add(a: int, b: int):
return a + b
# 获取商品价格
@mcp.tool()
def get_product_price(product_id: int):
prices = {100: 10, 101: 15, 102: 20}
return prices.get(product_id, "未找到")
if __name__ == "__main__":
mcp.run()
这段代码定义了三个工具方法:获取当前时间、计算两数之和、查询商品价格。通过装饰器@mcp.tool()即可将普通函数注册为MCP工具,代码结构简洁直观。
第三步:在Claude CLI中注册MCP服务

打开终端,切换到VS Code相同的工作目录,执行注册命令:
claude mcp add --scope project MyTools python script.py
命令参数说明:
claude mcp add:添加MCP服务--scope project:作用域为当前项目MyTools:MCP服务的名称- 后面是Python运行环境和脚本路径
注册成功后,VS Code会自动生成mcp.json配置文件,无需手动处理。
第四步:调用MCP工具
启动Claude CLI,通过/mcp命令可以查看已连接的MCP服务状态。

调用MCP服务有两种方式:
隐式调用:直接向Claude提问,Agent会自动判断并调用相应的MCP工具。这一能力底层依赖大语言模型的Function Calling(函数调用)技术——模型在推理时会接收到所有已注册MCP工具的Schema描述,通过理解用户意图来决定是否调用工具、调用哪个工具以及如何填充参数。Claude、GPT-4等主流模型均经过专门的Function Calling能力训练,能够准确识别"现在几点了"这类隐含工具调用意图的问题,并生成符合JSON Schema规范的调用参数,再由MCP客户端负责实际执行。
显式调用:明确指定使用某个MCP服务的某个方法。例如"请使用MyTools服务中的add方法计算3+5",Claude会直接调用指定的工具函数。
MCP通信模式解析

本地MCP服务使用的是STDIO(标准输入输出)模式。STDIO是Unix系统中最基础的进程间通信机制,MCP客户端作为父进程启动MCP服务器子进程,双方通过标准输入输出流交换JSON-RPC格式的消息。这种方式延迟极低、无需网络配置,但天然局限于单机环境,适合本地开发和调试场景。
远程MCP服务则采用Streamable HTTP模式,基于HTTP/1.1或HTTP/2协议,支持服务器推送事件(SSE,Server-Sent Events),允许服务器主动向客户端推送长时间运行任务的中间状态,特别适合需要流式返回结果的AI工具调用场景。两种模式在MCP规范中均有明确定义,开发者可根据部署环境灵活切换,适合生产环境部署。
部署MCP服务到远程服务器
在实际工作中,我们通常需要将MCP服务部署到外网,供团队或用户远程调用。

服务端改造与部署
- 修改传输模式:将MCP服务的通信模式从STDIO改为Streamable HTTP
- 容器化部署:将代码打包为Docker镜像,部署到Docker环境中。Docker容器化解决了MCP服务部署中的环境一致性问题——MCP服务器往往依赖特定版本的Python运行时、第三方库及系统工具,容器将这些依赖打包为不可变镜像(Immutable Image),确保开发、测试、生产环境的行为完全一致。在云服务器上,容器还天然支持水平扩展(Horizontal Scaling),当MCP服务请求量增大时,可通过Kubernetes等编排工具快速启动多个容器实例,配合负载均衡器分发请求,保障服务的高可用性。
- 云服务器部署:将容器部署到阿里云、腾讯云等有公网IP的服务器
- 网关配置:配置网络网关,确保外部可以正常访问MCP服务
客户端配置
编辑本地的claude_config.json文件,添加远程服务器的配置信息(包括远程URL地址),即可在本地直接调用远程MCP服务。
大厂MCP落地现状
目前已有多家大厂在积极推进MCP服务的落地应用:
- 阿里云百炼平台:已通过MCP服务集成了60多种服务,覆盖多个业务场景
- 腾讯云:同样支持了大量MCP服务的接入
未来,无论是新闻资讯、购物支付,还是政务服务等领域,企业都需要落地自己的MCP服务,将现有业务能力以标准化的方式暴露给AI调用。
总结
MCP服务为AI与外部系统的交互提供了标准化的解决方案。从本地开发到远程部署,整个流程清晰明了:本地使用FastMCP框架快速开发工具,通过Claude CLI注册和测试,最后通过Docker容器化部署到云服务器。随着越来越多大厂的落地实践,MCP正在成为AI应用开发的重要基础设施。
核心要点
- MCP服务通过STDIO(本地)和Streamable HTTP(远程)两种通信模式,让AI能够调用外部工具和服务
- 本地搭建MCP服务器只需四步:环境设置、代码开发、CLI注册、工具调用,使用FastMCP框架可快速实现
- 远程部署需要将传输模式改为Streamable HTTP,并通过Docker容器化部署到云服务器
- 调用MCP服务支持隐式(AI自动判断,基于Function Calling技术)和显式(指定服务和方法)两种方式
- 阿里云、腾讯云等大厂已落地MCP服务,集成了60多种服务能力
相关推荐
教程攻略Cursor+Codex双IDE协同:开源项目二开实战方法论
基于实战经验总结的开源项目二次开发完整方法论,详解Cursor+Codex双IDE协同工作流,涵盖二开七环节、MVP验证、AI读源码技巧,帮助开发者三天跑通项目、两周完成业务集成。
教程攻略Cursor多Agent实战:50分钟搭建Next.js全栈博客
使用Cursor IDE多Agent协作模式,50分钟内从零搭建全栈博客。涵盖Next.js、Clerk认证、Supabase数据库集成,详解4个AI Agent分阶段开发流程与关键避坑经验。
教程攻略从零搭建AI软件工厂:Cursor工程师的多Agent协作实战经验
Cursor工程师Eric分享AI软件工厂构建实战:从自动化六层级、护栏设计、并行Agent管理到规模化扩展,详解如何用多Agent协作实现7×24小时高效软件开发。