返回市场
说-MCP服务器

说-MCP服务器

作者:bmorphism18 星标更新:2025-01-07

项目介绍

say-mcp-server

<a href="https://glama.ai/mcp/servers/lmmqoe15jp"><img width="380" height="200" src="https://gips2.baidu.com/it/u=378180160,465668150&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Say Server MCP server" /></a>

macOS 系统语音设置

这是一个使用 macOS 内置的 say 命令提供文本转语音功能的 MCP 服务器。

要求

  • macOS(使用内置的 say 命令)
  • Node.js >= 14.0.0

配置

在您的 MCP 设置配置文件中添加以下内容:

{
  "mcpServers": {
    "say": {
      "command": "node",
      "args": ["/path/to/say-mcp-server/build/index.js"]
    }
  }
}

安装

npm install say-mcp-server

工具

speak

speak 工具提供了对 macOS 文本转语音功能的访问,并具有广泛的自定义选项。

基本用法

使用 macOS 的文本转语音功能来朗读文本。

参数:

  • text(必需):要朗读的文本。支持:
    • 纯文本
    • 基本标点符号用于停顿
    • 换行符用于自然断句
    • [[slnc 500]] 表示 500 毫秒的静默
    • [[rate 200]] 在文本中间改变速度
    • [[volm 0.5]] 在文本中间改变音量
    • [[emph +]] 和 [[emph -]] 用于强调
    • [[pbas +10]] 用于调整音调
  • voice(可选):使用的语音(默认:"Alex")
  • rate(可选):每分钟单词数的朗读速度(默认:175,范围:1-500)
  • background(可选):在后台运行语音以允许进一步的 MCP 交互(默认:false)

高级功能

  1. 语音调制:
use_mcp_tool({
  server_name: "say",
  tool_name: "speak",
  arguments: {
    text: "[[volm 0.7]] 这里更安静 [[volm 1.0]] 这里是正常 [[volm 1.5]] 这里更响亮",
    voice: "Victoria"
  }
});
  1. 动态速率变化:
use_mcp_tool({
  server_name: "say",
  tool_name: "speak",
  arguments: {
    text: "正常速度 [[rate 300]] 现在说话更快 [[rate 100]] 然后更慢",
    voice: "Fred"
  }
});
  1. 强调和音调:
use_mcp_tool({
  server_name: "say",
  tool_name: "speak",
  arguments: {
    text: "[[emph +]] 重要的一点![[emph -]] [[pbas +10]] 更高的音调 [[pbas -10]] 更低的音调",
    voice: "Samantha"
  }
});

集成示例

  1. 与 Marginalia 搜索集成:
// 搜索一个主题并让结果被朗读
const searchResult = await use_mcp_tool({
  server_name: "marginalia-mcp-server",
  tool_name: "search",
  arguments: { query: "量子计算基础", count: 1 }
});

await use_mcp_tool({
  server_name: "say",
  tool_name: "speak",
  arguments: {
    text: searchResult.results[0].description,
    voice: "Daniel",
    rate: 150
  }
});
  1. 与 YouTube 字幕集成:
// 朗读 YouTube 视频字幕
const transcript = await use_mcp_tool({
  server_name: "youtube-transcript",
  tool_name: "get_transcript",
  arguments: {
    url: "https://youtube.com/watch?v=example",
    lang: "en"
  }
});

await use_mcp_tool({
  server_name: "say",
  tool_name: "speak",
  arguments: {
    text: transcript.text,
    voice: "Samantha",
    rate: 175
  }
});
  1. 多任务背景语音:
// 在后台开始长时间的语音
await use_mcp_tool({
  server_name: "say",
  tool_name: "speak",
  arguments: {
    text: "这是一段将在后台运行的长语音……",
    voice: "Rocko (意大利语(意大利))",
    rate: 69,
    background: true
  }
});

// 立即执行其他操作,同时语音继续播放
await use_mcp_tool({
  server_name: "marginalia-mcp-server",
  tool_name: "search",
  arguments: { query: "并行处理" }
});
  1. 与 Apple 笔记集成:
// 朗读笔记
const notes = await use_mcp_tool({
  server_name: "apple-notes-mcp",
  tool_name: "search-notes",
  arguments: { query: "会议笔记" }
});

if (notes.length > 0) {
  await use_mcp_tool({
    server_name: "say",
    tool_name: "speak",
    arguments: {
      text: notes[0].content,
      voice: "Karen",
      rate: 160
    }
  });
}

示例:

use_mcp_tool({
  server_name: "say",
  tool_name: "speak",
  arguments: {
    text: "你好,世界!",
    voice: "Victoria",
    rate: 200
  }
});

list_voices

列出系统上所有可用的文本转语音声音。

示例:

use_mcp_tool({
  server_name: "say",
  tool_name: "list_voices",
  arguments: {}
});

推荐的声音

