Sunday 的面试指南

企业售后 MCP 实战(中):权限隔离与幂等写入

《Agent 大模型 0 到 1 系统课》 · 程序员 Sunday

你正在阅读本节的免费试读。完整课程 ¥499,可在文末添加作者微信购买。

上篇,咱们已经把整个项目运行起来了,也大概看了一下项目结构。

所以,现在的问题就是,这个项目咋学。。。

说实话,这个项目比第二章的大项目要复杂的多。

目前项目里有 agent-host.js、mcp-client.js、http-server.js、mcp-server.js 和 after-sales-service.js 这些关键文件。如果按照文件顺序,一个一个往下讲,谁都看不懂。

所以,如果想要把这个项目看明白,那么就必须要从 一个关键功能的入口开始,顺着这个入口的调用一点点来分析核心逻辑

有学过我 Vue 源码课程 的同学,应该很熟悉这种方案。

那咱们开始~~

从 npm run host 进入项目

上一小节咱们提到过,除了 npm run web-host 之外,还有一个叫做 npm run host 的指令

这个指令可以让直接启动一个控制台的输入,通过这种输入方式来和 Server 进行交互:

企业售后 MCP 实战(中):权限隔离与幂等写入 配图 1

那么大家现在请想一想,当我们执行 npm run host 的时候,程序会怎么执行呢?

保持上一篇启动的 MCP Server 别关,然后重新打开一个终端,进入项目目录:

cd Code/Node/第三章/08-enterprise-after-sales-mcp

执行:

npm run host

终端会出现类似下面的内容:

企业售后 MCP 实战(中):权限隔离与幂等写入 配图 2

程序现在已经启动了,但是大家先别着急输入问题。

咱们先看看刚才执行的 npm run host,到底运行了哪段代码。

package.json 里面的配置是:

企业售后 MCP 实战(中):权限隔离与幂等写入 配图 3

所以,真正的入口是 src/agent-host.js。

咱们打开这个文件。

这个文件里面有一个入口函数:main 函数

企业售后 MCP 实战(中):权限隔离与幂等写入 配图 4

这个文件中的 main(),启动时主要做了三件事:

// 第一件事:创建并连接 MCP Client。
client = await createAfterSalesClient({
	token,
	autoConfirm: false,
	name: 'enterprise-after-sales-agent-host'
})

// 第二件事:发现 MCP Server 暴露的 Tools。
const { tools: mcpTools } = await client.listTools()

// 第三件事:创建并维护连续对话上下文。

本节试读已结束

继续学习,解锁完整课程

购买《Agent 大模型 0 到 1 系统课》,
继续阅读本节剩余内容与后续课程。

扫码添加作者微信,备注「Agent 课程」

添加作者微信 · 购买完整课程

解锁完整课程 ¥499

《Agent 大模型 0 到 1 系统课》
扫码添加微信,备注「Agent 课程」,购买后由 Sunday 提供完整内容的学习方式。

扫码添加作者微信 LGD_Sunday,购买 499 元 Agent 课程

微信昵称:LGD_Sunday
手机上可长按保存二维码,再用微信扫一扫识别。

保存微信二维码