AI工具的“超级外挂”:从零手把手教你搭建私人 MCP 服务器

1、 为什么我们需要 MCP?

你是否也有过这样的抓狂时刻:想让 AI 帮你看一下本地的日志文件,或者读取一下数据库里的最新数据,却只能手动复制粘贴,不仅繁琐,而且一旦数据更新,又得重来一遍。

MCP(模型上下文协议)它提供了一种标准化的客户端-服务端架构。只要你的 AI 助手支持 MCP,就能通过这个协议,丝滑地读取本地文件、访问私有数据库或调用外部 API。

今天,我们就来剥开 MCP 的神秘外衣,从零开始,用 Node.js 搭建一个属于你自己的私人 MCP 服务器。别担心,这比你想象的要简单得多。

2、环境准备

打开终端,用下面命令检查是否安装了node js和npm

bash 复制代码
node -v   #检查nodejs安装
npm -v  #检查npm安装

创建一个mcpServer文件夹,然后在文件夹里使用npm进行初始化设置,以及安装MCP的官方SDK

kotlin 复制代码
npm init -y
npm install @modelcontextprotocol/sdk

没有错误的话就是下面图片展示的结果

3、核心实战与防坑指南

使用任意代码编辑器,打开mcpServer文件,创建src文件夹,新建文件index.ts文件,开始编写代码

javascript 复制代码
// 1. 导入依赖
import { McpServer } from"@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from"@modelcontextprotocol/sdk/server/stdio.js";

// 2. 创建服务器实例
export const server =new McpServer({
        name: "my-mcp-server", // 给你的服务器起个名字
        version: "0.0.1", // 版本号
});

// 3. 定义一个工具(Tool):起名叫 "say_hello"
server.tool(
        "say_hello", // 工具的名称
        { }, // 输入参数,这里为空
        async ()=> {
                return {
                        content: [{ type: "text", text: "Hello, World! From my first MCP server!" }],
                };
        }
);

// 4. 启动服务器
async function main(): Promise<void> {
        const transport = new StdioServerTransport();
        await server.connect(transport);
}

// 5. 执行启动
main().catch((error: Error) => {
        console.error("Server startup failed:", error);
        process.exit(1);
});

这里编写的第一个初始mcp,是实现调用说Hello World的工具。

使用下面命令进行编译:

css 复制代码
npx tsc index.ts --outDir build --target ES2020 --module commonjs --esModuleInterop

在编译阶段,你可能会和我一样踩中两个坑: 第一个报错是没有安装TypeScript编译器,可以使用下面命令安装编译器

复制代码
npm install typescript

第二个报错是缺少 Node.js 的类型定义,可以使用下面命令安装类型定义

css 复制代码
npm install --save-dev @types/node

然后使用上面的命令重新编译即可。 运行文件,这里注意路径和文件名!运行后会卡在这里!

bash 复制代码
node build/index.js

4、见证奇迹

重新开一个终端窗口,这里使用下面命令运行 Inspector(这是MCP官方提供的交互式调试和测试工具),连接到刚刚启动的 MCP 服务器,然后会启动服务,以及给一个session token

bash 复制代码
npx @modelcontextprotocol/inspector node build/index.js

打开浏览器运行 localhost:6274,打开MCP Inspector,选择设置,在最后输入session token,然后点击连接就可以看到成功了。 打开右侧的Tools,选择List Tools ,找到刚刚写的mcp,直接运行在下面就可以看到结果啦。

进阶玩法

下图是MCP代码的流程图,可以参考学习一下

这里我又用Ai写了一个简单的MCP工具,可以实现运行工具打开百度搜索指定的信息。

下图是测试结果:

5、总结

到这里搭建 MCP 服务器就完成了,MCP的本质其实就是赋予 AI 行动能力。顺着这个思路,你可以把自己的笔记、本地的 MySQL 数据库、甚至是家里的智能家居 API,全部打包成 MCP 工具,喂给你的 AI 助手。到那时,AI 就不再只是一个聊天窗口,而是真正懂你、能帮你处理私人事务的超级助理。

你打算用 MCP 把什么工具接入给你的 AI 呢? 欢迎在评论区留下你的脑洞,如果遇到报错或者配置问题,也随时在评论区找我交流。

如果这篇文章帮你避开了配置过程中的坑,别忘了点赞在看或收藏。

相关推荐
xywww16820 分钟前
大模型 API 选型实战:GPT、Gemini、Claude 接入时该看哪些指标?
运维·服务器·人工智能·python·gpt·langchain
私人珍藏库5 小时前
[Android] PeakFinder AR v4.8.89 (山峰全景识别+增强现实山峰查看器)
android·人工智能·智能手机·ar·工具·软件
CS创新实验室6 小时前
算法、齿轮与硅基大脑:数值计算发展简史
人工智能·算法·数值计算
能有时光6 小时前
PyTorch KernelAgent 源码解读 ---(4)--- ExtractorAgent
人工智能·pytorch·python
fthux6 小时前
GitZip Pro 源码解析:一个 GitHub 文件/文件夹下载扩展是如何工作的(一)整体架构与扩展入口
人工智能·ai·开源·github·open source
aqi007 小时前
15天学会AI应用开发(十七)使用LangGraph实现会话记忆功能
人工智能·python·大模型·ai编程·ai应用
xixixi777777 小时前
三大 AI 安全里程碑:Akamai 高危风险预警、智能体水印强制落地、PQC 量子安全全产业链统一
大数据·人工智能·安全·ai·大模型·智能体·政策
AI小码7 小时前
LLM 应用的缓存工程:当每次 API 调用都在燃烧成本
java·人工智能·spring·计算机·llm·编程·api
code 小楊7 小时前
AI函数调用:Function Calling从理论到实战全解析
人工智能
delishcomcn7 小时前
智切未来:AI算法如何重塑不干胶标签分切机的精度与效率边界
人工智能·神经网络·计算机视觉