通过Ory Network使用OAuth 2.1集成的服务器端事件(Server-Sent Events)来实现模型上下文协议服务器,以进行实时通信,支持带有身份验证和客户端管理的安全AI模型通信。
396 查看 · 2026-07-07 更新
简介
通过Ory Network使用OAuth 2.1集成的服务器端事件(Server-Sent Events)来实现模型上下文协议服务器,以进行实时通信,支持带有身份验证和客户端管理的安全AI模型通信。
简介
通过Ory Network使用OAuth 2.1集成的服务器端事件(Server-Sent Events)来实现模型上下文协议服务器,以进行实时通信,支持带有身份验证和客户端管理的安全AI模型通信。
MCP SSE Ory 服务器
本项目实现了一个使用服务器发送事件(SSE)进行通信的模型上下文协议(MCP)服务器,并集成了Ory Network以提供OAuth 2.1功能。
概述
该服务器提供:
- 使用SSE传输的MCP服务器实现
- 通过Ory Network集成OAuth 2.1
- 安全令牌验证和客户端管理
- 用于Ory Network的项目管理工具
前提条件
- Node.js (v18或更高版本)
- Ory Network账户和API密钥
环境变量
创建一个.env文件,包含以下变量(参考.example.env文件):
env
Ory Network 配置
ORY_BASE_API_URL=https://api.console.ory.sh ORY_PROJECT_URL=https://yourprojectslug.projects.oryapis.com ORY_PROJECT_API_KEY=yourprojectapikey ORY_WORKSPACE_API_KEY=yourworkspaceapikey
服务器配置
MCP_SERVER_BASE_URL=http://localhost:4000 MCP_SERVER_DOCS_URL=https://ory.sh/docs MCP_SERVER_PORT=4000
安装
- 克隆仓库
- 安装依赖: bash npm install
开发
运行开发服务器:
bash npm run dev
构建
构建TypeScript项目:
bash npm run build
运行
启动生产服务器:
bash npm run start
API端点
GET /mcp- 建立用于MCP通信的SSE连接POST /messages- 处理来自客户端的MCP消息- OAuth端点(通过Ory Network):
/oauth2/auth- 授权端点/oauth2/token- 令牌端点/oauth2/revoke- 令牌撤销端点/oauth2/register- 客户端注册端点
功能
- MCP服务器:实现AI模型通信的模型上下文协议
- SSE传输:使用服务器发送事件进行实时通信
- OAuth集成:通过Ory Network进行安全认证
- 客户端管理:动态OAuth客户端验证和管理
- 项目工具:用于管理Ory Network项目的工具,包括:
- 列出工作区中的项目
- 创建新项目
- 获取项目详情
- 更新项目配置
安全性
- Bearer令牌认证
- PKCE支持
- 安全令牌验证
- 客户端验证
- 正确的错误处理和日志记录
错误处理
服务器实现了优雅关闭和正确的错误处理,包括:
- 未捕获的异常
- 未处理的Promise拒绝
- 进程终止信号(SIGINT, SIGTERM)
许可证
版权所有 2025 Ory Corp
根据Apache许可证2.0版("许可证")授权;除非遵守许可条款,否则不得使用此文件。 您可以在以下网址获取许可证副本:
http://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,否则根据许可证分发的软件按"原样"分发,不附带任何明示或暗示的担保或条件。 有关权限和限制的具体语言,请参阅许可证。
来源
- 来源:github
- 链接:https://github.com/ory/mcp-sse