使用 MCP 让企业 Coding 十倍提效

一、MCP 是什么

MCP(Model Context Protocol,MCP)是 Anthropic 2024.11 推出的开源标准,旨在解决大模型与外部工具、数据源的集成难题。其核心作用是通过标准化接口规范,将 AI 模型的决策逻辑与外部资源、数据、工具调用解耦,形成 "智能大脑 + 外接四肢" 的协同模式。

传统 API 不同服务提供不同 SDK,调用方需要对该应用做接入 MCP 不同服务就是一个 MCP Server,都遵循 MCP 协议提供服务

MCP 只是一个协议,并未做任何实现,细究起来上图中用 type-c 拓展坞来类比 MCP 有一定问题,MCP 更像是 Type-C 协议,指导厂家生产兼容 type-c 规范的设备,这样华强北的插头就可以给印度手机充电了,不用为每个品牌手机做插头

MCP 核心概念

MCP 定义了三大核心原语实现交互标准化

Cursor 目前只支持 Tools,AI 终端 MCP 支持情况

MCP 工作流程

以 Cursor 接入 MCP Server 为例介绍下 MCP 工作流程,主要分为三个阶段

1.1. 初始化

  • Cursor 启动时,内置的 MCP Host 探测配置的 MCP Server 并与之建立连接
  • 双方进行功能协商,确定配置 Server 提供的可用资源/工具列表,为后续调用做好准备

1.2. 处理用户请求

  • 请求传递与工具选择:开发同学在 Cursor 通过自然语言输入指令,Cursor MCP client 将请求发送至 MCP Server,获取当前可用的工具描述。Cursor 将工具列表转为系统提示词与用户 Prompt 拼接,发送给模型
  • 模型决策与工具调用:模型解析请求,判断需调用的工具,并生成结构化参数,Cursor 通过 MCP Server 执行工具调用

1.3. 结果整合

  • 资源访问与执行:MCP Server 响应请求,结果通过 JSON-RPC 2.0 协议返回给 Cursor 的 MCP Client
  • 模型生成最终响应:Cursor MCP Client 将 MCP Server 返回结果再次发送给模型,模型整合上下文生成自然语言响应,最终结果通过 Cursor 界面展示给用户

Function Call 与 MCP

一图以蔽之

两者能力上几乎没区别,Function Call 是 GPT 专属的内置功能(其它模型做了各自版本的实现),在调用时指定 tools 列表

python 复制代码
from openai import OpenAI

client = OpenAI()

tools = [{
    "type": "function",
    "name": "get_weather",
    "description": "Get current temperature for a given location.",
    "parameters": {
        "type": "object",
        "properties": {
            "location": {
                "type": "string",
                "description": "City and country e.g. Bogotá, Colombia"
            }
        },
        "required": [
            "location"
        ],
        "additionalProperties": False
    }
}]

response = client.responses.create(
    model="gpt-4o",
    input=[{
        "role": "user", 
        "content": "What is the weather like in Paris today?"
    }],
    tools=tools
)

print(response.output)

而从 MCP 的工作流程可以看出来,MCP 是 LLM 的外挂,通过 MCP Client(严格讲是 MCP Host) 组装提示词和 LLM 交互,无需 LLM 支持 Function Call,这就意味着企业提供一套标准的服务即可接入任意模型

二、IDE 配置 MCP Server

1. VSCode

VSCode 1.99 终于带来 MCP 支持

code.visualstudio.com/updates/v1_...

此处为语雀视频卡片,点击链接查看:mcp.mp4

2. Cursor

docs.cursor.com/context/mod...

三、企业都在用 MCP Server 做什么

1. 高德地图美食推荐

lbs.amap.com/api/mcp-ser...

2. 阿里云可观测服务

阿里云可观测服务发布 Observable MCP Server,让可观测使用更简单

3. 代码质量评估

4. Hologress 数据分析

mp.weixin.qq.com/s/82f48KqO1...

5. 问题诊断

6. 符合企业规范的代码生成

此处为语雀视频卡片,点击链接查看:ai_banner.mp4

Agent 交互过程截图

一句提示词根据 PC 生成 Mobile 代码

此处为语雀视频卡片,点击链接查看:4月12日.mp4

Agent 交互过程

7. 业界开源

四、开始写自己的 MCP Server

1. 官方 SDK

Anthropic 官方提供了 MCP Client/Server 多种语言的 SDK

使用官方 SDK 创建一个 MCP Server 非常简单

python 复制代码
# server.py
from mcp.server.fastmcp import FastMCP

# Create an MCP server
mcp = FastMCP("Demo")

# Add an addition tool
@mcp.tool()
def add(a: int, b: int) -> int:
    """Add two numbers"""
    return a + b


# Add a dynamic greeting resource
@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:
    """Get a personalized greeting"""
    return f"Hello, {name}!"

强烈建议内部实践使用 Python,前后端同学都可以快速参与

2. Spring AI

如果 MCP Server 能力和现有应用深度耦合,无法服务化,使用 Spring 的话可以参考 Spring AI 官方示例改

github.com/spring-proj...

未来已来,快上车!

相关推荐
POLOAPI7 小时前
为什么Claude Code让传统IDE开发者"失业"?深度解析AI编程的技术革命
人工智能·ai编程·claude
字节跳动数据平台9 小时前
LAS平台Vibe Data Processing:AI驱动的数据处理新范式
mcp
编程恐龙12 小时前
“快准狠” 碾压同类!Claude Code 深度体验:从生成网页到重构 “屎山” 全搞定
ai编程·claude
MarvelCheng12 小时前
Claude Code 搭配 Kimi-k2 国内顺滑使用
ai编程·claude
云边有个稻草人13 小时前
飞算JavaAI—AI编程助手 | 引领开发新时代,智能化编程的完美助手
ai编程·java开发·飞算javaai炫技赛
nujnewnehc13 小时前
失业落伍前端, 尝试了一个月 ai 协助编程的真实感受
前端·ai编程·github copilot
Apifox13 小时前
如何在 Apifox 中给字段设置枚举(比如字符串、数组等)?
后端·ai编程·测试
银行数字化转型导师坚鹏14 小时前
坚鹏:AI智能体软件是知行学成为AI智能体创新应用引领者的抓手
ai·aigc·ai编程
Junki15 小时前
解放AI远程服务器操作:ssh-mcp-server 让MCP协议与SSH无缝对接
llm·mcp
AI产品自由15 小时前
哇塞!Chrome MCP + OpenAI Whisper = 播客秒变学习笔记
ai编程