mcpField
P
pronounce

pronounce

本地服务
pronounce.renlab.ai开发工具478 周前更新

关于 pronounce

pronounce 是一个命令行 MCP 服务,收录 1,903 条开发者常用术语的发音,多数条目附有可引用的来源。适合工程师和需要朗读技术名词的 AI 助手,其特点是用语音而非音标回答发音问题。

主要功能

  1. 01收录 1,903 条开发术语发音
  2. 02条目带有置信度标签
  3. 03多数条目附可引用来源
  4. 04支持多种发音并播放备选读法
  5. 05依赖系统 TTS,无需 npm 运行时

适用场景

  1. 01查询 kubectl、nginx 等术语的读法
  2. 02让 AI 助手以语音回答发音问题
  3. 03在文档拉取请求中生成发音词表

MCP 相关

该项目是一个 MCP 服务,向支持 MCP 的客户端提供发音查询能力,让 AI 助手以音频方式回答术语读法。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"anzy-renlab-ai-pronounce": {
"command": "uvx",
"args": [
"pronounce-mcp"
]
}
}
}
启动命令uvx pronounce-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypipronounce-mcp0.1.2
ocighcr.io/anzy-renlab-ai/pronounce-mcp:0.1.2

工具

3

收录的工具列表 · 更新于 2 周前

参数类型必填说明
wordstring是

详细介绍

🔊 say-it · Pronounce

别再把它念成“kub-cuttle”了。一条 Bash 命令就能读出 1,903 个开发者行话名称的发音——大多数都附有引用来源。

GitHub 星标 在线网站 许可证 词条 从 VS Code Marketplace 安装 从 Open VSX 安装 Pronounce 文档 GitHub Action

🌐 pronounce.renlab.ai · 🇨🇳 中文 · 📖 浏览 · 🎯 测验 · 🎤 语音搜索 · 🔌 MCP 服务 · ⚙️ GitHub Action

say-it kubectl — 终端演示

▶ 观看 47 秒宣传片(含语音) · 🎯 试试测验 · 🎤 语音搜索


🚀 30 秒上手

git clone https://github.com/anzy-renlab-ai/pronounce.git
cd pronounce && ./install.sh
say-it kubectl

say-it CLI 演示 — kubectl、YAML、TOML、Ghostty

就这么简单。现在试试 say-it GIF、say-it nginx、say-it Pydantic、say-it --why JSON,或者运行 say-it quiz 挑战 10 道题。Linux 用户:安装 espeak-ng(sudo apt install espeak-ng),CLI 就能直接使用。Windows:可在 WSL 或 git-bash + PowerShell 中使用同一 CLI。也可以跳过安装,直接在浏览器中访问 pronounce.renlab.ai。

⭐ 如果 say-it kubectl 帮你避免了一次站会上的尴尬时刻——为仓库点个星。这会鼓励更多开发者贡献他们常读错的项目名称。

星标历史


🏆 开发者发音排行榜

1,903 个词条——其中 1,283 个附有可引用来源——108 个由创建者亲自定音,**175 个仍有待社区争论。**其中最有名的几个:

✅ 已尘埃落定——创作者亲自定调
单词正确读法是…………而不是定调者
GIF“jif”“ghif”(硬 G 的发音)Steve Wilhite(创作者),《纽约时报》2013 年
nginx“engine X”“n-jinx”NGINX 官方
YAML“yam-ul”“yammel”yaml.org
GNU“guh-NEW”(硬 g)“noo”GNU Project
LaTeX“lay-tek”“lay-teks”Lamport / LaTeX project
TOML与 “knoll” 押韵“tom-el”Tom Preston-Werner(创作者)
Tcl“tickle”“T-C-L”John Ousterhout(创作者)
awk“auk”(像这种鸟的名字)“A-W-K”Aho / Weinberger / Kernighan
⚔️ 仍有争议——两种读法都在广泛使用
单词阵营 A阵营 B
kubectl“koob-control”“cube-cuddle”
SQL“sequel”“S-Q-L”
JSON“JAY-son”“JEE-son”
GUI“gooey”“G-U-I”
JWT“jot”(依据 RFC 7519)“J-W-T”

每个单元格都有 IPA 和音频;其中 1,283 个还附有可引用来源。浏览全部 1,903 条词目 →

不同意其中某个读法?这正是重点——提交 PR,附上你的读法和来源。争论本身就是这份数据集。


