模型上下文协议服务器与客户端

一个基于Node.js的模型上下文协议(MCP)服务器和客户端项目,用于资源与工具管理、用户数据处理和基于提示的操作。

  • by Pieter1821
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 pieter1821/mcp-server-and-client

使用说明

MCP服务器和客户端

一个Node.js项目,实现了一个模型上下文协议(MCP)服务器和客户端,用于资源和工具管理、用户数据处理和基于提示的操作。

特性

  • 模型上下文协议(MCP)服务器的交互式CLI
  • 使用动态输入提示执行工具
  • 具有参数替换的资源和资源模板读取
  • 快速选择和执行
  • 用于文本生成的集成Google Gemini API

先决条件

安装

  1. 克隆存储库:

    git clone https://github.com/<your-username>/<your-repo-name>.git
    cd <your-repo-name>
    
  2. 安装依赖项:

    npm install
    

    将安装以下软件包:

    • @询问者/提示
    • @模型上下文协议/sdk
    • dotenv
    • 动物圈
    • @模型上下文协议/检查器(开发)
    • @类型/节点(dev)
    • ts节点(dev)
    • tsx(开发)
    • 打字稿(dev)
  3. 构建服务器:

    npm run server:build
    

用法

  1. 安装依赖项并设置 .env 提交 GEMINI_API_KEY.
  2. 运行客户端:
    npm run build
    node build/client.js
    
  3. 按照CLI提示与工具、资源和提示进行交互。

运行服务器(开发)

npm run server:dev

运行客户端

  • 客户端使用构建的文件连接到服务器。
  • 您可以在中运行客户端代码 src/client/client.ts (TypeScript)或使用内置的JS build/client/client.js.

脚本

  • npm run server:build --将TypeScript编译为JavaScript
  • npm run server:build:watch --观察并编译更改
  • npm run server:dev --在开发模式下运行服务器
  • npm run server:inspect --使用MCP检查器运行服务器

项目结构

├── build/
│   ├── server.js
│   └── client/
│       └── client.js
│   └── data/
│       └── users.json
├── src/
│   ├── server.ts
│   └── client/
│       └── client.ts
│   └── data/
│       └── users.json
├── package.json
├── tsconfig.json

贡献

  1. 分叉存储库
  2. 创建功能分支(git checkout -b feature/my-feature)
  3. 提交您的更改(git commit -am 'Add new feature')
  4. 推到分支(git push origin feature/my-feature)
  5. 创建新的Pull请求

许可证

该项目根据ISC许可证获得许可。

联系

如有疑问或需要支持,请在GitHub上发布问题。