B
bmorphism/say-mcp-server
MCP server for macOS text-to-speech functionality
在 GitHub 查看 ↗链接已于 2026-11-12 核查 · HTTP 200 · 打开的是厂商自己的官网
我们没有从该仓库取到可核对的安装命令,也没有公开的远端端点。这两样都没有时,我们不出配置——编一条出来比不给更糟。 各客户端的接法 →
- 来源明细
- 收录自 abordage/awesome-mcp 榜单(我们从中收集的条目之一) · 条目类型:MCP 服务
- 收录与活跃
- 收录于 2026-11-05 · 最近见到 2026-11-14 · 共见到 10 次 · 被 10 个来源列出
- 评分构成
- 综合分 1,003 · 10 个来源 · mcp
常见问题(答案都来自我们的记录)
它适合谁 / 用来做什么?
我们把它归在这些标签下: MCP 服务。标签来自条目自身,不是我们强加的分类。
谁维护它、还在更新吗?
我们收录于 2026-11-05;最近见到 2026-11-14。这里没有"官方认证"或"质量评级"——我们只记录来源与时间。
# say-mcp-server
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
An MCP server that provides text-to-speech functionality using macOS's built-in say command.
## Requirements
macOS (uses the built-in say command)
Node.js >= 14.0.0
## Configuration
Add the following to your MCP settings configuration file:
json
"mcpServers": {
"say": {
"command": "node",
"args": ["/path/to/say-mcp-server/build/index.js"]
## Installation
bash
npm install say-mcp-server
## Tools
### speak
The speak tool provides access to macOS's text-to-speech capabilities with extensive customization options.
#### Basic Usage
Use macOS text-to-speech to speak text aloud.
Parameters:
text (required): Text to speak. Supports:
Plain text
Basic punctuation for pauses
Newlines for natural breaks
[[slnc 500]] for 500ms silence
[[rate 200]] for changing speed mid-text
[[volm 0.5]] for changing volume mid-text
[[emph +]] and [[emph -]] for emphasis
[[pbas +10]] for pitch adjustment
voice (optional): Voice to use (default: "Alex")
rate (optional): Speaking rate in words per minute (default: 175, range: 1-500)
background (optional): Run speech in background to allow further MCP interaction (default: false)
#### Advanced Features
1. Voice Modulation:
typescript
use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: "[[volm 0.7]] This is quieter [[volm 1.0]] and this is normal [[volm 1.5]] and this is louder",
voice: "Victoria"
});
2. Dynamic Rate Changes:
typescript
use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: "Normal speed [[rate 300]] now speaking faster [[rate 100]] and now slower",
voice: "Fred"
});
3. Emphasis and Pitch:
typescript
use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: "[[emph +]] Important point! [[emph -]] [[pbas +10]] Higher pitch [[pbas -10]] Lower pitch",
voice: "Samantha"
});
#### Integration Examples
1. With Marginalia Search:
typescript
// Search for a topic and have the results read aloud
const searchResult = await use_mcp_tool({
server_name: "marginalia-mcp-server",
tool_name: "search",
arguments: { query: "quantum computing basics", count: 1 }
});
await use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: searchResult.results[0].description,
voice: "Daniel",
rate: 150
});
2. With YouTube Transcripts:
typescript
// Read a YouTube video transcript
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
});
3. Background Speech with Multiple Actions:
typescript
// Start long speech in background
await use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: "This is a long speech that will run in the background...",
voice: "Rocko (Italian (Italy))",
rate: 69,
background: true
});
// Immediately perform another action while speech continues
await use_mcp_tool({
server_name: "marginalia-mcp-server",
tool_name: "search",
arguments: { query: "parallel processing" }
});
4. With Apple Notes:
typescript
// Read notes aloud
const notes = await use_mcp_tool({
server_name: "apple-notes-mcp",
tool_name: "search-notes",
arguments: { query: "meeting notes" }
## Requirements
macOS (uses the built-in say command)
Node.js >= 14.0.0
## Configuration
Add the following to your MCP settings configuration file:
json
"mcpServers": {
"say": {
"command": "node",
"args": ["/path/to/say-mcp-server/build/index.js"]
## Installation
bash
npm install say-mcp-server
## Tools
### speak
The speak tool provides access to macOS's text-to-speech capabilities with extensive customization options.
#### Basic Usage
Use macOS text-to-speech to speak text aloud.
Parameters:
text (required): Text to speak. Supports:
Plain text
Basic punctuation for pauses
Newlines for natural breaks
[[slnc 500]] for 500ms silence
[[rate 200]] for changing speed mid-text
[[volm 0.5]] for changing volume mid-text
[[emph +]] and [[emph -]] for emphasis
[[pbas +10]] for pitch adjustment
voice (optional): Voice to use (default: "Alex")
rate (optional): Speaking rate in words per minute (default: 175, range: 1-500)
background (optional): Run speech in background to allow further MCP interaction (default: false)
#### Advanced Features
1. Voice Modulation:
typescript
use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: "[[volm 0.7]] This is quieter [[volm 1.0]] and this is normal [[volm 1.5]] and this is louder",
voice: "Victoria"
});
2. Dynamic Rate Changes:
typescript
use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: "Normal speed [[rate 300]] now speaking faster [[rate 100]] and now slower",
voice: "Fred"
});
3. Emphasis and Pitch:
typescript
use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: "[[emph +]] Important point! [[emph -]] [[pbas +10]] Higher pitch [[pbas -10]] Lower pitch",
voice: "Samantha"
});
#### Integration Examples
1. With Marginalia Search:
typescript
// Search for a topic and have the results read aloud
const searchResult = await use_mcp_tool({
server_name: "marginalia-mcp-server",
tool_name: "search",
arguments: { query: "quantum computing basics", count: 1 }
});
await use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: searchResult.results[0].description,
voice: "Daniel",
rate: 150
});
2. With YouTube Transcripts:
typescript
// Read a YouTube video transcript
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
});
3. Background Speech with Multiple Actions:
typescript
// Start long speech in background
await use_mcp_tool({
server_name: "say",
tool_name: "speak",
arguments: {
text: "This is a long speech that will run in the background...",
voice: "Rocko (Italian (Italy))",
rate: 69,
background: true
});
// Immediately perform another action while speech continues
await use_mcp_tool({
server_name: "marginalia-mcp-server",
tool_name: "search",
arguments: { query: "parallel processing" }
});
4. With Apple Notes:
typescript
// Read notes aloud
const notes = await use_mcp_tool({
server_name: "apple-notes-mcp",
tool_name: "search-notes",
arguments: { query: "meeting notes" }
收录徽章(可选)
想把收录标记放进 README 就复制这行,可选,不影响收录。
[](https://anclum.com/zh/s/bmorphism-say-mcp-server/)
- 来源
- awesome · https://github.com/bmorphism/say-mcp-server
- 按领域浏览
- MCP 服务
- 收录来源
- 10 个独立来源
- 收录于
- 今天
同类推荐
所属领域与标签
每个标签都能点进去看同类的全部条目。数字是当前库里的真实条数。