Automated summary
Dials a phone number or SIP URI, speaks a message via text-to-speech, and hangs up automatically once delivery finishes.
Strengths
- Fully automated one-way delivery: no conversation to manage, the call ends by itself
- Accepts both E.164 numbers and SIP URIs
- Explicit error handling: unreachable numbers are reported back to the user
- Clear, narrowly scoped use cases (announcement, reminder, spoken notification)
Limitations
- Requires the plugin's VoIP MCP server configured with a valid SIP_AOR variable and a reachable SIP carrier
- No feedback from the recipient: you cannot confirm the message was heard or understood
- This skill exposes no control over voice, language or speech rate
Use it when the user wants a spoken message played to a phone number without holding a conversation.
Avoid it when the user expects a two-way exchange or a reply from the recipient — use the 'call' skill instead.
Security analysis
CautionThe skill uses a network-based MCP tool to make external phone calls. It does not involve destructive system commands, data exfiltration, or obfuscated payloads, but the ability to dial any number and speak any text is a powerful external action with potential for abuse, warranting caution.
- •Initiates outbound phone calls to arbitrary numbers with arbitrary spoken content, which could be misused for spam, harassment, or robocalls if not restricted by the user or platform.
- •No explicit validation or rate limiting of target numbers or message content is described, leaving abuse prevention to the VoIP MCP server configuration.
Examples
Call +1234567890 and tell them the meeting is moved to 3pm.Phone Alice on sip:alice@example.com and say the server is back up.Read this reminder to my dad over the phone: don't forget your appointment tomorrow at 9am.name: say description: Call a phone number and speak a one-way message, then hang up. Use when the user asks to call someone, deliver a voice message, announce something by phone, or send a spoken notification to a phone number. Also triggers on "phone someone", "call and tell", "read this over the phone". when_to_use: "The user wants to deliver a spoken message to a phone number without holding a conversation. One-way delivery: the message is spoken and the call ends automatically." argument-hint: "<target> <message>" arguments: target message allowed-tools: mcp__VoIP__say
Say a message over the phone
Dial $target and speak $message using text-to-speech, then hang up once the
message has been delivered. This is a one-way message: the recipient is not
expected to reply and the call ends automatically after the speech finishes.
When to use this skill
Use this skill when the user wants to deliver a spoken message to a phone number without holding a two-way conversation. Examples:
- "Call +1234567890 and tell them the meeting is moved to 3pm."
- "Phone Alice and say the server is back up."
- "Read this reminder to my dad: …"
If the user wants a back-and-forth conversation, use the call skill instead.
Target format
$target is a phone number or SIP URI:
tel:+1234567890sip:alice@example.com+1234567890
Prerequisites
The VoIP MCP server (bundled with this plugin) must be configured with a valid
SIP_AOR environment variable pointing to your SIP address-of-record. The
server connects to your SIP carrier automatically when Claude Code starts it.
Instructions
- Call the
saytool exposed by the VoIP MCP server with:target: the phone number or SIP URI from$targetprompt: the message to speak from$message
- The tool dials the target, synthesises the prompt as speech, and hangs up automatically once delivery completes.
- Report to the user whether the message was delivered. If the tool returns an error (for example, the number was unreachable), relay the error clearly.
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/deliver-a-voice-message-by-phone-mttmx72i/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/deliver-a-voice-message-by-phone-mttmx72i' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/deliver-a-voice-message-by-phone-mttmx72i/download' --output '.skill-downloads/deliver-a-voice-message-by-phone-mttmx72i/SKILL.md.part' && mv '.skill-downloads/deliver-a-voice-message-by-phone-mttmx72i/SKILL.md.part' '.skill-downloads/deliver-a-voice-message-by-phone-mttmx72i/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): mcp__VoIP__say
Original excerpt: Prerequisites
The VoIP MCP server (bundled with this plugin) must be configured with a valid
SIP_AOR environment variable pointing to your SIP address-of-record. The
server connects to your SIP carrier automatically when Claude Code starts it.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/deliver-a-voice-message-by-phone-mttmx72i/SKILL.md' && test -s '.skill-downloads/deliver-a-voice-message-by-phone-mttmx72i/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/say' && cp -R '.skill-downloads/deliver-a-voice-message-by-phone-mttmx72i' '.claude/skills/say'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/deliver-a-voice-message-by-phone-mttmx72i'openskills read 'deliver-a-voice-message-by-phone-mttmx72i'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/deliver-a-voice-message-by-phone-mttmx72i/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
PDF Reader
Productivity
Read and extract text from PDF files, including documents, reports, contracts, and spreadsheets. Works with local files, URLs, and WhatsApp attachments. Use whenever PDF content is needed, even if not explicitly requested.
Discord Messaging Workflows
Productivity
Use the message tool to send, edit, and moderate Discord messages with interactive components.
Interactive Verdict Preview
Productivity
Generate an interactive HTML preview of keep/drop verdicts for maintainer review, then process the pasted feedback JSON.