使用 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...

未来已来,快上车!

相关推荐
程序员陆通6 小时前
MCP协议与Dify集成教程
人工智能·ai编程
gs8014011 小时前
MCP智能体多Agent协作系统设计(Multi-Agent Cooperation)
人工智能·mcp
怪我冷i2 天前
k8s笔记——kubebuilder工作流程
云原生·kubernetes·ai编程·ai写作
puyihuan2 天前
AI编程新选择!VSCode + RooCode,超越Cursor
ide·vscode·ai编程·roocode
VyrnSynx2 天前
从0到上线,CodeBuddy 如何帮我快速构建旅游 App?
腾讯云·ai编程·旅游·腾讯云ai代码助手
琢磨先生David2 天前
重构编程范式:解码字节跳动 AI 原生 IDE Trae 的技术哲学与实践价值
人工智能·ai编程
哈全网络2 天前
如何使用 DeepSeek 帮助自己的工作?
人工智能·算法·ai编程·ai写作
斯普信专业组2 天前
AI Agent新范式:FastGPT+MCP协议实现工具增强型智能体构建
人工智能·智能体·mcp
老马啸西风2 天前
敏感词 v0.25.0 新特性之 wordCheck 策略支持用户自定义
人工智能·ai·nlp·中文分词·openai·deepseek·mcp
Bruce_Liuxiaowei3 天前
Cherry Studio的MCP协议集成与应用实践:从本地工具到云端服务的智能交互
服务器·ai·mcp