|
| 1 | +# 📦 Unla v0.9.1 |
| 2 | + |
| 3 | +> Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code. |
| 4 | +
|
| 5 | +## ✨ 特性 |
| 6 | + |
| 7 | +- Gateway 视图模式持久化至本地存储 |
| 8 | +- 添加 Gateway 服务基础 URL 配置 |
| 9 | +- 新增内部网络白名单功能,默认阻止工具访问并支持配置允许的目标 |
| 10 | +- 添加完整的 Prometheus 指标支持(MCP API 请求指标、状态码、工具执行时间等) |
| 11 | +- 增强追踪捕获能力,支持无限长度选项和完整响应追踪 |
| 12 | +- 集成 Sprig 模板函数库,扩展模板能力 |
| 13 | +- OAuth2 授权码流程新增 PKCE 支持,提升安全性 |
| 14 | +- 加强 JWT 服务初始化和错误处理 |
| 15 | +- 改进 auth code grant,增加过期检查和特定错误提示 |
| 16 | +- 新增繁体中文文档和 README 徽章 |
| 17 | + |
| 18 | +## 🐞 修复 |
| 19 | + |
| 20 | +- 修复工具端点渲染中的路径参数转义,防止路径遍历攻击 |
| 21 | +- 修复工具执行失败时的响应错误 |
| 22 | +- 升级 crypto 依赖至 v0.43.0 |
| 23 | +- 升级 quic-go 依赖至 v0.54.1 |
| 24 | + |
| 25 | +## 🧹 重构 |
| 26 | + |
| 27 | +- 使用 Redis Streams 替代 Pub/Sub,实现更可靠的多实例信号传递 |
| 28 | +- 统一对齐环境变量前缀 |
| 29 | +- 优化追踪 ID 打印输出 |
| 30 | + |
| 31 | +## 🧪 测试 |
| 32 | + |
| 33 | +- 新增单元测试,提升代码覆盖率 |
| 34 | +- 增强 safeGet、logger 和追踪功能的测试覆盖 |
| 35 | +- 增加 JWT 密钥长度并添加 AuthConfig 测试 |
| 36 | + |
| 37 | +## 🔧 其他 |
| 38 | + |
| 39 | +- 更新 GitHub Actions 工作流配置 |
| 40 | +- 升级项目依赖至最新次要版本 |
| 41 | +- 添加缺失的配置和环境变量 |
| 42 | +- 优化 .dockerignore 配置 |
| 43 | +- 默认禁用 metrics,按需启用 |
| 44 | + |
| 45 | +--- |
| 46 | + |
| 47 | +📘 文档:https://docs.unla.amoylab.com/ |
| 48 | +🐙 源码:https://github.com/amoylab/unla |
| 49 | +🐳 Docker 镜像:`ghcr.io/amoylab/unla/allinone:latest` |
| 50 | +💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY |
| 51 | +🔗 扫描下方二维码加入社区微信群,备注:`unla` |
| 52 | +<img src="https://github.com/amoylab/unla/blob/main/web/public/wechat-qrcode.png" alt="微信群二维码" width="350" height="350" /> |
| 53 | + |
| 54 | +--- |
| 55 | + |
| 56 | +感谢所有参与和关注该项目的开发者与用户 💖 |
| 57 | + |
| 58 | +--- |
| 59 | + |
| 60 | +## ✨ Features |
| 61 | + |
| 62 | +- Persist gateway view mode to local storage |
| 63 | +- Add gateway service base URL configuration |
| 64 | +- Add internal network allowlist enforcement to block tool access by default and permit configured targets |
| 65 | +- Add comprehensive Prometheus metrics support (MCP API request metrics, status codes, tool execution timing, etc.) |
| 66 | +- Enhance trace capture with unlimited length option and full response tracing |
| 67 | +- Integrate Sprig template function library for extended template capabilities |
| 68 | +- Add PKCE support to OAuth2 authorization code flow for enhanced security |
| 69 | +- Strengthen JWT service initialization and error handling |
| 70 | +- Improve auth code grant with expiry checks and specific error messages |
| 71 | +- Add Traditional Chinese documentation and README badge |
| 72 | + |
| 73 | +## 🐞 Fixes |
| 74 | + |
| 75 | +- Escape path parameters in tool endpoint rendering to prevent path traversal attacks |
| 76 | +- Fix response error when tool execution fails |
| 77 | +- Update crypto to v0.43.0 |
| 78 | +- Update quic-go to v0.54.1 |
| 79 | + |
| 80 | +## 🧹 Refactor |
| 81 | + |
| 82 | +- Use Redis Streams instead of Pub/Sub for reliable multi-instance signal delivery |
| 83 | +- Align environment variable prefixes |
| 84 | +- Improve trace ID printing output |
| 85 | + |
| 86 | +## 🧪 Tests |
| 87 | + |
| 88 | +- Add unit tests to improve code coverage |
| 89 | +- Enhance test coverage for safeGet, logger, and tracing functionality |
| 90 | +- Increase JWT secret length and add AuthConfig tests |
| 91 | + |
| 92 | +## 🔧 Miscellaneous |
| 93 | + |
| 94 | +- Update GitHub Actions workflow for tests |
| 95 | +- Upgrade dependencies to latest minor versions |
| 96 | +- Add missing configurations and environment variables |
| 97 | +- Optimize .dockerignore configuration |
| 98 | +- Disable metrics by default, enable on demand |
| 99 | + |
| 100 | +--- |
| 101 | + |
| 102 | +📘 Docs: https://docs.unla.amoylab.com/ |
| 103 | +🐙 Source: https://github.com/amoylab/unla |
| 104 | +🐳 Docker Image: `ghcr.io/amoylab/unla/allinone:latest` |
| 105 | +💬 Join our Discord community: https://discord.gg/udf69cT9TY |
| 106 | +🔗 Scan to join WeChat group, note: `unla` |
| 107 | +<img src="https://github.com/amoylab/unla/blob/main/web/public/wechat-qrcode.png" alt="WeChat QR Code" width="350" height="350" /> |
| 108 | + |
| 109 | +--- |
| 110 | + |
| 111 | +Thanks to all contributors and early users! 💖 |
0 commit comments