这是一个支持JWT身份验证的模型上下文协议(MCP)SSE服务器,它允许通过安全的Bearer令牌流公开多个AI工具,为用户提供安全、便捷的AI工具访问方式。
本服务器使用了以下技术搭建:
✅ 已经通过
@modelcontextprotocol/inspector
进行全面测试
server/
├── index.ts # 主Express + MCP服务器
├── .env # 环境变量文件
├── package.json # 项目元数据及脚本
├── tsconfig.json # TypeScript配置
└── README.md # 您在此处!
git clone https://github.com/anisirji/mcp-server-remote-setup-with-jwt-auth.git
cd mcp-server-remote-setup-with-jwt-auth
npm install
.env
文件echo "JWT_SECRET=your-secret-key" > .env
npm run dev
✅ 服务器将在以下地址运行:
http://localhost:3001/sse
📖 官方文档:MCP Inspector
npx @modelcontextprotocol/inspector
使用cURL获取您的JWT令牌:
curl "http://localhost:3001/auth/token?username=aniket&scope=mcp:access"
✅ 示例响应:
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
这样,您就可以开始测试各种工具了!
app.use('/echo', (req, res) => {
res.send({ echo: req.query.text });
});
app.use('/time', (req, res) => {
res.send({ time: new Date().toISOString() });
});
/auth/token
username
: 用户名scope
: 权限范围(例如:mcp:access
){
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
/sse
/message/{sessionId}
{
"text": "消息文本"
}
这个项目为构建一个安全且可扩展的AI工具平台提供了坚实的基础。尽管目前可能还需要一些额外的功能来完善,但现有的结构和文档已经非常清晰了。