你实际会得到什么

  • 1,903 条词目——其中 1,283 条附有可引用来源。 每条都标注置信度(creator-clarified / community-consensus / contested),并在有来源时附上可引用的 URL(我们宁可留空,也不编造来源)。Wilhite 在 2013 年 Webby Awards 上说 GIF 读作 “jif”。Crockford 说 JSON 读作 “JAY-son”(RailsConf 2009)。RFC 7519 说 JWT 读作 “jot”。词典都注明了这些来源。
  • 多读法音频。 对于确实存在争议的词——GIF、SQL、GUI、char、regex——CLI 会在主要读法后接上其他读法,并用语音说出 “or:”,让你听见争论,而不必盯着终端看。熟悉之后,可用 --solo 跳过后续读法。
  • 一个 Bash CLI,无需 npm 运行时。 无需 sudo、框架初始化,也没有意外。它会检测 macOS 的 say、Linux 的 espeak-ng/espeak,或 Windows PowerShell 的 System.Speech。仓库还附带一个 Claude Code 技能和一个 MCP 服务,让 AI 回答“X 怎么读?”时提供音频,而不是猜测发音。
  • 适用于文档的 GitHub Action。 扫描拉取请求所更改的 Markdown,并在作业摘要中生成附有来源的发音词汇表——无需 API 密钥、安装依赖或发起网络请求。
  • 网站提供规范音频。 网站会优先播放每个已提交的规范 MP3;只有播放失败时,才会回退到 Web Speech。
$ say-it --why JSON
word              JSON
ipa               /ˈdʒeɪsən/
respelling_us     jay son
confidence        contested
source            Wikipedia § Pronunciation
url               https://en.wikipedia.org/wiki/JSON#Pronunciation

为什么不直接用 Google 搜索?

因为 Google 会给你 47 条 Reddit 争论,以及一个需要取消静音才能听的 YouTube 视频。IPA 给你的是 /ˈkuːb kənˌtroʊl/——一种参考,而不是老师。

你不需要音标转写。你需要听见这个词。听两遍,也许三遍。就这么简单。

say-it 提供由社区维护的词典,收录工程师实际使用的读法,涵盖那些让所有人都容易读错的名称;它还会将预期读法的拼写输入操作系统的文本转语音引擎,因此 kubectl 会读成 koob-control,而不是电脑根据字母猜出的读法。

著名时刻

有些发音不是见仁见智——创作者已经给出了定论。词典会列出每条依据:

单词读法来源
GIF“jif”(创作者亲口确认)Steve Wilhite,2013 年 Webby Awards
JSON“jay-son”Douglas Crockford,RailsConf 2009
GNU“g-noo”(硬 G,单音节)GNU Project 官方说明
Linux“LIN-ux”(短 i,弱读音)Linus Torvalds 本人
LaTeX“lay-tek”(或 “lah-tek”)Leslie Lamport,官方说明
Django“JANG-go”(D 不发音)Django 常见问题
Vue“view”(单音节)Evan You,Vue 文档
Vite“veet”(法语中的 quick)Vite 文档
Knative“KAY-native”(K 发音)Knative 文档
etcd“et-cee-dee”(et-cetera-distributed)etcd 常见问题

当条目包含 source_url 时,运行 say-it --why <word> 可查看引用;没有来源的条目会留空,而不会编造 URL。

安装

brew install anzy-renlab-ai/tap/say-it   # Homebrew on macOS

或者使用上方的“30 秒快速体验”代码块。./install.sh 会安装:

  • CLI 到 ~/.local/bin/say-it,
  • 发音词典到 ~/.local/share/say-it/pronunciations.tsv,
  • 如果你使用 Claude Code,还会安装 pronounce-word 技能到 ~/.claude/skills/pronounce-word/,这样你向 AI 提问“X 怎么读?”时,它会用音频而不是 IPA 作答,
  • 如果 Codex CLI 和 Kiro 对应的目录存在,也会将同一技能安装到 ~/.agents/skills/ 和 ~/.kiro/skills/——它采用跨工具的 Agent Skills 标准。

确保 ~/.local/bin 位于 $PATH 中。Linux 也支持——安装 espeak-ng(sudo apt install espeak-ng / brew install espeak-ng)。Windows:使用 WSL 或 git-bash + PowerShell。也可以完全跳过安装,直接使用浏览器版本 pronounce.renlab.ai。

用法

say-it kubectl                    # primary × 3, then "or: <alt>" for each alternate
say-it --solo kubectl             # primary only — silence the "or:" tail
say-it --alt GIF                  # focus on the first alternate
say-it --alt 2 GUI                # focus on the Nth alternate (1-indexed)
say-it --all SQL                  # primary AND every alternate, each repeated
say-it --no-dict kubectl          # bypass the dictionary entirely
say-it --why JSON                 # show IPA, source URL, category, confidence
say-it list                       # every word in the dictionary
say-it search redis               # grep the dictionary (case-insensitive)

