MCP身份验证快速入门
一个具有Asgardeo身份验证的Node.js MCP(模型上下文协议)服务器,具有简单的添加工具和问候资源。
先决条件
- Node.js(v16或更高版本)
- npm或纱线
- 配置了MCP客户端应用程序的Asgardeo帐户
设置
- 克隆或下载项目
- 安装依赖项:
npm install- 配置环境变量:
- 创建一个 .env 文件并根据需要更新值:
PORT=3000
BASE_URL=https://api.asgardeo.io/t/myagents
MCP_RESOURCE=http://localhost:3000/mcp- 配置Asgardeo应用程序:
- 确保您在Asgardeo中有一个MCP客户端应用程序 - 注意 client-id 用于测试
运行服务器
使用身份验证启动MCP服务器:
npm start服务器将在上运行 http://localhost:3000/mcp (或中指定的端口 .env).
MCP检验员测试
- 运行检查器:
npx @modelcontextprotocol/inspector http://localhost:3000/mcp- 配置身份验证:
- 在MCP检查器中,转到身份验证设置
- 在“OAuth 2.0 Flow”下,输入您的Asgardeo client-id
- 按照OAuth流程进行身份验证
您需要按照中的说明在Asgardeo中创建测试用户 随附单用户指南 以进行身份验证。
- 测试服务器:
- 列出可用的工具和资源 - 尝试使用“添加”工具,输入如下 {"a": 5, "b": 3} - 使用URI查询“问候”资源,如 greeting://world
API终点
POST /mcp-MCP协议端点(需要身份验证)- OAuth端点由Asgardeo中间件自动处理
安全
- 所有MCP请求都需要有效的Asgardeo身份验证
- CORS已启用用于开发(限制在生产中)
- 未经授权的请求返回401,其中包含WWW-Authenticate标头
发展
- 使用TypeScript和Express构建
- 用途
@modelcontextprotocol/sdk用于MCP实施 - 通过身份验证
@asgardeo/mcp-express
故障排除
- 确保您的Asgardeo应用程序具有正确的重定向URI:
http://localhost:6274/oauth/callback - 检查一下
.env文件具有适用于租户的正确Asgardeo基本URL - 验证MCP检查器是否在正确的端口上运行
许可证
Apache许可证2.0
