MCP代理服务器

MCP代理服务器为Model Context Protocol (MCP) 服务器提供认证、授权和企业级功能,将本地MCP服务器转变为安全、可扩展的远程访问服务。

  • by achetronic
  • Go
  • 本地部署
  • 9 星标
  • 更新于
在 GitHub 查看 achetronic/mcp-proxy

使用说明

MCP代理

模型上下文协议(MCP)服务器的代理,为任何MCP后端添加身份验证、授权和企业功能。将您的本地MCP服务器转换为可远程访问的安全、可扩展的服务。

动机

MCP服务器通常是为本地使用stdio传输而开发的,这使得它们不适合需要远程访问、身份验证和可扩展性的生产环境。MCP代理通过在任何MCP服务器前提供一层来弥合这一差距,在保留原始MCP功能的同时实现企业部署。

特性

  • 🔐 符合OAuth RFC 8414和RFC 9728

  • 对……的支持 .well-known/oauth-protected-resource 和 .well-known/oauth-authorization-server 端点

  • 两个端点都是可配置的

  • 🛡️ 几种JWT验证方法

  • 委托给Istio等外部系统

  • 基于声明的JWKS URI和CEL表达式进行本地验证

  • 🔄 交通桥梁

  • 接受StreamableHTTP和Stdio请求,并转发到HTTP或Stdio MCP后端

  • 启用对本地MCP服务器的远程访问

  • 📋 访问日志可以排除或编辑字段

  • 🚀 生产就绪:包括完整示例、Dockerfile、Helm Chart和GitHub Actions for CI

  • ⚡ 超级易于扩展:在优质果汁中添加维生素: mcp走

部署

生产🚀

使用位于 chart/ 目录。

如何开发你的MCP

先决条件

  • 转到1.24+

修改代码并运行

修改整个代码库并执行 make run

注: 默认的YAML配置执行前面的命令,将服务器作为HTTP服务器转发启动 连接到Stdio服务器。其他需求?只需修改Makefile以使用示例中提供的其他YAML。

配置示例

有几个配置示例可用 这里

🤝 贡献

欢迎所有捐款!无论您是报告错误、建议功能还是提交代码——谢谢!以下是如何参与其中:

▸ 打开一个问题 报告错误或请求功能

▸ 提交拉取请求 促进改进

📄 许可证

MCP代理根据 Apache 2.0许可证.