Skip to content

Releases: AmoyLab/Unla

v0.9.0

17 Sep 03:38

Choose a tag to compare

📦 Unla v0.9.0

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

✨ 特性

  • 集成 OpenTelemetry 链路追踪,支持 Jaeger 配置,可捕获下游请求与错误
  • MCP 能力增强:新增日志与资源管理支持;后台定时抓取与缓存能力(可配置刷新间隔与缓存 TTL)
  • Web 前端:开发环境新增安全代理目标配置;能力查看页面渲染与类型优化
  • 模板工具:新增 safeGetsafeGetOr,安全访问嵌套字段
  • 支持 Google/GitHub OAuth 登录

🐞 修复

  • 修复能力筛选初始化数组为空导致的问题
  • 增量同步中确保最新配置覆盖顺序正确
  • 调整未实现的资源获取日志级别为 debug,减少噪音
  • GitHub Actions 工作流事件修复(pull_request_target → pull_request)

🧹 重构

  • NewServer 使用函数式可选项,简化可选配置(追踪、前向代理等)
  • 移除磁盘存储实现
  • 前端类型与导入顺序优化,条件表达式简化

📘 文档:https://docs.unla.amoylab.com/
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


✨ Features

  • Integrate OpenTelemetry tracing with Jaeger configuration; capture downstream requests and errors
  • MCP capabilities: add logging and resource management; background periodic fetch and caching (configurable refresh interval and TTL)
  • Web: add safe proxy target for development; improve capability viewer types and rendering
  • Template helpers: add safeGet and safeGetOr for nil-safe nested access
  • Add OAuth authentication with Google and GitHub

🐞 Fixes

  • Initialize capability filter arrays to avoid undefined
  • Ensure latest config updates apply last in incremental sync
  • Downgrade unimplemented resource fetching logs to debug level
  • Fix GitHub Actions event (pull_request_target → pull_request)

🧹 Refactor

  • Use functional options in NewServer for optional configs (tracing, forward proxy, etc.)
  • Remove disk storage implementation
  • Improve frontend type definitions and import order; simplify filter conditions

