本项目借助 TypeScript SDK,为你展示了 Model Context Protocol (MCP) 的基础实现。它涵盖了一个用于提供资源访问的服务器,以及一个连接至该服务器并发起资源请求的客户端,二者通过 stdio 传输进行通信。
本示例包含提供资源访问的 MCP 服务器、连接服务器并请求资源的 MCP 客户端,具备基本的资源列表和读取功能。
克隆仓库并安装依赖项:
npm install
你需要分别在两个终端窗口中运行服务器和客户端。
npm run start:server
npm run start:client
客户端将执行以下操作:
当前服务器支持的功能包括:
示例服务器提供以下资源访问权限:
file:///example.txt
:一个简单的文本资源克隆仓库并安装依赖项:
npm install
你需要分别在两个终端窗口中运行服务器和客户端。 启动服务器:
npm run start:server
在新终端中启动客户端:
npm run start:client
要添加新资源,请修改 ListResourcesRequestSchema
处理器位于 src/index.ts
:
server.setRequestHandler(ListResourcesRequestSchema, async () => {
return {
resources: [
{
uri: "file:///example.txt",
name: "Example Resource",
},
// 在此处添加新资源
],
};
});
src/
├── index.ts # 服务器实现
└── client.ts # 客户端实现
npm run start:server
:启动 MCP 服务器npm run start:client
:启动 MCP 客户端要添加新资源,请修改 ListResourcesRequestSchema
处理器位于 src/index.ts
:
server.setRequestHandler(ListResourcesRequestSchema, async () => {
return {
resources: [
{
uri: "file:///example.txt",
name: "Example Resource",
},
// 在此处添加新资源
],
};
});
属性 | 详情 |
---|---|
依赖项 | @modelcontextprotocol/sdk :MCP TypeScript SDK;ts-node :TypeScript 执行环境;typescript :TypeScript 编译器 |
ISC