【2025年度创作】分享和总结如何通过AI快速开发一款MCP(模型上下文协议)服务插件,并进行本地和线上部署测试,最后上架MCP以及智能体调用MCP插件

【2025年度创作】分享和总结如何通过AI快速开发一款MCP(模型上下文协议)服务插件,并进行本地和线上部署测试,最后上架MCP以及智能体调用MCP插件
一年一度的ZEEKLOG博客之星活动现已开启!时光飞逝,2025的代码即将合上尾页,指针向前,2026的技术新篇静待启封。这一年,我依然坚持在ZEEKLOG平台持续创作,也见证了AI与智能体领域的持续升温,特别是MCP(模型上下文协议)技术带来的崭新突破。
值此ZEEKLOG平台年度技术盛会之际,博主将撰写一篇技术实战总结型文章,系统分享如何利用AI高效开发MCP服务插件,涵盖从本地调试、线上部署到智能体使用的全流程。
在这里插入图片描述

目录

MCP简介

MCP(Model Context Protocol,模型上下文协议) 是专为大语言模型(LLM)应用设计的开放协议,旨在实现 LLM 与外部工具和数据源的无缝集成。它通过统一的接口规范,将原本分散的 API 工具集成简化为"即插即用"模式,解决传统 API 工具中存在的多协议适配、高开发成本等问题。

特别注意:等你跑通一遍MCP后,回过来再看一遍MCP的解释,你就会对MCP模型上下文协议这个概念有所了解,确实是上下文。
在这里插入图片描述


MCP(Model Context Protocol)可以理解为让AI模型(比如ChatGPT)连接外部工具的“万能插座”

简单来说:

  • 以前AI只能靠自己的知识回答问题,现在通过MCP,AI可以安全地连接各种工具(比如读取文件、查询数据库、控制智能设备)。
  • 就像给你的电脑插上U盘或打印机一样,MCP让AI瞬间获得新能力,而且开发者可以轻松为AI创建新工具
  • 整个过程安全可控,AI只能使用你明确允许的工具,不会越权访问。

举个例子:有了MCP,你可以直接对AI说“帮我总结昨天写的文档”,AI就会通过MCP读取你的文档并生成摘要,而之前这是做不到的。

下面博主就通过通义灵码插件来体验下MCP简单的开发和使用过程。

安装插件

博主使用VSCode进行开发,其核心辅助工具是“通义灵码”插件。安装非常简单,只需在VSCode扩展商店中搜索“Lingma”并安装,登录后即可开始使用它辅助MCP开发。

在这里插入图片描述

MCP开发

博主本次开发的MCP的功能主要是查询数据库表,设置多个工具,可以通过博主名查询博主当前排名,也可以输出所有排名信息等工具。
2025博客之星年度评选入围榜单公布:https://blog.ZEEKLOG.net/blogdevteam/article/details/156200344

创建表

CREATETABLE top300_ranking ( id INTNOTNULLAUTO_INCREMENTCOMMENT'编号', total_rank INTNOTNULLCOMMENT'总排名', ZEEKLOG_nickname VARCHAR(100)NOTNULLCOMMENT'ZEEKLOG昵称', blog_homepage VARCHAR(255)NOTNULLCOMMENT'博客主页', original_score INTNOTNULLCOMMENT'原创博文得分', quality_score INTNOTNULLCOMMENT'质量分得分', identity_score INTNOTNULLCOMMENT'身份得分', interaction_score INTNOTNULLCOMMENT'互动得分', ranking_score INTNOTNULLCOMMENT'上榜得分', total_score INTNOTNULLCOMMENT'排名总分', add_time TIMESTAMPDEFAULTCURRENT_TIMESTAMPCOMMENT'添加时间', data_memo VARCHAR(500)COMMENT'备注', data_status TINYINTDEFAULT1COMMENT'数据状态(1-正常,0-删除,或其他状态码)',PRIMARYKEY(id),UNIQUEKEY uk_total_rank (total_rank),INDEX idx_ZEEKLOG_nickname (ZEEKLOG_nickname),INDEX idx_total_score (total_score DESC))ENGINE=InnoDBDEFAULTCHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='TOP 300 榜单排名';