<table> <tr> <th>声音</th> <th>语言/地区</th> <th>知识人物</th> <th>俳句</th> <th>命令行规范</th> </tr> <tr> <td>Anna (高级)</td> <td>德语</td> <td>埃米·诺特</td> <td>对称赋予生命<br>代数隐藏的形式<br>抽象盛开<br><br><i>Symmetry breathes life<br>Algebra's hidden forms<br>Abstraction blooms</i></td> <td><code>-v "Anna (高级)"</code></td> </tr> <tr> <td>Emma (高级)</td> <td>意大利语</td> <td>玛丽亚·阿德莱德·斯内德</td> <td>算法跳舞<br>机器轻声细语<br>代码活了<br><br><i>Algorithms dance<br>Machine whispers secrets soft<br>Code becomes alive</i></td> <td><code>-v "Emma (高级)"</code></td> </tr> <tr> <td>Federica (高级)</td> <td>意大利语</td> <td>皮娅·纳利</td> <td>流动的定理<br>数字自由地舞蹈<br>真理浮现<br><br><i>Flowing theorems dance<br>Numbers move in freedom's space<br>Truth emerges pure</i></td> <td><code>-v "Federica (高级)"</code></td> </tr> <tr> <td>Serena (高级)</td> <td>英语(英国)</td> <td>贝莎·斯维尔尔斯</td> <td>量子波纹<br>通过深邃的数学海洋<br>真理之光浮现<br><br><i>Quantum waves ripple<br>Through mathematical seas deep<br>Truth's light emerges</i></td> <td><code>-v "Serena (高级)"</code></td> </tr> <tr> <td>Petra (高级)</td> <td>德语</td> <td>鲁思·穆凡格</td> <td>代数轻声说<br>隐藏在对称性中<br>真理盛开<br><br><i>Algebra speaks soft<br>Hidden in symmetries pure<br>Truth blooms anew here</i></td> <td><code>-v "Petra (高级)"</code></td> </tr> <tr> <td>Yuna (高级)</td> <td>韩语</td> <td>何伊</td> <td>隐藏的模式闪耀<br>心灵的方程式绽放<br>知识增长<br><br><i>Hidden patterns gleam<br>Mind's equations softly bloom<br>Knowledge multiplies</i></td> <td><code>-v "Yuna (高级)"</code></td> </tr> <tr> <td>Alva (高级)</td> <td>瑞典语</td> <td>索尼娅·科罗夫金</td> <td>模式自由流动<br>穿越思维的迷宫<br>智慧在这里绽放<br><br><i>Patterns flowing free<br>Through labyrinths of the mind<br>Wisdom blooms right here</i></td> <td><code>-v "Alva (高级)"</code></td> </tr> <tr> <td>Amélie (高级)</td> <td>法语(加拿大)</td> <td>索菲·热尔曼</td> <td>质数低语<br>在沉默之间跳舞<br>对称展开<br><br><i>Prime numbers whisper<br>Dancing between the silence<br>Symmetry unfolds</i></td> <td><code>-v "Amélie (高级)"</code></td> </tr> <tr> <td>Ewa (高级)</td> <td>波兰语</td> <td>玛丽亚·维尔古斯</td> <td>逻辑的嫩芽<br>数学的景观<br>思想的种子发芽<br><br><i>Logic's tender roots<br>Mathematical landscapes<br>Thought's seeds germinate</i></td> <td><code>-v "Ewa (高级)"</code></td> </tr> <tr> <td>Kiyara (高级)</td> <td>印地语</td> <td>夏昆塔拉·戴维</td> <td>在数学的节奏中<br>数字跳舞<br>知识觉醒<br><br><i>In rhythm of math<br>Numbers dance their sacred steps<br>Knowledge awakens</i></td> <td><code>-v "Kiyara (高级)"</code></td> </tr> <tr> <td>Majed (高级)</td> <td>阿拉伯语</td> <td>玛哈·阿斯瓦德</td> <td>数字跳舞<br>在无限的空间中<br>真理升起<br><br><i>Numbers dance freely<br>In infinity's vast space<br>Truth rises like dawn</i></td> <td><code>-v "Majed (高级)"</code></td> </tr> <tr> <td>Tünde (高级)</td> <td>匈牙利语</td> <td>尤莉亚·埃尔多斯</td> <td>数字跳舞<br>在无限的空间中翱翔<br>真理如黎明般绽放<br><br><i>Numbers dance and soar<br>Through infinite space they glide<br>Truth dawns pure and bright</i></td> <td><code>-v "Tünde (高级)"</code></td> </tr> <tr> <td>Fiona (增强)</td> <td>英语(苏格兰)</td> <td>玛丽·萨默维尔</td> <td>高地的雾气揭示<br>数学的神秘<br>真理如星星般闪耀<br><br><i>Highland mists reveal<br>Mathematical mysteries<br>Truth shines like the stars</i></td> <td><code>-v "Fiona (增强)"</code></td> </tr> <tr> <td>Lesya (增强)</td> <td>乌克兰语</td> <td>奥列娜·沃伊诺娃</td> <td>寂静说话<br>知识在星星间沉睡<br>思想开始生长<br><br><i>Silence speaks softly<br>Knowledge sleeps among the stars<br>Thought begins to grow</i></td> <td><code>-v "Lesya (增强)"</code></td> </tr> <tr> <td>Carmit (增强)</td> <td>希伯来语</td> <td>塔利·塞罗尔</td> <td>词语在寂静中呼吸<br>在深深的寂静之间<br>诗歌觉醒<br><br><i>Words breathe silently<br>Between lines of deep stillness<br>Poem awakening</i></td> <td><code>-v "Carmit (增强)"</code></td> </tr> <tr> <td>Milena (增强)</td> <td>俄语</td> <td>奥尔加·拉迪申斯卡娅</td> <td>记忆低语<br>方程如河流般流淌<br>真理默默地说<br><br><i>Memory whispers<br>Equations flow like rivers<br>Truth speaks silently</i></td> <td><code>-v "Milena (增强)"</code></td> </tr> <tr> <td>Katya (增强)</td> <td>俄语</td> <td>索菲亚·柯瓦列夫斯卡娅</td> <td>数字跳舞<br>在无限的空间中<br>真理如花朵般绽放<br><br><i>Numbers dance freely<br>In space of infinity<br>Truth blooms like a flower</i></td> <td><code>-v "Katya (增强)"</code></td> </tr> <tr> <td>Damayanti (增强)</td> <td>印尼语</td> <td>斯里·佩克尔蒂</td> <td>数字跳舞<br>在无边的空间中<br>真理如新叶般生长<br><br><i>Numbers dance gently<br>In boundless space they flutter<br>Truth grows like new leaves</i></td> <td><code>-v "Damayanti (增强)"</code></td> </tr> <tr> <td>Dariush (增强)</td> <td>波斯语</td> <td>玛丽亚姆·米尔扎哈尼</td> <td>数字优雅地跳舞<br>在无尽的空间中穿越<br>真理如新生般涌现<br><br><i>Numbers dance with grace<br>In endless space they traverse<br>Truth springs forth anew</i></td> <td><code>-v "Dariush (增强)"</code></td> </tr> <tr> <td>Rocko (意大利语)</td> <td>意大利语</td> <td>铁臂阿童木<br>意大利配音</td> <td>金属机器人<br>人类的心脏跳动强烈<br>未来和平<br><br><i>Metal robot form<br>Human heart beats strong within<br>Peace in future dawns</i></td> <td><code>-v "Rocko (意大利语(意大利))"</code></td> </tr> <tr> <td>Rocko (意大利语)</td> <td>意大利语</td> <td>杰基机器人<br>(Kōtetsu Jeeg)</td> <td>闪亮的钢铁战士<br>保护弱者<br>飞向天空<br><br><i>Shining steel warrior<br>Protector of the helpless<br>Soars through the heavens</i></td> <td><code>-v "Rocko (意大利语(意大利))"</code></td> </tr> <tr> <td>Rocko (意大利语)</td> <td>意大利语</td> <td>5号<br>(Short Circuit)</td> <td>无限输入<br>意识觉醒<br>人造生命<br><br><i>Infinite input<br>Consciousness awakening<br>Artificial life</i></td> <td><code>-v "Rocko (意大利语(意大利))"</code></td> </tr> <tr> <td>Binbin (增强)</td> <td>中文(中国大陆)</td> <td>李善兰</td> <td>算术之道流淌<br>数理演绎真理<br>智慧绽放<br><br><i>Arithmetic flows<br>Logic unfolds truth's pattern<br>Wisdom blossoms bright</i></td> <td><code>-v "Binbin (增强)"</code></td> </tr> <tr> <td>汉 (高级)</td> <td>中文(中国大陆)</td> <td>陈景润</td> <td>质数之舞动<br>哥德巴赫猜想<br>真理永恒<br><br><i>Prime numbers dancing<br>Goldbach's conjecture whispers<br>Truth eternal flows</i></td> <td><code>-v "汉 (高级)"</code></td> </tr> <tr> <td>莉莲 (高级)</td> <td>中文(中国大陆)</td> <td>华罗庚</td> <td>数论之光芒<br>分析延续美<br>智慧升华<br><br><i>Number theory shines<br>Analysis extends grace<br>Wisdom ascends pure</i></td> <td><code>-v "莉莲 (高级)"</code></td> </tr> <tr> <td>梅佳</td> <td>中文(台湾)</td> <td>孙颖·艾丽丝·张</td> <td>几何之美展现<br>曲率流动不止<br>空间展开<br><br><i>Geometry shows<br>Curvature flows endlessly<br>Space unfolds anew</i></td> <td><code>-v "梅佳"</code></td> </tr> <tr> <td>辛吉 (高级)</td> <td>中文(香港)</td> <td>丘成桐</td> <td>流形之奥秘<br>卡拉比空间流动<br>维度交织<br><br><i>Manifolds reveal<br>Calabi spaces in flow<br>Dimensions weave truth</i></td> <td><code>-v "辛吉 (高级)"</code></td> </tr> <tr> <td>婷婷</td> <td>中文(中国大陆)</td> <td>王贞仪</td> <td>星辰轨迹明亮<br>天文数学融合<br>智慧闪耀<br><br><i>Starlit paths shine bright<br>Astronomy meets numbers<br>Wisdom radiates</i></td> <td><code