say-it -n 5 Pydantic              # 5 repetitions instead of 3
say-it -r 110 Knative             # slower (110 wpm; default is 130)
say-it -o /tmp/word.aiff Postgres # save to file instead of playing
say-it --list                     # all macOS voices

macOS 默认语音为 Samantha(通用美式英语);使用 -v <voice> 可选择其他 macOS 语音。Linux 和 Windows 使用各自检测到的后端提供的英语语音。词典仅收录通用美式英语发音,这是有意为之。

Claude Code 集成

使用 GitHub CLI 直接安装跨工具 Agent Skill:

gh skill install anzy-renlab-ai/pronounce pronounce-word
You:    kubectl 怎么读?
Claude: 🔊 (plays "koob-control" three times)
        /ˈkuːb kənˌtroʊl/ — "KOOB-control". Kelsey Hightower says it
        this way (KubeCon talk). "Cube-cuddle" is an alternate —
        try `say-it --alt kubectl` to hear it.

安装后,pronounce-word 技能会在以下情况下自动触发:

  • X 怎么读 / X 怎么发音 / 读一下 X
  • how do you pronounce X / pronounce X / how do you say X

你的 AI 会用声音作答,而不只是猜测音标。技能文件:skills/pronounce-word/SKILL.md。

不是用 Claude? 同一技能也可安装到 Codex CLI(codex plugin marketplace add anzy-renlab-ai/pronounce)和 Kiro(~/.kiro/skills/);MCP 服务则支持 Claude Desktop、Cursor、Continue、Zed、Cline 等工具——完整支持列表见 integrations/。

添加到 Kiro

GitHub Action — 文档发音指南

为每个文档拉取请求添加发音词汇表:

- uses: actions/[email protected]
  with:
    fetch-depth: 0
- id: pronounce
  uses: anzy-renlab-ai/[email protected]

Pronounce Docs 会扫描有更改的 Markdown/MDX,并生成一个表格,其中包含每个匹配词条、其 IPA、通俗易懂的英语拼读、音频页面,以及可用时的创建者或官方来源。它基于仓库快照在本地运行:无需令牌、API 密钥、遥测、安装软件包或网络请求。请参阅完整的设置、输入和输出说明。

VS Code 扩展

从 VS Code Marketplace 安装 从 Open VSX 安装

Pronounce 演示 — kubectl、YAML、Ghostty、wagmi

将鼠标悬停在任意文件中的任何技术词汇上,即可查看 IPA 并收听发音。使用与 CLI 相同的 1,903 词条词典,在构建时打包为 JSON(运行时解析成本为零)。

# Cursor / VSCodium / Zed / Gitpod / Theia / code-server (Open VSX)
code --install-extension sayit.pronounce
# or the listing: https://open-vsx.org/extension/sayit/pronounce

现已上线 Microsoft Marketplace:在 VS Code 中运行 ext install sayit.pronounce。请参阅 Marketplace 页面。

  • 将鼠标悬停在 kubectl、YAML、Ghostty、wagmi 等词汇上 → 显示包含 IPA、🔊 播放和 ★ 收藏链接的工具提示。
  • ⌘⇧' — 朗读所选内容。
  • 状态栏中的 🔊 sayit — 点击即可朗读当前所选内容。
  • 欢迎引导 — 首次安装时提供 4 步入门引导。
  • Pronounce: Search dictionary… — 模糊搜索全部 1,903 个词条。

源代码:integrations/vscode/。自 v0.3 起支持跨平台 — macOS 使用 say,Linux 使用 espeak-ng,Windows 使用 PowerShell。

Chrome / Edge / Brave 扩展

点击任意网页上的技术词汇 → 弹出窗口显示 IPA 和音频。使用相同的 1,903 词条词典。扩展通过 Web Speech 朗读;pronounce.renlab.ai 会优先播放已提交的 MP3 语料,仅在后备情况下使用 Web Speech。目前仅支持手动加载(尚未上架 Chrome Web Store)。

下载 pronounce-chrome-0.3.1.zip → 解压 → 打开 chrome://extensions/ → 开启开发者模式 → 加载已解压的扩展程序。

源代码:integrations/chrome/。

词典的工作原理