📘 Docs: https://docs.unla.amoylab.com/
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community: https://discord.gg/udf69cT9TY
🔗 Scan to join WeChat group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

  • feat: add tool annotation by @qiankunli in #226
  • skip empty arguments (#2) by @Divyanshubansaldb in #211
  • fix: Ensure latest config updates apply last in incremental sync by @minhyannv in #231
  • feat: handle ping request with an empty response in streamable by @KamToHung in #233
  • Feature/mcp capabilities sync by @x22x22 in #245
  • refactor(web): reorder imports and enhance type definitions in Capabi… by @x22x22 in #248
  • feat(tracing): integrate OpenTelemetry tracing support with configuration options for Jaeger, including downstream request and error capture by @iFurySt in #252

New Contributors

Full Changelog: v0.8.6...v0.9.0

v0.8.6

16 Jul 15:21
45e2f40

Choose a tag to compare

📦 Unla v0.8.6

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

✨ 特性

  • 添加前向头部支持
  • 支持透明头部传递

🐞 修复

  • 删除默认投递头部
  • 修复空透明头部问题
  • 删除日志中的头部信息
  • 删除无用文件
  • 防止 Chrome 在搜索和 API 密钥输入中自动填充密码 (#182)
  • 使用运行时直接网关修饰符 (#1)
  • 升级 @heroui/react 从 2.7.9 到 2.7.11
  • 修复构建后的 web 渲染问题

📘 文档:https://docs.unla.amoylab.com/
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


✨ Features

  • Add forward headers support
  • Support transparent headers

🐞 Bug Fixes

  • Remove deliver default header
  • Fix empty transparentHeaders
  • Remove header in log
  • Remove unused file
  • Prevent Chrome from autofilling password in search and API key inputs (#182)
  • Use runtime direct gateway modifier (#1)
  • Upgrade @heroui/react from 2.7.9 to 2.7.11
  • Fix web rendering issue after build

📘 Docs: https://docs.unla.amoylab.com/
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

New Contributors

Full Changelog: v0.8.5...v0.8.6

v0.8.5

14 Jul 15:43
9d064a8

Choose a tag to compare

📦 Unla v0.8.5

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

🔧 其他

  • 修复:删除无用的rollup选项以解决构建问题 (#198)

📘 文档:https://docs.unla.amoylab.com/
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


🔧 Others

  • Fix: Delete useless rollup options to fix build issues (#198)

📘 Docs: https://docs.unla.amoylab.com/
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

Full Changelog: v0.8.4...v0.8.5

v0.8.4

13 Jul 08:06
841c3ac

Choose a tag to compare

📦 Unla v0.8.4

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

⚡ 改进

  • 从npm迁移到pnpm包管理器,提升依赖管理效率
  • 更新Rollup和Vite版本,增强构建性能和代码分割
  • 增强OpenAPI导入功能,支持租户验证和租户选择
  • 改进租户选择逻辑和网关管理器的用户体验
  • 优化MultiSelectAutocomplete组件,新增maxVisibleItems属性

🔧 其他

  • 修复:移除API baseURL中的v1前缀
  • 修复:解决docker compose文件在旧版本docker-compose二进制上的运行错误
  • 优化:重构Layout组件导入结构,提升代码可读性
  • 优化:改进GitHub工作流配置,安装特定pnpm版本并启用缓存
  • 更新:调整API服务器端口和MCP网关配置以保持一致性
  • 更新:增强运行时配置处理和环境变量配置
  • 更新:登录页面标题更新为"Unla - MCP Gateway"

📘 文档:https://docs.unla.amoylab.com/
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


⚡ Improvements

  • Migrate from npm to pnpm package manager for improved dependency management efficiency
  • Update Rollup and Vite versions to enhance build performance and code splitting
  • Enhance OpenAPI import functionality with tenant validation and tenant selection support
  • Improve tenant selection logic and gateway manager user experience
  • Optimize MultiSelectAutocomplete component with new maxVisibleItems property

🔧 Others

  • Fix: Remove v1 prefix from API baseURL
  • Fix: Resolve docker compose file runtime errors on older docker-compose binary versions
  • Optimize: Refactor Layout component import structure for better code readability
  • Optimize: Improve GitHub workflow configuration with specific pnpm version installation and caching
  • Update: Adjust API server port and MCP gateway configuration for consistency
  • Update: Enhance runtime configuration handling and environment variable setup
  • Update: Login page title updated to "Unla - MCP Gateway"

📘 Docs: https://docs.unla.amoylab.com/
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

  • 解决docker compose文件不指定版本时,在旧版本docker-compose二进制上运行报错问题 by @hevervie in #190
  • fix: baseURL remove v1 by @KamToHung in #193

New Contributors

Full Changelog: v0.8.3...v0.8.4

v0.8.3

09 Jul 16:12
bf22ffe

Choose a tag to compare

📦 Unla v0.8.3

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

⚡ 改进

  • 聊天页面新增SystemPrompt和Authorization文本框功能
  • 使用OPENAI_*环境变量创建默认LLM提供者
  • 优化根元素渲染和加载屏幕显示效果

🔧 其他

  • 重构:将路由前缀从'/mcp'更新为'/gateway'统一管理
  • 修复:增强错误处理和改善SelectItem可访问性
  • 更新系统提示的中英文翻译
  • 添加系统提示相关API路由
  • 清理和移除OpenAI配置相关文件
  • 更新文档链接指向新URL

📘 文档:https://docs.unla.amoylab.com/
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


⚡ Improvements

  • Add SystemPrompt and Authorization textbox functionality to chat page
  • Create default LLM provider using OPENAI_* environment variables
  • Optimize root element rendering and enhance loading screen display

🔧 Others

  • Refactor: Update routing prefixes from '/mcp' to '/gateway' for unified management
  • Fix: Enhance error handling and improve SelectItem accessibility
  • Update system prompt translations for English and Chinese locales
  • Add system prompt related API routes
  • Clean up and remove OpenAI configuration files
  • Update documentation links to point to new URL

📘 Docs: https://docs.unla.amoylab.com/
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

Full Changelog: v0.8.2...v0.8.3

v0.8.2

03 Jul 09:24
6f404ab

Choose a tag to compare

📦 Unla v0.8.2

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

⚡ 改进

  • 为LLM提供者和AI模型描述添加国际化支持
  • 增加LLM配置菜单访问权限控制功能
  • OpenAPI导入功能增加高级选项:tenant和prefix设置
  • 支持多Redis地址分隔符配置

🔧 其他

  • 重构统一session not found代码处理
  • 整理和优化web端代码

📘 文档:https://mcp.ifuryst.com
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


⚡ Improvements

  • Add internationalization support for LLM provider and AI model descriptions
  • Add access control functionality for LLM config menu
  • Add advanced options for OpenAPI import: tenant and prefix settings
  • Support multi Redis address separator configuration

🔧 Others

  • Refactor and align session not found code handling
  • Clean up and optimize web frontend code

📘 Docs: https://mcp.ifuryst.com
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

Full Changelog: v0.8.1...v0.8.2

v0.8.1

27 Jun 01:30
00faa97

Choose a tag to compare

📦 Unla v0.8.1

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

🐞 修复

  • 修复数组参数处理问题

⚡ 改进

  • 增加支持Redis Cluster和Redis Sentinel
  • 增加 MCP 协议版本头支持
  • 增加web运行时配置

🔧 其他

  • 添加 GitHub 赞助信息配置
  • 添加版权和许可信息文件 (NOTICE)

📘 文档:https://mcp.ifuryst.com
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


🐞 Bug Fixes

  • Fix array parameters processing issue

⚡ Improvements

  • Add support for Redis Cluster and Redis Sentinel
  • Add MCP protocol version header support
  • Add web runtime configuration

🔧 Others

  • Add GitHub sponsorship information configuration
  • Add copyright and licensing information file (NOTICE)

📘 Docs: https://mcp.ifuryst.com
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

  • feat(config): Automatically create directory for SQLite database by @kerwin612 in #158
  • VITE_runtime_var and mcp-protocol-version header by @boston008 in #157
  • feat: support cluster redis by @qiankunli in #165
  • Vite runtime varables add default values for backward compatibility by @boston008 in #166

New Contributors

Full Changelog: v0.8.0...v0.8.1

v0.8.0

23 Jun 14:43
9ca5c45

Choose a tag to compare

📦 Unla v0.8.0

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

✨ 特性

  • MCP Prompt 支持 - 新增对 MCP prompt 的完整支持
  • 强类型工具调用 - 为 MCP 工具调用添加强类型请求支持
  • 复杂结构参数支持 - 支持复杂数据结构的参数传递
  • LLM 管理功能 - 新增 LLM 提供商和模型的完整管理界面
  • 本地静态资源服务 - 所有静态资源本地化,移除外部依赖
  • 主题管理增强 - 增强主题管理和语言持久化,覆盖登录页面
  • 实验性功能警告 - 在聊天界面添加实验性功能提醒

🐞 修复

  • 修复构建问题和代码规范检查
  • Web 端代码规范修复

⬆️ 依赖升级

  • mcp-go 升级到 v0.32.0

🛠️ 重构与合并

  • 更新 k8s 部署文件配置
  • 更新 apiserver 配置和 i18n 路径
  • 移除 AccessibleModal 组件,统一使用 HeroUI Modal
  • 优化 GitHub Actions 工作流配置

🔧 其他

  • 添加 CLAUDE.md 项目指导和开发说明文档

📘 文档:https://mcp.ifuryst.com
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


✨ Features

  • MCP Prompt Support - Full support for MCP prompts
  • Strongly-typed Tool Calls - Add strongly-typed request support for MCP tool calls
  • Complex Structure Arguments - Support for complex data structure parameters
  • LLM Management - Complete management interface for LLM providers and models
  • Local Static Assets - Serve all static assets locally, removing external dependencies
  • Enhanced Theme Management - Enhanced theme management and language persistence covering login page
  • Experimental Feature Warning - Add experimental feature warning in chat interface

🐞 Bug Fixes

  • Fix build issues and linting
  • Web linting fixes

⬆️ Dependencies

  • Bump mcp-go to v0.32.0

🛠️ Refactor & Merge

  • Update k8s deployment files configuration
  • Update apiserver configuration and i18n paths
  • Remove AccessibleModal component, unified use of HeroUI Modal
  • Optimize GitHub Actions workflow configuration

🔧 Others

  • Add CLAUDE.md for project guidance and development instructions

📘 Docs: https://mcp.ifuryst.com
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

New Contributors

Full Changelog: v0.7.1...v0.8.0

v0.7.1

17 Jun 09:11
e561f7b

Choose a tag to compare

📦 Unla v0.7.1

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

✨ 特性

  • 集成工具获取与调用,支持SSE传输
  • 为Redis会话存储增加前缀配置
  • 为MCP配置及相关实体增加数据库schema
  • HTTP客户端支持代理配置

🐞 修复

  • SSE流错误 context canceled
  • MySQL唯一索引字段类型问题
  • PostgreSQL常量名与CreatedAt默认值
  • MCPGatewayConfig类型断言
  • 版本清理时缺少limit

⬆️ 依赖升级

  • @modelcontextprotocol/sdk、react-i18next、react-router-dom、i18next、zod

🛠️ 重构与合并

  • 移除冗余代码,保持uuid为主键,合并主干分支

🔧 其他

  • 修正star history链接、错误url

📘 文档:https://mcp.ifuryst.com
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


✨ Features

  • Integrate tool fetching and calling with SSE transport
  • Add prefix configuration to Redis session store
  • Add database schema for MCP configuration and related entities
  • Add proxy configuration support to HTTP client

🐞 Bug Fixes

  • SSE stream error: context canceled
  • MySQL unique index field type issue
  • PostgreSQL constant name and CreatedAt default value
  • Type assertion for MCPGatewayConfig
  • Add missing limit for version cleanup

⬆️ Dependencies

  • @modelcontextprotocol/sdk, react-i18next, react-router-dom, i18next, zod

🛠️ Refactor & Merge

  • Remove redundant codes, keep uuid as primary key, merge main branches

🔧 Others

  • Update star history link, wrong url

📘 Docs: https://mcp.ifuryst.com
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

  • [Snyk] Upgrade zod from 3.24.4 to 3.25.28 by @iFurySt in #139
  • [Snyk] Upgrade i18next from 25.1.2 to 25.2.1 by @iFurySt in #141
  • [Snyk] Upgrade react-router-dom from 6.30.0 to 6.30.1 by @iFurySt in #143
  • 添加Session和Messages表主键,并且加上创建表语句 by @KamToHung in #132
  • [Snyk] Upgrade react-i18next from 15.5.1 to 15.5.2 by @iFurySt in #142
  • [Snyk] Upgrade @modelcontextprotocol/sdk from 1.11.1 to 1.12.0 by @iFurySt in #140
  • fix: SSE stream error: context canceled by @zhuozl in #144
  • feat: integrate tool fetching and calling with SSE transport by @zhuozl in #145

New Contributors

Full Changelog: v0.7.0...v0.7.1

v0.7.0

11 Jun 15:27
ecf8a8f

Choose a tag to compare

📦 Unla v0.7.0

Turn your MCP Servers and APIs into MCP endpoints — effortlessly, without modifying the original code.

🔧 其他

  • 组织重命名:从 mcp-ecosystem 改为 amoylab
  • 仓库重命名:从 mcp-gateway 改为 unla
  • 更新 Helm chart 发布触发条件

📘 文档:https://mcp.ifuryst.com
🐙 源码:https://github.com/amoylab/unla
🐳 Docker 镜像:ghcr.io/amoylab/unla/allinone:latest
💬 加入我们的 Discord 社区参与讨论:https://discord.gg/udf69cT9TY
🔗 扫描下方二维码加入社区微信群,备注:unla
微信群二维码


感谢所有参与和关注该项目的开发者与用户 💖


🔧 Others

  • Organization renamed: from mcp-ecosystem to amoylab
  • Repository renamed: from mcp-gateway to unla
  • Update Helm chart publishing trigger conditions

📘 Docs: https://mcp.ifuryst.com
🐙 Source: https://github.com/amoylab/unla
🐳 Docker Image: ghcr.io/amoylab/unla/allinone:latest
💬 Join our Discord community for discussions: https://discord.gg/udf69cT9TY
🔗 Scan the QR code below to join WeChat community group, note: unla
WeChat QR Code


Thanks to all contributors and early users! 💖

What's Changed

  • refactor: Rename mcp-ecosystem to amoylab, mcp-gateway to unla by @iFurySt in #135

Full Changelog: v0.6.3...v0.7.0