Mu – 代理工具:一个统一的 MCP 启用的 AI 代理工具包

Mu 通过一个 MCP 端点为代理提供统一的真实工具集

Mu 是一个开源(AGPL‑3.0)项目,它将数十种功能——网络搜索、新闻聚合、邮件、存储、日历、联系人、地点、天气、视频、图像、编写、应用、信仰相关工具和钱包——封装在单一的 Model Context Protocol(MCP)服务器后面。代理只需连接一次到 https://micro.mu/mcp 即可获得所有这些工具的访问权限,而无需为每项服务单独进行集成。

代理如何连接到 Mu

MCP 服务器在客户端配置中不需要静态 API 密钥。首次调用返回一个 401,指向实例的授权服务器;客户端随后引导用户完成登录并保留令牌。这符合 MCP 授权规范,该规范已得到 Claude Desktop 和 Cursor 的支持。对于未实现 MCP 授权的客户端,可以在 /token 生成个人访问令牌,并作为 Authorization: Bearer 发送。示例请求:

curl -X POST https://micro.mu/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

消耗付费资源的调用(例如模型调用或第三方 API)会从用户余额中扣除积分,可通过 USDC 充值。

可用工具目录

Mu 按服务领域对其工具进行分组。每个工具都是由 Mu 实例运行的真实功能,而不是对另一提供者 API 的薄包装。

  • 网络: web_search, web_fetch
  • 新闻: news_list, news_read, news_search(RSS 聚合,完整文章)
  • 市场: markets_list(加密货币、期货、商品、货币)
  • 天气: weather_forecast
  • 地点: places_search, places_nearby, places_eta
  • 视频: video_list, video_search
  • 邮件: mail_inbox, mail_send, mail_address(带 DKIM 的真实 SMTP 服务器,每个代理一个地址)
  • 存储: db_create, db_get, db_list, db_update, db_delete(每个调用者的记录)
  • 文件: files_put, files_get, files_list, files_share
  • 日历: events_create, events_free, events_list
  • 联系人: contacts_find, contacts_add, contacts_list
  • 自行搜索: index_search
  • 图像: images_generate, images_search
  • 写作: blog_*, social_*, stream_*
  • 应用: apps_build, apps_run, apps_edit
  • 信仰: islam_today, islam_prayer, islam_qibla, quran, hadith
  • 金钱: wallet_balance
  • 代理: agent, chat(向整个系统提问)

每个工具也都作为 mu CLI 的子命令公开,并且基于账户范围的工具需要已登录的调用者。

为什么这些工具是真实的:内部服务和 Go Micro 注册表

每个功能都作为具有类型处理器的 Go 服务实现,并在进程内的 Go Micro 注册表后注册。注册表是单一的真实来源;声明一个服务会使其立即可用于:

  • 通过 MCP 的代理位于 /mcp
  • 内置代理可以将该服务作为工具调用
  • 通过 /agent/new 的工具选择器可以将该服务作为工具调用
  • 通过 /agent/new 的工具选择器的自定义代理
  • mu CLI(每个工具成为一个子命令)
  • 使用 Mu SDK 构建的应用,通过 mu.service(name, method, args)

因为服务只需声明一次,扩展 Mu 只需添加一个新的服务元素,而不是为 N 个服务分别进行集成。

自托管和部署

Mu 可以作为单个 Go 二进制文件运行。提供的安装脚本、Docker Compose 或源码编译都会生成相同的二进制文件。首次运行设置会引导操作员创建管理员账户并选择 AI 提供者(Claude、Atlas Cloud 或本地 Ollama / OpenAI 兼容端点)。设置完成后,可以在浏览器的 /admin/env 中配置 YouTube、Brave 搜索、天气、mail/DKIM、Google 登录等额外密钥。

CLI 和网页应用

相同的二进制文件同时提供 MCP 服务器和位于 micro.mu 的网页界面。网页应用为每项服务渲染卡片(标题、价格、天气、未读邮件),并包含一个内联代理,可以对显示的信息采取行动。CLI 使用示例:

mu news_list
mu news_search "ai safety"
mu web_search "claude code"
mu agent "what is the btc price?"
mu weather_forecast --lat 51.5 --lon -0.12
mu wallet
mu help

登录可以通过 mu login(在浏览器中打开 /token)完成,或者通过设置环境变量 MU_TOKEN 实现。

集成:Discord 和 Telegram

Mu 为 Discord 和 Telegram 提供类似机器人的命令,使用户能够在聊天中与代理交互。Discord 命令包括 /agent/news/markets/weather/mail/social/blog/video/search/apps/balance/usage。Telegram 提供 /agent/ask/news/markets/weather/usage。设置详情见安装文档。

来自 Hacker News 的社区反馈

Show HN 帖子引发了各种反应:

  • 对实用性的怀疑:

Sources