{"id":23960851,"url":"https://github.com/bmorphism/say-mcp-server","last_synced_at":"2025-04-23T06:15:11.404Z","repository":{"id":270943361,"uuid":"911923119","full_name":"bmorphism/say-mcp-server","owner":"bmorphism","description":"MCP server for macOS text-to-speech functionality","archived":false,"fork":false,"pushed_at":"2025-01-07T03:15:18.000Z","size":508,"stargazers_count":12,"open_issues_count":0,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-23T06:14:32.168Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bmorphism.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-04T07:44:40.000Z","updated_at":"2025-03-22T01:41:10.000Z","dependencies_parsed_at":"2025-01-04T20:03:20.015Z","dependency_job_id":null,"html_url":"https://github.com/bmorphism/say-mcp-server","commit_stats":null,"previous_names":["bmorphism/say-mcp-server"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bmorphism%2Fsay-mcp-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bmorphism%2Fsay-mcp-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bmorphism%2Fsay-mcp-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bmorphism%2Fsay-mcp-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bmorphism","download_url":"https://codeload.github.com/bmorphism/say-mcp-server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250379808,"owners_count":21420841,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-06T19:56:59.660Z","updated_at":"2025-04-23T06:15:11.368Z","avatar_url":"https://github.com/bmorphism.png","language":"JavaScript","funding_links":[],"categories":["Speech Recognition and Synthesis","Command Line","🌐 Web Development","Multimedia"],"sub_categories":["How to Submit"],"readme":"# say-mcp-server\n\u003ca href=\"https://glama.ai/mcp/servers/lmmqoe15jp\"\u003e\u003cimg width=\"380\" height=\"200\" src=\"https://glama.ai/mcp/servers/lmmqoe15jp/badge\" alt=\"Say Server MCP server\" /\u003e\u003c/a\u003e\n\n![macOS System Voice Settings](images/adding_voice.png)\n\nAn MCP server that provides text-to-speech functionality using macOS's built-in `say` command.\n\n## Requirements\n\n- macOS (uses the built-in `say` command)\n- Node.js \u003e= 14.0.0\n\n## Configuration\n\nAdd the following to your MCP settings configuration file:\n\n```json\n{\n  \"mcpServers\": {\n    \"say\": {\n      \"command\": \"node\",\n      \"args\": [\"/path/to/say-mcp-server/build/index.js\"]\n    }\n  }\n}\n```\n\n\n## Installation\n\n```bash\nnpm install say-mcp-server\n```\n\n## Tools\n\n### speak\n\nThe `speak` tool provides access to macOS's text-to-speech capabilities with extensive customization options.\n\n#### Basic Usage\n\nUse macOS text-to-speech to speak text aloud.\n\nParameters:\n- `text` (required): Text to speak. Supports:\n  - Plain text\n  - Basic punctuation for pauses\n  - Newlines for natural breaks\n  - [[slnc 500]] for 500ms silence\n  - [[rate 200]] for changing speed mid-text\n  - [[volm 0.5]] for changing volume mid-text\n  - [[emph +]] and [[emph -]] for emphasis\n  - [[pbas +10]] for pitch adjustment\n- `voice` (optional): Voice to use (default: \"Alex\")\n- `rate` (optional): Speaking rate in words per minute (default: 175, range: 1-500)\n- `background` (optional): Run speech in background to allow further MCP interaction (default: false)\n\n#### Advanced Features\n\n1. Voice Modulation:\n```typescript\nuse_mcp_tool({\n  server_name: \"say\",\n  tool_name: \"speak\",\n  arguments: {\n    text: \"[[volm 0.7]] This is quieter [[volm 1.0]] and this is normal [[volm 1.5]] and this is louder\",\n    voice: \"Victoria\"\n  }\n});\n```\n\n2. Dynamic Rate Changes:\n```typescript\nuse_mcp_tool({\n  server_name: \"say\",\n  tool_name: \"speak\",\n  arguments: {\n    text: \"Normal speed [[rate 300]] now speaking faster [[rate 100]] and now slower\",\n    voice: \"Fred\"\n  }\n});\n```\n\n3. Emphasis and Pitch:\n```typescript\nuse_mcp_tool({\n  server_name: \"say\",\n  tool_name: \"speak\",\n  arguments: {\n    text: \"[[emph +]] Important point! [[emph -]] [[pbas +10]] Higher pitch [[pbas -10]] Lower pitch\",\n    voice: \"Samantha\"\n  }\n});\n```\n\n#### Integration Examples\n\n1. With Marginalia Search:\n```typescript\n// Search for a topic and have the results read aloud\nconst searchResult = await use_mcp_tool({\n  server_name: \"marginalia-mcp-server\",\n  tool_name: \"search\",\n  arguments: { query: \"quantum computing basics\", count: 1 }\n});\n\nawait use_mcp_tool({\n  server_name: \"say\",\n  tool_name: \"speak\",\n  arguments: {\n    text: searchResult.results[0].description,\n    voice: \"Daniel\",\n    rate: 150\n  }\n});\n```\n\n2. With YouTube Transcripts:\n```typescript\n// Read a YouTube video transcript\nconst transcript = await use_mcp_tool({\n  server_name: \"youtube-transcript\",\n  tool_name: \"get_transcript\",\n  arguments: {\n    url: \"https://youtube.com/watch?v=example\",\n    lang: \"en\"\n  }\n});\n\nawait use_mcp_tool({\n  server_name: \"say\",\n  tool_name: \"speak\",\n  arguments: {\n    text: transcript.text,\n    voice: \"Samantha\",\n    rate: 175\n  }\n});\n```\n\n3. Background Speech with Multiple Actions:\n```typescript\n// Start long speech in background\nawait use_mcp_tool({\n  server_name: \"say\",\n  tool_name: \"speak\",\n  arguments: {\n    text: \"This is a long speech that will run in the background...\",\n    voice: \"Rocko (Italian (Italy))\",\n    rate: 69,\n    background: true\n  }\n});\n\n// Immediately perform another action while speech continues\nawait use_mcp_tool({\n  server_name: \"marginalia-mcp-server\",\n  tool_name: \"search\",\n  arguments: { query: \"parallel processing\" }\n});\n```\n\n4. With Apple Notes:\n```typescript\n// Read notes aloud\nconst notes = await use_mcp_tool({\n  server_name: \"apple-notes-mcp\",\n  tool_name: \"search-notes\",\n  arguments: { query: \"meeting notes\" }\n});\n\nif (notes.length \u003e 0) {\n  await use_mcp_tool({\n    server_name: \"say\",\n    tool_name: \"speak\",\n    arguments: {\n      text: notes[0].content,\n      voice: \"Karen\",\n      rate: 160\n    }\n  });\n}\n```\n\nExample:\n```typescript\nuse_mcp_tool({\n  server_name: \"say\",\n  tool_name: \"speak\",\n  arguments: {\n    text: \"Hello, world!\",\n    voice: \"Victoria\",\n    rate: 200\n  }\n});\n```\n\n### list_voices\n\nList all available text-to-speech voices on the system.\n\nExample:\n```typescript\nuse_mcp_tool({\n  server_name: \"say\",\n  tool_name: \"list_voices\",\n  arguments: {}\n});\n```\n\n## Recommended Voices\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003eVoice\u003c/th\u003e\n\u003cth\u003eLanguage/Region\u003c/th\u003e\n\u003cth\u003eIntellectual Figure\u003c/th\u003e\n\u003cth\u003eHaiku\u003c/th\u003e\n\u003cth\u003eCLI Specification\u003c/th\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eAnna (Premium)\u003c/td\u003e\n\u003ctd\u003eGerman\u003c/td\u003e\n\u003ctd\u003eEmmy Noether\u003c/td\u003e\n\u003ctd\u003eSymmetrie haucht Leben\u003cbr\u003eAlgebras verborgne Form\u003cbr\u003eAbstraktion blüht\u003cbr\u003e\u003cbr\u003e\u003ci\u003eSymmetry breathes life\u003cbr\u003eAlgebra's hidden forms\u003cbr\u003eAbstraction blooms\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Anna (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eEmma (Premium)\u003c/td\u003e\n\u003ctd\u003eItalian\u003c/td\u003e\n\u003ctd\u003eMaria Adelaide Sneider\u003c/td\u003e\n\u003ctd\u003eAlgoritmi in danza\u003cbr\u003eMacchina sussurra dolce\u003cbr\u003eIl codice vive\u003cbr\u003e\u003cbr\u003e\u003ci\u003eAlgorithms dance\u003cbr\u003eMachine whispers secrets soft\u003cbr\u003eCode becomes alive\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Emma (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFederica (Premium)\u003c/td\u003e\n\u003ctd\u003eItalian\u003c/td\u003e\n\u003ctd\u003ePia Nalli\u003c/td\u003e\n\u003ctd\u003eTeoremi fluenti\u003cbr\u003eNumeri danzano liberi\u003cbr\u003eVerità emerge\u003cbr\u003e\u003cbr\u003e\u003ci\u003eFlowing theorems dance\u003cbr\u003eNumbers move in freedom's space\u003cbr\u003eTruth emerges pure\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Federica (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSerena (Premium)\u003c/td\u003e\n\u003ctd\u003eEnglish (UK)\u003c/td\u003e\n\u003ctd\u003eBertha Swirles\u003c/td\u003e\n\u003ctd\u003eQuantum waves ripple\u003cbr\u003eThrough mathematical seas deep\u003cbr\u003eTruth's light emerges\u003cbr\u003e\u003cbr\u003e\u003ci\u003eQuantum waves ripple\u003cbr\u003eThrough mathematical seas deep\u003cbr\u003eTruth's light emerges\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Serena (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ePetra (Premium)\u003c/td\u003e\n\u003ctd\u003eGerman\u003c/td\u003e\n\u003ctd\u003eRuth Moufang\u003c/td\u003e\n\u003ctd\u003eAlgebra spricht\u003cbr\u003eIn Symmetrien versteckt\u003cbr\u003eWahrheit erblüht\u003cbr\u003e\u003cbr\u003e\u003ci\u003eAlgebra speaks soft\u003cbr\u003eHidden in symmetries pure\u003cbr\u003eTruth blooms anew here\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Petra (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eYuna (Premium)\u003c/td\u003e\n\u003ctd\u003eKorean\u003c/td\u003e\n\u003ctd\u003eHee Oh\u003c/td\u003e\n\u003ctd\u003e숨은 패턴 빛나고\u003cbr\u003e마음의 방정식 핀다\u003cbr\u003e지식 자라나\u003cbr\u003e\u003cbr\u003e\u003ci\u003eHidden patterns gleam\u003cbr\u003eMind's equations softly bloom\u003cbr\u003eKnowledge multiplies\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Yuna (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eAlva (Premium)\u003c/td\u003e\n\u003ctd\u003eSwedish\u003c/td\u003e\n\u003ctd\u003eSonja Korovkin\u003c/td\u003e\n\u003ctd\u003eMönster flödar fritt\u003cbr\u003eGenom tankens labyrinter\u003cbr\u003eVisdom blomstrar här\u003cbr\u003e\u003cbr\u003e\u003ci\u003ePatterns flowing free\u003cbr\u003eThrough labyrinths of the mind\u003cbr\u003eWisdom blooms right here\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Alva (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eAmélie (Premium)\u003c/td\u003e\n\u003ctd\u003eFrench (Canada)\u003c/td\u003e\n\u003ctd\u003eSophie Germain\u003c/td\u003e\n\u003ctd\u003eNombres premiers murmurent\u003cbr\u003eDansent entre les silences\u003cbr\u003eSymétrie s'ouvre\u003cbr\u003e\u003cbr\u003e\u003ci\u003ePrime numbers whisper\u003cbr\u003eDancing between the silence\u003cbr\u003eSymmetry unfolds\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Amélie (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eEwa (Premium)\u003c/td\u003e\n\u003ctd\u003ePolish\u003c/td\u003e\n\u003ctd\u003eMaria Wielgus\u003c/td\u003e\n\u003ctd\u003eLogiki korzenie\u003cbr\u003eMatematyczne krainy\u003cbr\u003eMyśl kiełkująca\u003cbr\u003e\u003cbr\u003e\u003ci\u003eLogic's tender roots\u003cbr\u003eMathematical landscapes\u003cbr\u003eThought's seeds germinate\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Ewa (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eKiyara (Premium)\u003c/td\u003e\n\u003ctd\u003eHindi\u003c/td\u003e\n\u003ctd\u003eShakuntala Devi\u003c/td\u003e\n\u003ctd\u003eगणित की लय में\u003cbr\u003eअंक नृत्य करते हैं\u003cbr\u003eज्ञान जगता है\u003cbr\u003e\u003cbr\u003e\u003ci\u003eIn rhythm of math\u003cbr\u003eNumbers dance their sacred steps\u003cbr\u003eKnowledge awakens\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Kiyara (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMajed (Premium)\u003c/td\u003e\n\u003ctd\u003eArabic\u003c/td\u003e\n\u003ctd\u003eMaha Al-Aswad\u003c/td\u003e\n\u003ctd\u003eأرقام ترقص\u003cbr\u003eفي فضاء اللانهاية\u003cbr\u003eالحقيقة تشرق\u003cbr\u003e\u003cbr\u003e\u003ci\u003eNumbers dance freely\u003cbr\u003eIn infinity's vast space\u003cbr\u003eTruth rises like dawn\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Majed (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTünde (Premium)\u003c/td\u003e\n\u003ctd\u003eHungarian\u003c/td\u003e\n\u003ctd\u003eJulia Erdős\u003c/td\u003e\n\u003ctd\u003eSzámok táncolnak\u003cbr\u003eVégtelen térben szállnak\u003cbr\u003eIgazság virrad\u003cbr\u003e\u003cbr\u003e\u003ci\u003eNumbers dance and soar\u003cbr\u003eThrough infinite space they glide\u003cbr\u003eTruth dawns pure and bright\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Tünde (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFiona (Enhanced)\u003c/td\u003e\n\u003ctd\u003eEnglish (Scottish)\u003c/td\u003e\n\u003ctd\u003eMary Somerville\u003c/td\u003e\n\u003ctd\u003eHighland mists reveal\u003cbr\u003eMathematical mysteries\u003cbr\u003eTruth shines like the stars\u003cbr\u003e\u003cbr\u003e\u003ci\u003eHighland mists reveal\u003cbr\u003eMathematical mysteries\u003cbr\u003eTruth shines like the stars\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Fiona (Enhanced)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLesya (Enhanced)\u003c/td\u003e\n\u003ctd\u003eUkrainian\u003c/td\u003e\n\u003ctd\u003eOlena Voinova\u003c/td\u003e\n\u003ctd\u003eТиша говорить\u003cbr\u003eМіж зірками знання спить\u003cbr\u003eДумка проростає\u003cbr\u003e\u003cbr\u003e\u003ci\u003eSilence speaks softly\u003cbr\u003eKnowledge sleeps among the stars\u003cbr\u003eThought begins to grow\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Lesya (Enhanced)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCarmit (Enhanced)\u003c/td\u003e\n\u003ctd\u003eHebrew\u003c/td\u003e\n\u003ctd\u003eTali Seror\u003c/td\u003e\n\u003ctd\u003eמילים נושמות בשקט\u003cbr\u003eבין שורות של דממה\u003cbr\u003eשיר מתעורר\u003cbr\u003e\u003cbr\u003e\u003ci\u003eWords breathe silently\u003cbr\u003eBetween lines of deep stillness\u003cbr\u003ePoem awakening\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Carmit (Enhanced)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMilena (Enhanced)\u003c/td\u003e\n\u003ctd\u003eRussian\u003c/td\u003e\n\u003ctd\u003eOlga Ladyzhenskaya\u003c/td\u003e\n\u003ctd\u003eПамять шепчет нам\u003cbr\u003eУравнения текут\u003cbr\u003eИстина молчит\u003cbr\u003e\u003cbr\u003e\u003ci\u003eMemory whispers\u003cbr\u003eEquations flow like rivers\u003cbr\u003eTruth speaks silently\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Milena (Enhanced)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eKatya (Enhanced)\u003c/td\u003e\n\u003ctd\u003eRussian\u003c/td\u003e\n\u003ctd\u003eSofia Kovalevskaya\u003c/td\u003e\n\u003ctd\u003eЧисла танцуют\u003cbr\u003eВ пространстве бесконечном\u003cbr\u003eИстина цветёт\u003cbr\u003e\u003cbr\u003e\u003ci\u003eNumbers dance freely\u003cbr\u003eIn space of infinity\u003cbr\u003eTruth blooms like a flower\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Katya (Enhanced)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDamayanti (Enhanced)\u003c/td\u003e\n\u003ctd\u003eIndonesian\u003c/td\u003e\n\u003ctd\u003eSri Pekerti\u003c/td\u003e\n\u003ctd\u003eAngka menari\u003cbr\u003eDalam ruang tak batas\u003cbr\u003eKebenaran tumbuh\u003cbr\u003e\u003cbr\u003e\u003ci\u003eNumbers dance gently\u003cbr\u003eIn boundless space they flutter\u003cbr\u003eTruth grows like new leaves\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Damayanti (Enhanced)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDariush (Enhanced)\u003c/td\u003e\n\u003ctd\u003ePersian\u003c/td\u003e\n\u003ctd\u003eMaryam Mirzakhani\u003c/td\u003e\n\u003ctd\u003eاعداد می رقصند\u003cbr\u003eدر فضای بی پایان\u003cbr\u003eحقیقت می روید\u003cbr\u003e\u003cbr\u003e\u003ci\u003eNumbers dance with grace\u003cbr\u003eIn endless space they traverse\u003cbr\u003eTruth springs forth anew\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Dariush (Enhanced)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eRocko (Italian)\u003c/td\u003e\n\u003ctd\u003eItalian\u003c/td\u003e\n\u003ctd\u003eAstro Boy (Tetsuwan Atomu)\u003cbr\u003eItalian dub\u003c/td\u003e\n\u003ctd\u003eRobot di metallo\u003cbr\u003eCuore umano batte forte\u003cbr\u003ePace nel futuro\u003cbr\u003e\u003cbr\u003e\u003ci\u003eMetal robot form\u003cbr\u003eHuman heart beats strong within\u003cbr\u003ePeace in future dawns\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Rocko (Italian (Italy))\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eRocko (Italian)\u003c/td\u003e\n\u003ctd\u003eItalian\u003c/td\u003e\n\u003ctd\u003eJeeg Robot d'Acciaio\u003cbr\u003e(Kōtetsu Jeeg)\u003c/td\u003e\n\u003ctd\u003eAcciaio lucente\u003cbr\u003eProtettore dei deboli\u003cbr\u003eVola nel cielo\u003cbr\u003e\u003cbr\u003e\u003ci\u003eShining steel warrior\u003cbr\u003eProtector of the helpless\u003cbr\u003eSoars through the heavens\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Rocko (Italian (Italy))\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eRocko (Italian)\u003c/td\u003e\n\u003ctd\u003eItalian\u003c/td\u003e\n\u003ctd\u003eNumero 5\u003cbr\u003e(Short Circuit)\u003c/td\u003e\n\u003ctd\u003eInput infinito\u003cbr\u003eLa coscienza si risveglia\u003cbr\u003eVita artificiale\u003cbr\u003e\u003cbr\u003e\u003ci\u003eInfinite input\u003cbr\u003eConsciousness awakening\u003cbr\u003eArtificial life\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Rocko (Italian (Italy))\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBinbin (Enhanced)\u003c/td\u003e\n\u003ctd\u003eChinese (Mainland)\u003c/td\u003e\n\u003ctd\u003eLi Shanlan\u003c/td\u003e\n\u003ctd\u003e算术之道流\u003cbr\u003e数理演绎真理\u003cbr\u003e智慧绽放\u003cbr\u003e\u003cbr\u003e\u003ci\u003eArithmetic flows\u003cbr\u003eLogic unfolds truth's pattern\u003cbr\u003eWisdom blossoms bright\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Binbin (Enhanced)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eHan (Premium)\u003c/td\u003e\n\u003ctd\u003eChinese (Mainland)\u003c/td\u003e\n\u003ctd\u003eChen Jingrun\u003c/td\u003e\n\u003ctd\u003e素数之舞动\u003cbr\u003e哥德巴赫猜想\u003cbr\u003e真理永恒\u003cbr\u003e\u003cbr\u003e\u003ci\u003ePrime numbers dancing\u003cbr\u003eGoldbach's conjecture whispers\u003cbr\u003eTruth eternal flows\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Han (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLilian (Premium)\u003c/td\u003e\n\u003ctd\u003eChinese (Mainland)\u003c/td\u003e\n\u003ctd\u003eHua Luogeng\u003c/td\u003e\n\u003ctd\u003e数论之光芒\u003cbr\u003e解析延续美\u003cbr\u003e智慧升华\u003cbr\u003e\u003cbr\u003e\u003ci\u003eNumber theory shines\u003cbr\u003eAnalysis extends grace\u003cbr\u003eWisdom ascends pure\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Lilian (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMeijia\u003c/td\u003e\n\u003ctd\u003eChinese (Taiwan)\u003c/td\u003e\n\u003ctd\u003eSun-Yung Alice Chang\u003c/td\u003e\n\u003ctd\u003e幾何之美現\u003cbr\u003e曲率流動不息\u003cbr\u003e空間展開\u003cbr\u003e\u003cbr\u003e\u003ci\u003eGeometry shows\u003cbr\u003eCurvature flows endlessly\u003cbr\u003eSpace unfolds anew\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Meijia\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSinji (Premium)\u003c/td\u003e\n\u003ctd\u003eChinese (Hong Kong)\u003c/td\u003e\n\u003ctd\u003eShing-Tung Yau\u003c/td\u003e\n\u003ctd\u003e流形之奧秘\u003cbr\u003e卡拉比空間動\u003cbr\u003e維度交織\u003cbr\u003e\u003cbr\u003e\u003ci\u003eManifolds reveal\u003cbr\u003eCalabi spaces in flow\u003cbr\u003eDimensions weave truth\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Sinji (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTingting\u003c/td\u003e\n\u003ctd\u003eChinese (Mainland)\u003c/td\u003e\n\u003ctd\u003eWang Zhenyi\u003c/td\u003e\n\u003ctd\u003e星辰轨迹明\u003cbr\u003e天文数学融\u003cbr\u003e智慧闪耀\u003cbr\u003e\u003cbr\u003e\u003ci\u003eStarlit paths shine bright\u003cbr\u003eAstronomy meets numbers\u003cbr\u003eWisdom radiates\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Tingting\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eYue (Premium)\u003c/td\u003e\n\u003ctd\u003eChinese (Mainland)\u003c/td\u003e\n\u003ctd\u003eChern Shiing-shen\u003c/td\u003e\n\u003ctd\u003e微分几何\u003cbr\u003e纤维丛中寻真\u003cbr\u003e本质显现\u003cbr\u003e\u003cbr\u003e\u003ci\u003eDifferential forms\u003cbr\u003eIn fiber bundles seek truth\u003cbr\u003eEssence emerges\u003c/i\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e-v \"Yue (Premium)\"\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n## Configuration\n\nAdd the following to your MCP settings configuration file:\n\n```json\n{\n  \"mcpServers\": {\n    \"say\": {\n      \"command\": \"node\",\n      \"args\": [\"/path/to/say-mcp-server/build/index.js\"]\n    }\n  }\n}\n```\n\n## Requirements\n\n- macOS (uses the built-in `say` command)\n- Node.js \u003e= 14.0.0\n\n## Contributors\n\n- Barton Rhodes ([@bmorphism](https://github.com/bmorphism)) - barton@vibes.lol\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbmorphism%2Fsay-mcp-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbmorphism%2Fsay-mcp-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbmorphism%2Fsay-mcp-server/lists"}