提示词

既然是AI,那就用自然语言来让AI帮我们写代码实现MCP服务功能。
核心提示词就是:编写一个FastMCP框架实现MCP Server的脚手架工程,生成pyhon文件。
目的是使用python对应的mcp框架。

编写一个FastMCP框架实现MCP Server的脚手架工程,生成pyhon文件。
这个MCP服务主要实现如下功能:
1、获取某个博主排名信息,并通过【博客主页网址】获取当前博主个人主页信息以及发表文章篇数信息
调用此工具功能,必须调用查询条件select * from top300_ranking where ZEEKLOG_nickname=‘昵称值参数’
2、获取汇总信息
输出汇总信息sql语句,可以按总分等汇总信息输出
【下面是mysql表信息】
CREATE TABLE top300_ranking (
id INT NOT NULL AUTO_INCREMENT COMMENT ‘编号’,
total_rank INT NOT NULL COMMENT ‘总排名’,
ZEEKLOG_nickname VARCHAR(100) NOT NULL COMMENT ‘ZEEKLOG昵称’,
blog_homepage VARCHAR(255) NOT NULL COMMENT ‘博客主页’,
original_score INT NOT NULL COMMENT ‘原创博文得分’,
quality_score INT NOT NULL COMMENT ‘质量分得分’,
identity_score INT NOT NULL COMMENT ‘身份得分’,
interaction_score INT NOT NULL COMMENT ‘互动得分’,
ranking_score INT NOT NULL COMMENT ‘上榜得分’,
total_score INT NOT NULL COMMENT ‘排名总分’,
add_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT ‘添加时间’,
data_memo VARCHAR(500) COMMENT ‘备注’,
data_status TINYINT DEFAULT 1 COMMENT ‘数据状态(1-正常,0-删除,或其他状态码)’,
PRIMARY KEY (id),
UNIQUE KEY uk_total_rank (total_rank),
INDEX idx_ZEEKLOG_nickname (ZEEKLOG_nickname),
INDEX idx_total_score (total_score DESC)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT=‘TOP 300 榜单排名’;

根据提示词,最终会生成的代码和结构如下:

在这里插入图片描述

安装依赖
博主觉得AI同时生成了README.md文件,帮我们把项目使用和启动等步骤都写得非常清楚,省了不少时间。

在这里插入图片描述


配置数据库连接
根据自己得mysql连接信息进行填写

在这里插入图片描述

启动服务

第一次启动得时候可能会提示一些报错,直接复制报错信息让AI进行修复即可,经过多轮修复后,启动得效果如下:

在这里插入图片描述


由于当前生成的代码是以STDIO方式启动的MCP服务,博主这里想使用的是http形式启动:

py app.py --transport http --host 127.0.0.1 --port 8080 --path /mcp

直接继续让AI进行修复兼容即可,基本不用写任何代码,全部由AI来完成。

在这里插入图片描述


下面就是以http方式启动效果图

在这里插入图片描述


复制网址在浏览器上是可以直接访问的,显示下面信息说明启动成功。

在这里插入图片描述

本地部署MCP

点击右上角得用户信息,下拉点击个人设置

在这里插入图片描述

点击MCP服务

在这里插入图片描述


在这里插入图片描述

点击MCP右上角的加号,相关信息填写如下:
名称:mcpZEEKLOG(根据自己业务来)
类型:SSE或Streamable HTTP(STDIO这个类型还没试过)
服务地址:http://127.0.0.1:8080/mcp(就是刚刚启动的地址)
高级设置:博主这里暂时没有用到这个就没有填写,可留空

在这里插入图片描述


在这里插入图片描述


MCP服务这里就会自动获取对应工具信息

在这里插入图片描述

调用测试

询问: 全栈小5目前排名第几

AI会优先查找可用的MCP服务插件,然后智能调用对应的工具获取信息。

在这里插入图片描述


在这里插入图片描述


从上图可以看到,已经成功调用到MCP,并且查询数据库返回了相关信息,最后大模型根据从MCP工具中数据库表获取到的数据进行优化输出,博主询问的是全栈小5当前排名第几,不仅输出了博主是第几名,还有额外的具体各维度得分信息输出,第一轮博主得分440,属于中等分数,希望在接下来的两轮中取得好名次,也祝大家都能取得佳绩。
很显然,MCP在整个大模型AI输出过程中起到了数据补充的作用,是不是有点像知识库一样,而且还是动态化的数据,相比起知识库会更加灵活。

再测试个例子:
询问:
总分都有那些档次,划分档次并统计都有多少名博主

在这里插入图片描述


在这里插入图片描述


从上图可以看到,根据用户的提问AI能够准确知道调用获取所有排名的MCP工具,然后再进行汇总输出输出,是不是非常有意思,有没有对MCP有一定了解了。

档次划分分数范围人数代表博主(示例)
顶级500分1盼小辉丶(总分500分)
超高级470-489分4夜郎king(485分)、青云交(480分)、猫头虎(470分)等
高级450-469分61一键难忘、越重天、Francek Chen等(部分470分)及大量460/450分博主
中级440分97比特魔法师、是Dream呀、全栈小5等(440分)
良好430分107码农研究僧、工藤学编程、时光の尘等(430分)
中等420分84几何心凉、Yeats_Liao、极客不孤独等(420分)
合格410分46狮子也疯狂、繁依Fanyi、架构进化论等(410分)
总计410-500分300全体博主
到此,本地化部署MCP服务插件就算完成了,虽然过程中会出现一些问题,但是基本都是可以通过AI进行多轮询问得到解决,并且在过程中博主基本没有写过一行代码,全程由AI来完成,实现思路由我们自己通过自然语言来控制。

线上部署

由于博主对Windows服务器更为熟悉,本次部署环境选定为Windows。
具体步骤为:首先在服务器上运行MCP服务的Python程序,随后配置Nginx反向代理,并绑定域名以实现外网访问。

上传源码

直接将本地python代码上传到外网服务里

在这里插入图片描述

安装Python

在启动前确保已经安装了python相关软件。
安装python软件的cmd命令,直接通过链接下载安装

# 下载Python安装程序 curl -o python-installer.exe https://www.python.org/ftp/python/3.14.0/python-3.14.0-amd64.exe 

或者直接下载进行安装(推荐用这个方式,下载速度比较快)

在这里插入图片描述


cmd命令:python --version,能够显示版本号则标识已经安装成功

在这里插入图片描述

安装依赖

直接在当前python文件目录执行cmd命令,README.md这个文件里也有具体步骤:

pip install-r requirements.txt 
在这里插入图片描述

启动服务

在当前目录下,执行下面命令启动服务

py app.py --transport http --host 127.0.0.1 --port 8080 --path /mcp
在这里插入图片描述

nginx反向代理

在上一步,MCP服务已在服务器的本地环境成功启动。
接下来,需配置Nginx反向代理,将本地服务映射至公网域名,以实现通过域名访问。
nginx windows版本下载地址:https://nginx.org/en/download.html

在这里插入图片描述


建议解压到mcp所在同级目录

在这里插入图片描述


修改nginx.conf文件内容,由于博主的80端口已经被占用,这里使用其他端口号测试

worker_processes 1; # 必须要有 events 块 events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; # 您的反向代理配置 server { listen 8081; server_name 自己域名; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_connect_timeout 60s; proxy_send_timeout 60s; proxy_read_timeout 60s; } } # 可选:默认的 localhost 服务器 server { listen 8081; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } } 

设置bat启动文件

@echo off cd C:\web\mcp_ZEEKLOG\nginx start nginx.exe echo Nginx started. pause 
在这里插入图片描述

本地测试

直接在VSCode里通过域名方式来添加MCP

在这里插入图片描述

上架MCP

非常简单,和在VSCode里手动添加类似

在这里插入图片描述


在这里插入图片描述


工具调试

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

使用MCP

创建一个智能体并使用MCP,这里主要是用来测试,所以简单创建一个智能体引用MCP即可查看效果

在这里插入图片描述
到此,MCP的开发、本地部署、线上部署、智能体使用MCP就搞定啦

MCP和API区别

在开发MCP前博主有个疑问,为啥不直接用api就得了,非得出来个MCP,实际上他们也都是类似调用的一个地址,所以,这里还是要了解下他们之间的区别,也能知道MCP的核心价值。

特性维度APIMCP
全称与定义应用程序编程接口
一种通用技术标准与规范,定义了软件组件之间如何通信。
模型上下文协议
一个具体的协议和框架,专为让AI助手能安全、标准化地使用工具和数据源而设计。
本质与角色“通用语言”或“服务菜单”
任何软件(服务器、库、操作系统)都可以提供API,任何客户端(其他软件或开发者)都可以调用。
“专用工具箱连接协议”
它是API的使用者,也是一个标准化的包装层。它定义AI(客户端)如何发现、调用工具(服务器),以及工具如何被描述。
核心目的实现系统间的集成与功能调用
(例如:前端获取后端数据,App集成支付功能)
安全、可控地扩展AI助手的能力边界
(例如:让AI能读取数据库、执行命令、操作日历,而无需微调模型本身)
主要使用者开发者 编写代码来调用。
其他软件程序也可以调用。
AI助手/智能体(如Claude Desktop, Cursor等)自动发现并调用。
(开发者负责为AI创建MCP工具)
关系与比喻基础技术设施
好比电力系统(提供标准的电压和接口)。
建立在API之上的应用层协议
好比一套标准插头和智能家电协议,让所有电器都能安全、即插即用地接入电力系统,并被智能管家统一控制。
关键特性- 风格多样(REST, GraphQL, gRPC等)
- 注重性能、数据格式
- 认证和授权机制各异
- 标准化工具描述(名称、参数、schema)
- 资源概念(可读取的静态数据流)
- 强调安全与控制(主机严格控制可用工具)
- 动态发现(AI启动时自动获取可用工具列表)
一个简单类比餐厅的纸质菜单和点餐流程
(顾客需要自己阅读菜单、呼叫服务员、说出菜品)
餐厅的智能点餐平板
(平板自动连接后,主动推送所有可点的菜,顾客(AI)只需描述需求,平板就能理解并格式化成标准订单发送后厨。)

了解之后,只要是后端开发语言,大部分都会有MCP插件库,像Python、Java、C#都有类似MCP插件库直接可使用和封装MCP。

总结

至此,MCP的开发、本地与线上的部署应用,以及智能体调用MCP的全流程已完成。
简而言之,它与常规API的作用类似,但封装了特定领域的业务逻辑,是大模型功能调用的标准化接口。
感兴趣的朋友可以动手实践体验MCP服务插件。
最后,祝ZEEKLOG 2025博客之星活动圆满成功,也祝各位参赛的大佬们都能取得优异成绩!

Read more

OpenCode终极Docker部署指南:5步搭建AI开发环境

OpenCode终极Docker部署指南:5步搭建AI开发环境 【免费下载链接】termai 项目地址: https://gitcode.com/gh_mirrors/te/termai 想要在容器化环境中体验强大的AI编程助手吗?OpenCode作为一款基于终端的AI开发助手,现在可以通过Docker快速部署,让你在任何机器上都能拥有智能编码体验!🚀 OpenCode是一个功能强大的Go语言CLI应用,为开发者提供终端内的AI编程助手服务。它支持多种AI模型提供商,包括OpenAI、Anthropic Claude、Google Gemini等,通过TUI界面与AI模型交互,帮助完成编码任务、调试等工作。 🐳 为什么选择Docker部署OpenCode? 环境一致性:确保OpenCode在任何机器上都能以相同的方式运行 快速启动:无需手动安装Go环境,一键部署 资源隔离:独立容器环境,不影响主机系统 易于迁移:镜像打包所有依赖,轻松部署到不同环境 📋 部署前准备工作 在开始Docker部署之前,请确保你的系统已安装以下组件: * Docker Engine

【AI学习】深入探秘AI之神经网络的奥秘

【AI学习】深入探秘AI之神经网络的奥秘

文章目录 * 一、引言 * 1.1 AI 发展历程的精彩回顾 * 1.2 神经网络在 AI 中的关键地位 * 二、神经网络基础理论 * 2.1 神经元模型的深度剖析 * 2.1.1 神经元的结构与工作原理 * 2.1.2 激活函数的关键作用与类型 * 2.2 神经网络架构的全面解析 * 2.2.1 前馈神经网络的运行机制 * 2.2.2 反馈神经网络的独特特点与应用 * 三、神经网络训练过程详解 * 3.1 损失函数与优化目标的确定 * 3.1.1 常见损失函数的介绍与分析 * 3.1.2 根据任务选择合适的损失函数 * 3.

【LLM】大模型vibe coding(cursor、copilot、comate)

【LLM】大模型vibe coding(cursor、copilot、comate)

note 2025年,Karpathy分享了自己的Vibe Coding指南1.0: * 把所有相关内容塞进上下文里(在大型项目中可能需要很久。如果项目够小,就直接把所有文件都塞进去。 * 描述我们接下来要实现的那个具体的、增量式的小改动。不要直接要代码,而是要几种高层次的思路,并分析它们的优缺点。几乎总是会有多种做法,而大语言模型的判断并不总是可靠。然后(可选)再具体化。 * 选择一种思路,请它写出第一版代码。 * 进入复查/学习阶段:手动在浏览器里打开我不熟悉或没调用过的API文档,向模型提问解释、澄清、修改,必要时回退并尝试另一种思路。 * 测试。 * Git commit。 * 询问可以接下来实现什么。然后重复这个循环。 文章目录 * note * 一、相关vibe coding工具 * 1、cursor * 2、copilot * 3、comate * 二、vibe coding综述 * 1、code agent

智创 AI 新视界 -- AIGC 背后的深度学习魔法:从原理到实践

智创 AI 新视界 -- AIGC 背后的深度学习魔法:从原理到实践

💖💖💖亲爱的朋友们,热烈欢迎你们来到 青云交的博客!能与你们在此邂逅,我满心欢喜,深感无比荣幸。在这个瞬息万变的时代,我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的博客,正是这样一个温暖美好的所在。在这里,你们不仅能够收获既富有趣味又极为实用的内容知识,还可以毫无拘束地畅所欲言,尽情分享自己独特的见解。我真诚地期待着你们的到来,愿我们能在这片小小的天地里共同成长,共同进步。💖💖💖 本博客的精华专栏: 1. 大数据新视界专栏系列:聚焦大数据,展技术应用,推动进步拓展新视野。 2. Java 大厂面试专栏系列:提供大厂面试的相关技巧和经验,助力求职。 3. Python 魅力之旅:探索数据与智能的奥秘专栏系列:走进 Python 的精彩天地,感受数据处理与智能应用的独特魅力。 4. Java 性能优化传奇之旅:铸就编程巅峰之路:如一把神奇钥匙,深度开启 JVM 等关键领域之门。丰富案例似璀璨繁星,引领你踏上编程巅峰的壮丽征程。 5. Java 虚拟机(