data/pronunciations.tsv 是唯一事实来源 — 以制表符分隔,包含 1,903 个词条,涵盖:

  • 云 / DevOps: kubectl、nginx、Kubernetes、helm、Istio、Envoy、Prometheus、Grafana、Terraform、Argo、Knative、etcd、containerd、runc、Podman,……
  • 语言 / 框架: Django、Vue、Vite、Pydantic、Bun、Deno、Hugo、Hono、Caddy、Svelte、Astro、Pinia,……
  • 数据库: PostgreSQL、Postgres、SQLite、MySQL、MongoDB、Cassandra、Redis、Ceph、ScyllaDB、ClickHouse、DuckDB,……
  • 计算机科学术语 / 首字母缩略词: GIF、JSON、SQL、GUI、GNU、char、regex、sudo、tmux、chmod、WYSIWYG、ASCII、enum、NaN、SaaS、PaaS,……
  • 发行版 / 工具: Linux、Debian、Ubuntu、Arch、Nix、LaTeX、TeX、emacs、zsh,……

每个词条有 10 列:word | ipa | respelling_us | alt_ipa | alt_respelling_us | source_url | source_label | category | confidence | notes。respelling_us 是类似通俗英语的拼读文本,会传递给检测到的操作系统 TTS 后端,从而按预期读法发音,而不是让引擎根据项目名称自行猜测。

本地覆盖:放置 ~/.config/say-it/pronunciations.local.tsv,其中的词条将优先生效。

当前可用功能

  • ✅ macOS — 内置 say。
  • ✅ Linux — espeak-ng(优先)或 espeak。
  • ✅ Windows — 在 Git Bash/MSYS2/Cygwin 下,通过同一个 Bash CLI 使用 PowerShell System.Speech。
  • ✅ 共 1,903 条词条;其中 1,283 条附有可引用来源,其余标注了可信度,不会捏造引用。
  • ✅ 可听辨多种读法 — 有争议的词会依次读出不同读法,并加上“or:”。
  • ✅ --alt [N]、--all、--solo、--why、--json、--md、--no-dict、list、search、quiz、repl、stream、doctor、export、benchmark、badge、cheatsheet。
  • ✅ Claude Code skill + MCP 服务,用于向 AI 提问发音问题。
  • ✅ GitHub Action — 为 Markdown 拉取请求生成附有来源的发音词汇表。
  • ✅ 浏览器 PWA — 可安装、支持离线、即时搜索、语音麦克风搜索和互动测验。
  • ✅ 编辑器集成 — Raycast、Alfred、VS Code、Cursor、Codex、Kiro、Continue。
  • ✅ 🌐 在线网站 — pronounce.renlab.ai(可浏览 1,903 条含音频的词条;其中 1,283 条附有来源)+ /zh(中文首页)。

即将推出

架构详情请参阅 DESIGN.md。

  • ☁️ 云端 TTS(可选启用 ElevenLabs / OpenAI),用于处理原生 TTS 仍会读错的名称。
  • 📚 Anki 导出,用于词汇练习。
  • 🌗 v2 首页浅色主题(已在单词页/SEO 页面上线)。

参与贡献

我们最需要以下两方面的帮助:

  1. 发音词条。 提交 PR,在 data/pronunciations.tsv 中添加一行。必填列:word、ipa、respelling_us。强烈建议提供:source_url(创作者访谈、会议演讲、官方 FAQ——任何可核实的来源都可以)。欢迎添加有争议的读法;请将另一种读法放在 alt_* 列中,我们会接入 --alt。
  2. 后端质量。 macOS(say)是黄金标准;Linux(espeak-ng)和 Windows(PowerShell)后端已提供,但仅尽力支持——欢迎帮助我们缩小差距。请参阅 DESIGN.md §Backends。

保持精简。尽可能不依赖外部依赖项。默认设置要有明确取舍(3 次重复、GenAm、Samantha 音色)。

⭐ 支持 — 从点亮星标开始

词典免费,采用 MIT 许可证。你能做的最有影响力的一件事,就是为仓库点亮星标——这能吸引更多贡献者、更多 PR,以及更多经创作者确认的词条。

如果它确实帮你减轻了站会发言的压力,也可以选择:

捐款将用于支付托管费用(Vercel/Cloudflare/Open VSX)、域名续费、宣传视频的 MiniMax 旁白额度,以及为新词条寻找创作者引用来源所需的时间。

贡献者

贡献者

每条词条、每次来源补充和每次 skill 修复都很重要。提交 PR,让你的头像也出现在这里。

许可证

MIT — 请参阅 LICENSE。


IPA 是参考。音频是老师。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。