MCP(Model Context Protocol)入门与实践:让 AI 真正连接你的工具链
2026/6/19 22:45:30 网站建设 项目流程

1. 前言

过去一年,大语言模型(LLM)已经成为开发者日常工作的重要助手。

然而,一个明显的问题是:

AI 很聪明,但它不了解你的环境。

例如:

  • AI 不知道 Jira 里的工单状态

  • AI 无法查看 GitLab 的代码

  • AI 无法访问服务器日志

  • AI 不知道 Docker 容器是否正常

  • AI 无法查询数据库

为了让 AI 能够安全、标准化地访问这些外部资源,Anthropic 于 2024 年提出了 MCP(Model Context Protocol)。

MCP 正在成为 AI Agent 生态的重要基础设施。


2. 什么是 MCP?

MCP(Model Context Protocol)是一种开放协议,用于连接:

  • AI 模型

  • 工具(Tools)

  • 数据源(Data Sources)

  • 外部服务(Services)

简单来说:

MCP 是 AI 世界的 USB-C 接口。

在 USB-C 出现之前:

  • 手机有不同充电口

  • 相机有不同接口

  • 电脑有各种转接头

每个设备都需要单独适配。

AI 工具生态也面临类似问题。

过去:

ChatGPT ↔ GitHub Claude ↔ Jira Cursor ↔ Database

每种组合都需要单独开发。

MCP 出现后:

AI Client │ ▼ MCP Protocol │ ┌──┼──┬───┐ ▼ ▼ ▼ ▼ GitHub Jira Redis MySQL

任何支持 MCP 的客户端,都可以连接任何支持 MCP 的服务。


3. MCP 架构

MCP 主要由三部分组成:

┌──────────────┐ │ AI Client │ └──────┬───────┘ │ MCP ▼ ┌──────────────┐ │ MCP Server │ └──────┬───────┘ │ ┌─────┼─────┐ ▼ ▼ ▼ Tool Data Service

3.1 MCP Client

客户端通常是 AI 应用。

例如:

  • Claude Desktop

  • Cursor

  • Windsurf

  • VS Code AI 插件

  • ChatGPT(部分场景)

用户通过自然语言发起请求:

查询 ZOOM-1119658

客户端将请求发送给模型。


3.2 MCP Server

MCP Server 负责向模型暴露能力。

例如:

GitHub Server Jira Server Filesystem Server PostgreSQL Server

主要职责:

  • 接收请求

  • 执行操作

  • 返回结果


3.3 Tool

Tool 是 MCP 中最核心的概念。

例如:

{ "name": "get_issue", "description": "Get Jira issue information" }

AI 可以自动决定是否调用。

用户:

查询工单 ZOOM-1119658

AI:

调用 get_issue()

然后返回结果。


4. MCP 能解决什么问题?

4.1 AI 访问企业系统

例如:

查询 Jira 工单 查看 GitLab MR 读取 Confluence 文档

过去:

复制链接 复制内容 贴给 AI

现在:

直接询问 AI

4.2 AI 访问本地文件

例如:

分析当前项目结构

AI 可以直接读取:

src/ include/ CMakeLists.txt README.md

而无需手动上传。


4.3 AI 执行命令

例如:

查看 Docker 状态

AI 调用:

docker ps

返回:

zcc_freeswitch zcc_opensips zcc_record_server

4.4 AI 查询数据库

例如:

查询最近失败的呼叫

AI 调用:

SELECT * FROM call_record WHERE result='failed';

并生成分析结果。


5. MCP 与传统插件的区别

对比项传统插件MCP
标准化
跨平台
自动发现
多模型支持
易扩展一般很强

传统插件通常绑定某个平台。

例如:

ChatGPT Plugin

只能用于 ChatGPT。

而 MCP 可以被多个 AI 客户端复用。


6. MCP 与 Function Calling 的区别

很多开发者容易混淆。

6.1 Function Calling

模型调用预定义函数:

get_weather(city)

特点:

  • 函数固定

  • 由开发者预先定义

  • 作用范围有限


6.2 MCP

MCP 是完整协议。

包含:

  • Tool

  • Resource

  • Prompt

  • Context

支持动态发现能力。

例如:

AI: 当前有哪些工具? MCP: docker_ps grep_log get_issue

模型无需提前知道这些工具。


7. Python 开发 MCP Server

官方 Python SDK 使用非常简单。

7.1 安装

pip install mcp

7.2 创建服务

from mcp.server.fastmcp import FastMCP mcp = FastMCP("demo")

7.3 定义工具

@mcp.tool() def hello(name: str): return f"Hello {name}"

7.4 启动服务

mcp.run()

这样一个最简单的 MCP Server 就完成了。


8. MCP 在 VoIP 场景中的应用

对于 VoIP、FreeSWITCH、OpenSIPS 工程师来说,MCP 有非常大的价值。

例如用户日常工作中的信令链路:

SBC ↓ router_opensips ↓ lb_opensips ↓ FreeSWITCH ↓ Contact Center

排障时经常需要:

docker ps grep trace_id grep call-id 查看 SIP 信令 查看 FreeSWITCH 日志 查看 Jira

步骤繁琐且重复。


9. 构建 SIP Troubleshooting MCP

可以将常用能力封装为工具。

9.1 工具定义

@mcp.tool() def docker_ps(): pass @mcp.tool() def grep_trace(trace_id): pass @mcp.tool() def analyze_sip(call_id): pass @mcp.tool() def get_jira(issue): pass

9.2 使用示例

输入:

分析这个呼叫: trace_id=123456

AI 自动执行:

1. 查询容器状态 2. 提取 SIP 日志 3. 分析呼叫流程 4. 检查异常响应 5. 输出结论

整个排障流程可以大幅自动化。


10. MCP 与 Codex Skills 的关系

很多人已经在使用:

VS Code + Codex + Skills

例如:

  • 检查容器状态

  • 清理日志

  • 分析呼叫流程

这些本质上都是工具封装。


10.1 对比

能力SkillsMCP
运行脚本
AI 自动发现
跨平台共享
标准协议
多客户端支持

可以理解为:

Skills 是本地自动化脚本,而 MCP 是 AI 工具生态的标准协议。


11. MCP 的未来

目前越来越多的平台开始支持 MCP。

常见的 MCP Server 已经覆盖:

  • GitHub

  • GitLab

  • Jira

  • Slack

  • PostgreSQL

  • MySQL

  • Redis

  • Kubernetes

  • Docker

  • Filesystem

未来企业内部系统也很可能逐步提供 MCP 接口。

届时 AI 将不仅仅是聊天工具,而是真正能够参与开发、运维和故障排查的智能助手。


12. 总结

MCP(Model Context Protocol)是一种用于连接 AI 与外部世界的开放协议。

它的核心价值在于:

  • 统一工具调用标准

  • 让 AI 访问企业系统

  • 支持动态发现工具

  • 实现跨平台复用

  • 为 AI Agent 提供基础设施

对于研发、运维、VoIP、SRE 等工程师而言,MCP 不只是一个新协议,更可能成为未来 AI 自动化工作流的重要基础。

一句话概括:

如果说大模型是“大脑”,那么 MCP 就是连接大脑与现实世界的神经系统。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询