交互式Hello World服务器

一个基于MCP协议的交互式Hello World服务器,可作为独立服务运行或通过MCP协议与ChatGPT集成。

  • by AntonGrushkin
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 AntonGrushkin/mcp-server-node

使用说明

Hello World MCP服务器

描述

这个项目是一个MCP(模型上下文协议)服务器,它提供了一个交互式的Hello World小部件。该应用程序可以作为独立服务器运行,也可以通过MCP协议与ChatGPT集成。

主要特点

  • 🚀 Express上的MCP服务器支持SSE(服务器发送事件)
  • 🎨 web界面
  • 📦 通过Webpack进行前端构建
  • 🔌 通过MCP协议与OpenAI/ChatGPT集成

项目结构

mcp-server-node/
├── dist/             # Built files (generated during build)
├── src/              # Source files
│   ├── index.js      # Entry point
│   ├── script.js     # Widget logic
│   └── style.css     # Styles
├── server.js         # Express server with MCP
├── webpack.config.js # Webpack configuration
└── package.json      # Dependencies and scripts

安装和运行

  1. 安装依赖项:
npm install
  1. 创建一个 .env 在项目根目录中创建文件并设置 BASE_URL 环境变量:
BASE_URL=https://your-domain.com

⚠️ 重要提示: 这 BASE_URL 环境变量为 必需的 进行适当的静态资产建设。Webpack使用此URL为构建的HTML中的JavaScript和CSS文件生成正确的路径。没有它,ChatGPT中的小部件将无法正确加载其脚本和样式。

例如,如果你使用ngrok来公开你的本地服务器:

BASE_URL=https://your-ngrok-url.ngrok-free.app
  1. 构建项目:
npm run build
  1. 启动服务器:
npm run serve

服务器将在以下位置可用: http://localhost:3000

连接到ChatGPT

注: ChatGPT要求MCP连接使用HTTPS,因此 http://localhost:3000 不会直接工作。要将本地MCP服务器连接到ChatGPT,您可以使用 吸烟 创建到本地服务器的HTTPS隧道。

API终点

  • GET /mcp -用于连接MCP客户端的SSE端点
  • POST /mcp/messages?sessionId=... -发送MCP消息的端点
  • GET /health -健康检查端点
  • GET /.well-known/* -OpenID/OAuth配置

工具

  • show_hello_world -显示交互式Hello World界面

技术

  • Node.js -运行时环境
  • 快速 -Web服务器
  • @模型上下文协议/sdk -用于Node.js的MCP SDK
  • Webpack -模块捆绑器
  • HTML/CSS/JavaScript -前端

许可证

麻省理工学院

作者

作为MCP服务器与OpenAI/ChatGPT集成的示例创建的项目。