Kleros IPFS Upload
internet-court/internet-court-skill
Uploads one Kleros-related file per paid request to IPFS through the Kleros x402 gateway for 0.01 USDC on Base, returning a CID that Kleros contracts can reference.
Looks up phone numbers for carrier and SIM-swap fraud signals, leases numbers and places AI outbound voice calls through BlockRun's local gateway.
$ npx skills add BlockRunAI/blockrun-mcp --skill phone -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install BlockRunAI/blockrun-mcp phone --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/BlockRunAI/blockrun-mcp.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/phone .claude/skills/phone && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "phone" agent skill from https://github.com/BlockRunAI/blockrun-mcp/tree/main/skills/phone into .claude/skills/phone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "phone", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/BlockRunAI/blockrun-mcp/tree/main/skills/phoneType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add BlockRunAI/blockrun-mcp --skill phone -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install BlockRunAI/blockrun-mcp phone --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/BlockRunAI/blockrun-mcp.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/phone .agents/skills/phone && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "phone" agent skill from https://github.com/BlockRunAI/blockrun-mcp/tree/main/skills/phone into .agents/skills/phone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "phone", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add BlockRunAI/blockrun-mcp --skill phone -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install BlockRunAI/blockrun-mcp phone --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/BlockRunAI/blockrun-mcp.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/phone .cursor/skills/phone && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "phone" agent skill from https://github.com/BlockRunAI/blockrun-mcp/tree/main/skills/phone into .cursor/skills/phone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "phone", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/BlockRunAI/blockrun-mcp.git --path skills/phone--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add BlockRunAI/blockrun-mcp --skill phone -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install BlockRunAI/blockrun-mcp phone --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/BlockRunAI/blockrun-mcp.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/phone .gemini/skills/phone && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "phone" agent skill from https://github.com/BlockRunAI/blockrun-mcp/tree/main/skills/phone into .gemini/skills/phone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "phone", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install BlockRunAI/blockrun-mcp phoneInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add BlockRunAI/blockrun-mcp --skill phone -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/BlockRunAI/blockrun-mcp.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/phone .github/skills/phone && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "phone" agent skill from https://github.com/BlockRunAI/blockrun-mcp/tree/main/skills/phone into .github/skills/phone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "phone", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add BlockRunAI/blockrun-mcp --skill phone -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install BlockRunAI/blockrun-mcp phone --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/BlockRunAI/blockrun-mcp.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/phone .opencode/skills/phone && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "phone" agent skill from https://github.com/BlockRunAI/blockrun-mcp/tree/main/skills/phone into .opencode/skills/phone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "phone", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
phoneLooks up phone numbers for carrier and SIM-swap fraud signals, leases numbers and places AI outbound voice calls through BlockRun's local gateway.
The skill works through ClawRouter's local proxy, with payment made automatically from the user's BlockRun wallet through x402. A lookup returns carrier, line type and country; a fraud check adds SIM-swap recency and call-forwarding signals and is meant to run before sending sensitive SMS codes or starting account recovery. Wallet-owned numbers are leased for 30 days, can be bought in the US or Canada, renewed, listed and released, and can serve as caller ID.
Outbound AI voice calls go through Bland.ai, with slash and CLI shortcuts and tools for call status. A warning stresses that placing a call has real-world effects, so it should happen only when you explicitly asked for one, and the server blocks emergency numbers. Each gateway request is charged to the wallet individually.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a7a9b3c. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
BlockRun Phone and Voice loads about 1.9k tokens when it runs. Until then it costs about 71 tokens; SKILL.md has 603 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from BlockRunAI/blockrun-mcp at commit a7a9b3c, republished under its MIT licence (© BlockRunAI). 603 words, ~1,890 tokens.
.claude/skills/phone/SKILL.md (or your agent's skills folder).Two namespaces in one tool: /v1/phone/* for number intelligence + provisioning, /v1/voice/* for outbound AI calls. Pay per call in USDC. Any other path is refused before payment — the tool never reaches routes outside these two.
Phone numbers use E.164 format — + followed by country code and subscriber digits (US: +1 + 10 digits; UK: +44 + 10 digits; etc.). The examples below use <+E.164-number> as a placeholder — the LLM should substitute the actual number from the user's request, not copy the literal placeholder.
const targetNumber = "<+E.164-number-from-user>" // e.g. user said "call my doctor at 415-..."
// Lookup carrier + line type
blockrun_phone({ path: "phone/lookup", body: { phoneNumber: targetNumber } })
// Buy a 30-day US number
blockrun_phone({ path: "phone/numbers/buy", body: { country: "US", areaCode: "415" } })
// Outbound AI call (requires `from` — see below)
const r = await blockrun_phone({ path: "voice/call", body: {
to: targetNumber,
from: "<+E.164-number-you-own>", // from phone/numbers/buy
task: "Confirm appointment for Friday at 3pm with Dr. Wong.",
voice: "june"
}})
// poll the result (free GET, no body)
blockrun_phone({ path: `voice/call/${r.call_id}` })/v1/phone/*)| Path | Body | Price | Effect |
|---|---|---|---|
phone/lookup | { phoneNumber } | $0.0110 | Carrier, line type (mobile/landline/VoIP) |
phone/lookup/fraud | { phoneNumber } | $0.0510 | + SIM-swap signals, call-forwarding detection |
phone/numbers/buy | { country?: "US"|"CA", areaCode? } | $5.001 | 30-day lease, US or CA |
phone/numbers/renew | { phoneNumber } | $5.001 | Extend lease 30 days |
phone/numbers/list | {} | $0.0020 | Your wallet-owned numbers |
phone/numbers/release | { phoneNumber } | free | Return to pool |
/v1/voice/*)| Path | Method | Body | Price |
|---|---|---|---|
voice/call | POST | { to, task, from, voice?, max_duration?, language?, first_sentence?, wait_for_greeting? } | $0.5410 flat |
voice/call/{call_id} | GET (no body) | – | free poll |
fromis REQUIRED and must be a number your wallet owns. Provision one first withphone/numbers/buy($5, 30-day lease). 400 errors fromvoice/callare almost always missingfrom.
| Field | Required | Default | Notes |
|---|---|---|---|
to | yes | – | Destination E.164 number |
task | yes | – | What the AI should do on the call (10–4000 chars) |
from | yes | – | Your provisioned BlockRun caller-ID number (from phone/numbers/buy) |
voice | no | nat | nat / josh / maya / june / paige / derek / florian |
max_duration | no | 5 | Minutes, 1–30 |
language | no | en-US | Language code, BCP-47 |
first_sentence | no | – | Custom opening line for the AI |
wait_for_greeting | no | false | Let recipient speak first, then AI starts |
| Voice | Tone |
|---|---|
nat | Neutral / professional male, default |
josh | Friendly male |
maya | Warm female |
june | Calm professional female |
paige | Energetic female |
derek | Deep male |
florian | European-accented male |
blockrun_phone({ path: "phone/lookup/fraud", body: { phoneNumber: "+14155550150" } })Returns carrier, line type, SIM-swap indicator, call-forwarding state. Cost: $0.0510.
blockrun_phone({ path: "phone/numbers/buy", body: { country: "US", areaCode: "415" } })
// returns { phoneNumber: "+14155550199", expires_at: "..." }Best-effort area code match. Cost: $5.001 for 30 days.
// Step 0 (one-time): provision a number you'll use as caller ID
const { phoneNumber: myNumber } = await blockrun_phone({
path: "phone/numbers/buy", body: { country: "US", areaCode: "415" }
}) // $5.001, 30-day lease
// Step 1: place the call (from is REQUIRED)
const r = await blockrun_phone({ path: "voice/call", body: {
to: "+14155550100",
from: myNumber,
task: "Call Dr. Wong's office. Confirm the appointment for Sarah Chen on Friday May 24th at 3pm. If the time isn't available, ask for the next opening on Friday afternoon and report back.",
voice: "june",
max_duration: 5,
wait_for_greeting: true
}})
// returns { call_id: "call_abc..." } — call runs async
// Poll until done
while (true) {
const status = await blockrun_phone({ path: `voice/call/${r.call_id}` })
if (status.status === "completed") {
console.log(status.summary, status.transcript)
break
}
await new Promise(r => setTimeout(r, 5000))
}Cost: $0.5410 flat for the call. Status polling is free.
const { numbers } = await blockrun_phone({ path: "phone/numbers/list", body: {} })
// Release the oldest
await blockrun_phone({ path: "phone/numbers/release", body: { phoneNumber: numbers[0].phoneNumber } })wait_for_greeting: true for human-answered calls (most cases). Set to false for known-IVR / known-bot destinations to skip the greeting wait.max_duration is a hard cap — the call ends regardless of conversation state. Default 5 min covers most scripted tasks.from matters for trust** — using a provisioned BlockRun number you own (from numbers/buy) makes the call look less spammy than a random caller ID.numbers/buy provisions a number but inbound routing is not exposed via MCP; use Bland directlyphone/lookup is cheap reconnaissance; phone/lookup/fraud is 5× the price but adds SIM-swap + call-forwarding signals you can't get from a basic carrier lookupcall_id; the call runs in the background. Always poll voice/call/{call_id} to get the transcriptPOST /v1/phone/*POST /v1/voice/call and GET /v1/voice/call/{call_id}© BlockRunAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/phone of BlockRunAI/blockrun-mcp.
Open the folder on GitHubat commit a7a9b3c
BlockRun Phone and Voice next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| BlockRun Phone and Voice this skillBlockRunAI/blockrun-mcp | 392 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Kleros IPFS Uploadinternet-court/internet-court-skill | 6.4k | — | ~4.9k | Automated safety check: Notes | MIT | |
| Venice API Keysveniceai/skills | 143 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Brigade Voice Callsspinabot/brigade | 11k | — | ~288 | Automated safety check: Pass | MIT | |
| Venice API Overviewveniceai/skills | 143 | — | ~3.5k | Automated safety check: Pass | MIT | |
| Nevermined PaymentsLeoYeAI/openclaw-master-skills | 2.2k | — | ~4.5k | Automated safety check: Notes | MIT |
internet-court/internet-court-skill
Uploads one Kleros-related file per paid request to IPFS through the Kleros x402 gateway for 0.01 USDC on Base, returning a CID that Kleros contracts can reference.
veniceai/skills
Manages Venice API keys through the /api_keys endpoints: create, list, update and revoke keys, set spending limits, and read rate limits.
spinabot/brigade
Starts and inspects phone calls through the Brigade voice-call plugin, using a CLI command or the voice_call tool, with Twilio, Telnyx, Plivo or a mock provider.
veniceai/skills
High-level map of the Venice.ai API: base URL, auth modes per endpoint, endpoint categories, response headers, pricing model, error shape and versioning.
LeoYeAI/openclaw-master-skills
Integrates Nevermined payment infrastructure into AI agents, MCP servers, Google A2A agents, and REST APIs.
internet-court/internet-court-skill
Queries the Birdeye API for token prices, OHLCV candles, trending and new tokens, holder data, security checks and wallet P&L, with WebSocket streams for live prices and whale alerts.
BlockRunAI/blockrun-mcp
Prepare or run a polished BlockRun trading demo that discovers a current Polymarket market, combines live price, probability history, smart-money, and liquidity evidence into a balanced signal…
BlockRunAI/blockrun-mcp
Pay-per-call access to AI models, real-time data, media generation and multi-chain RPC over x402 micropayments (USDC on Base or Solana), or a BlockRun account API key.
BlockRunAI/blockrun-mcp
A skill your agent uses when the BlockRun MCP server (@blockrun/mcp) is installed but misbehaving — 'Failed to connect', spawn npx ENOENT, blockrun missing from claude mcp list, HTTP 402 /…
BlockRunAI/blockrun-mcp
A skill your agent uses when asked to install, add, configure, or set up the BlockRun MCP server (@blockrun/mcp) in Claude Code, Claude Desktop, Cursor, Windsurf, Codex CLI, Grok or another MCP…
BlockRunAI/blockrun-mcp
A skill your agent uses when the BlockRun MCP server prints 'Update available', when asked to upgrade, update, or pin @blockrun/mcp, when a fix 'should be in the new version' but the client still…
BlockRunAI/blockrun-mcp
A skill your agent uses for any crypto data question — token/coin prices, FX, commodities, stocks, OHLC history, DEX pairs and liquidity, DeFi TVL, yield/APY pools, or raw JSON-RPC against a chain…
Categories
Looks up phone numbers for carrier and SIM-swap fraud signals, leases numbers and places AI outbound voice calls through BlockRun's local gateway. The skill works through ClawRouter's local proxy, with payment made automatically from the user's BlockRun wallet through x402. A lookup returns carrier, line type and country; a fraud check adds SIM-swap recency and call-forwarding signals and is meant to run before sending sensitive SMS codes or starting account recovery.
BlockRun Phone and Voice fits situations like: checking whether a phone number is mobile, landline or VoIP; screening a number for SIM-swap risk before account recovery; leasing a US or Canadian number to use as caller ID; placing an AI-powered outbound call after explicit approval.
Run `npx skills add BlockRunAI/blockrun-mcp --skill phone -a claude-code`. Or copy the skill folder (skills/phone in BlockRunAI/blockrun-mcp) into .claude/skills/phone in your project. Claude Code loads it when a task matches its description.
Run `npx skills add BlockRunAI/blockrun-mcp --skill phone -a codex`. Or copy the skill folder (skills/phone in BlockRunAI/blockrun-mcp) into .agents/skills/phone in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add BlockRunAI/blockrun-mcp --skill phone -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/phone, .gemini/skills/phone, .github/skills/phone and .opencode/skills/phone in your project.
SKILL.md names no scripts, command-line tools or credentials: BlockRun Phone and Voice is instructions for the agent only. Our summary lists: A funded BlockRun wallet for x402 payments; ClawRouter running locally.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
BlockRun Phone and Voice is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with BlockRun Phone and Voice: Kleros IPFS Upload (internet-court/internet-court-skill, 6.4k stars), Venice API Keys (veniceai/skills, 143 stars), Brigade Voice Calls (spinabot/brigade, 11k stars) and Venice API Overview (veniceai/skills, 143 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
BlockRunAI (a GitHub organization) maintains it in BlockRunAI/blockrun-mcp, which has 392 GitHub stars. The repository holds 17 skills in this directory. The repository was last updated on October 6, 2026.
Source: BlockRunAI/blockrun-mcp on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.