SMS8 - SMS GATEWAY using your phone
官方使用您配對的Android手機作為閘道,將無限簡訊、OTP驗證和入站Webhook接入您的AI編碼助手。相同的SMS8 API金鑰,每個流程皆使用JSON-RPC工具。無需Twilio、無需A2P 10DLC、無需按條收費。
你可以用 SMS8 SMS GATEWAY Using Your Phone MCP 做什麼?
- 發送簡訊 — 讓你的 AI 透過已配對的 Android 手機,使用
send_sms向任何號碼發送文字訊息。 - 產生與驗證 OTP — 使用
send_otp產生一次性驗證碼,並透過verify_otp驗證,適用於註冊或登入流程。 - 等待接收驗證碼 — 使用
wait_for_otp封鎖等待,直到 OTP 送達已配對裝置,並自動擷取驗證碼。 - 查看近期訊息 — 透過
get_messages擷取收件匣或已發送的簡訊記錄。 - 列出已配對裝置 — 使用
list_devices查看哪些 Android 手機已連線至你的帳戶。 - 註冊網路鉤子 — 透過
create_webhook設定回呼 URL,以接收傳入的簡訊與送達事件。
文件
SMS8 MCP 伺服器
SMS 閘道 → sms8.io · 專為 vibe coding 開發者打造的 SMS 閘道 MCP → mcp.sms8.io
從 Claude Code、Cursor、Windsurf、OpenCode 以及任何支援模型上下文協定 (Model Context Protocol) 的 AI 程式開發工具中,直接發送簡訊、產生並驗證一次性密碼 (OTP)、等待接收驗證碼,以及設定 Webhook。簡訊會透過 SMS8 平台,經由已配對的 Android 手機進行路由傳送。
線上伺服器: https://mcp.sms8.io 儀表板: https://app.sms8.io 行銷網站: https://sms8.io
為何使用此服務
正在開發應用程式,並需要簡訊通知、OTP、雙向訊息或自主代理程式的手機驗證功能嗎?大多數方案會要求您註冊電信業者方案、申請電話號碼、按訊息付費,或為每個工作階段租用一次性 SIM 卡。SMS8 則透過您已擁有的手機來路由傳送簡訊。此 MCP 伺服器為您的 AI 助理提供了九個可直接呼叫的工具,因此為專案加入簡訊功能只需一個提示指令,而非花費一小時的整合工作。
您可獲得的工具
| 工具 | 用途 |
|---|---|
setup_sms8 | 驗證 API 金鑰,回傳帳戶資訊與程式碼範例 |
send_sms | 透過已配對的 Android 裝置發送一則簡訊 |
send_otp | 產生並發送一組驗證碼 |
verify_otp | 將使用者輸入的代碼與最新發出的 OTP 進行比對 |
wait_for_otp | 全新功能。 封鎖執行直到 OTP 送達已配對的 Android 裝置;並擷取該驗證碼 |
get_messages | 回傳最近的收件匣或已發送簡訊 |
list_devices | 列出已配對的 Android 裝置 |
get_balance | 全新功能。 輕量級的點數與續約狀態檢查 |
create_webhook | 為接收簡訊與傳送事件註冊一個回呼網址 |
所有工具都與 SMS8 儀表板共用相同的發送管線。點數、重試機制、多裝置路由以及 Webhook 簽章,其運作方式都與直接呼叫 API 完全相同。
SMS8 與 Twilio 及 MessageBird 的比較
| 功能 | SMS8 | Twilio | MessageBird |
|---|---|---|---|
| 內建 MCP 伺服器 | 是 | 否 | 否 |
| 每則訊息費用 | 無 | $0.0079 起 | $0.05 起 |
| 需申請 A2P 10DLC | 否 | 是 | 是 |
| 電話號碼申請 | 不需要 | $1+/月 | $2+/月 |
| 設定時間 | 60 秒 | 數天至數週 | 數天 |
| 內建 OTP 驗證 | 是 | 需額外服務 | 需額外服務 |
| 開源 MCP 程式碼 | MIT 授權 | 無 | 無 |
透過 npm 安裝
六個套件涵蓋所有流程 — 請挑選最適合您專案的那一個。
| 套件 | 執行指令 | 使用案例 |
|---|---|---|
sms8-mcp | npx -y sms8-mcp | 適用於 Claude Code、Cursor、Windsurf、OpenCode 的 MCP 啟動器 |
sms8-cli | npx sms8-cli send +1234 "hi" | 用於發送 / OTP / 收件匣 / 裝置的終端機 CLI |
react-sms-otp | npm i react-sms-otp | React useSms8Otp() + <OtpForm /> + <OtpInput />(分隔符號、由右至左書寫、遮罩、渲染屬性) |
sms-otp-verify | npm i sms-otp-verify | 相同程式碼,針對「簡訊 OTP 驗證」/「OTP 輸入」搜尋進行 SEO 最佳化的名稱 |
capacitor-sms-otp-send-verify | npm i capacitor-sms-otp-send-verify | 適用於 Ionic 應用程式的 Capacitor 外掛程式 — 原生 iOS Swift + Android Kotlin + 網頁備援方案 |
cordova-plugin-sms-otp-send | cordova plugin add cordova-plugin-sms-otp-send | 適用於 Ionic 應用程式的 Cordova 外掛程式 — 原生 iOS Swift + Android Kotlin |
sms-otp-using-myphone | npx sms-otp-using-myphone send +1234 | 相同 CLI 的純 OTP 品牌版本 |
phone-sms-gateway | npx phone-sms-gateway send +1234 "hi" | 相同 CLI 的手機即閘道品牌版本 |
send-sms-from-android | npx send-sms-from-android send +1234 "hi" | 相同 CLI 的 Android 優先品牌版本 |
MCP 範例(Claude Code、Cursor、Windsurf — 相同的設定結構):
{
"mcpServers": {
"sms8": {
"command": "npx",
"args": ["-y", "sms8-mcp"],
"env": { "SMS8_API_KEY": "sk_xxx" }
}
}
}
CLI 範例:
export SMS8_API_KEY=sk_xxx
npx sms8-cli send +14155550100 "Hello"
CODE=$(npx sms8-cli otp wait +Google --timeout=120)
React 範例:
import { OtpForm } from 'react-sms-otp';
<OtpForm
apiKey={process.env.NEXT_PUBLIC_SMS8_API_KEY!}
onVerified={(phone) => router.push('/dashboard')}
/>
所有六個套件的原始碼都位於 npm-packages/。
iOS 與 Android SDK
針對原生行動應用程式,sdks/ 資料夾提供了 Kotlin (Android) 和 Swift (iOS) SDK,內含 發送 / 驗證 API 以及 簡訊自動填入輔助工具(Android 上的 Google SMS Retriever,iOS 上的 oneTimeCode 內容類型)。
| SDK | 安裝方式 | 自動填入 |
|---|---|---|
sms8-swift | Swift Package Manager — 請參閱 README | iOS OTPTextField SwiftUI 視圖 |
sms8-android | JitPack — 請參閱 README | SMSRetriever.start(activity) — 無需簡訊權限 |
兩個 SDK 皆為 MIT 授權,共用相同的 SMS8 API 金鑰,並針對相同的 Twilio Verify 替代方案使用案例。
快速入門
1. 取得 SMS8 帳戶
在 app.sms8.io 註冊。提供 5 天免費試用,無需信用卡。透過 QR 碼配對您的 Android 手機,並從 個人資料 > API 複製您的 API 金鑰。
2. 將 MCP 伺服器加入您的工具
託管的 HTTP(Claude Code、Cursor、Windsurf、Codex、Devin)
{
"mcpServers": {
"sms8": {
"url": "https://mcp.sms8.io",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_SMS8_API_KEY"
}
}
}
}
Claude Code 外掛程式(一個指令)
/plugin marketplace add 1fancy/sms8-sms-gateway
/plugin install sms8-sms-gateway
然後在啟動 Claude Code 之前,於您的 shell 中執行 export SMS8_API_KEY=sk_xxx。
針對 stdio 用戶端使用 npx
{
"mcpServers": {
"sms8": {
"command": "npx",
"args": ["-y", "@sms8/mcp"],
"env": { "SMS8_API_KEY": "sk_your_key" }
}
}
}
3. 設定精靈
位於 app.sms8.io/mcp-setup.php 的儀表板會為每個 AI 工具預先填入 JSON,並在需要時顯示您的裝置配對 QR 碼,同時包含一個即時的簡訊測試表單。
4. 詢問您的 AI
Add SMS verification to my signup flow using the sms8 MCP.
AI 將會呼叫 setup_sms8,然後是 send_otp 和 verify_otp,並撰寫出一次就能成功運行的正式程式碼。
使用案例
以下是您可以貼到 Claude Code、Cursor 或 Windsurf 中的真實單行提示指令。
註冊時的手機驗證
Wire phone-number verification into this app using the sms8 MCP. Use
send_otp on /signup, verify_otp on /verify-phone. Render the remaining
attempts on error.
訂單出貨通知
When an order ships, send the customer an SMS with their tracking link
via the sms8 MCP.
雙向客服收件匣
Register a webhook with the sms8 MCP at https://my-app.com/sms-inbox.
Scaffold the handler that verifies the HMAC signature and routes inbound
SMS to the support queue.
透過簡訊的無密碼登入
Replace the magic-link email login with SMS OTPs using the sms8 MCP.
6-digit code, 5-minute expiry, 5 attempts.
管理頁面的簡訊雙重驗證 (2FA)
Add SMS 2FA to /admin login via the sms8 MCP. Lock the account after
5 failed verify_otp attempts.
可直接使用的程式碼範例
examples/ 中的每個檔案都是可立即用於正式環境、無相依性且可直接複製貼上的。這些是 AI 在 setup_sms8 握手後所產生的內容。
php-send.php:包含send、sendOtp、verifyOtp的最小化Sms8Sender類別js-fetch.js:Node / 瀏覽器 / Cloudflare Worker 用戶端(ESM 和 CommonJS)otp-flow.php:完整的手機驗證流程(startSignup+verifySignup)webhook-handler.php:具備 HMAC 簽章檢查的接收簡訊處理常式
常見問題
什麼是 SMS8 MCP 伺服器?
一個位於 mcp.sms8.io 的 HTTPS 端點,實作了模型上下文協定 (Model Context Protocol)。AI 程式開發工具會呼叫其 JSON-RPC 介面來發送簡訊、產生 OTP 以及設定 Webhook。簡訊會透過 SMS8 平台,經由已配對的 Android 手機進行路由傳送。
這和 Twilio 有何不同?
SMS8 使用您自己的 Android 手機作為閘道,搭配您現有的 SIM 卡。沒有按訊息計費的電信費用、無需 A2P 10DLC 註冊,也不必申請電話號碼。您支付固定方案費用即可發送無限簡訊。MCP 伺服器提供了七個 AI 助理可直接呼叫的工具,這是 Twilio 所沒有的。
這能與 Claude Code 搭配使用嗎?
可以。將 MCP 伺服器加入 ~/.config/claude/mcp-servers.json,使用指向 https://mcp.sms8.io 的 HTTP 傳輸方式,並將您的 SMS8 API 金鑰作為 Bearer 權杖。或者執行 /plugin marketplace add 1fancy/sms8-sms-gateway,然後再執行 /plugin install sms8-sms-gateway。
這能與 Cursor 和 Windsurf 搭配使用嗎?
可以。兩者都支援 HTTP MCP 伺服器。將 https://mcp.sms8.io 與您的 API 金鑰作為 Bearer 標頭,加入到 ~/.cursor/mcp.json (Cursor) 或 ~/.codeium/windsurf/mcp_config.json (Windsurf) 中。位於 app.sms8.io/mcp-setup.php 的設定精靈會為每個工具預先填入 JSON。
AI 能自動加入 OTP 驗證嗎?
可以。內附的 Claude Code 技能 (skills/send-sms/SKILL.md) 會教導助理何時該呼叫 send_otp 和 verify_otp,以及如何將驗證步驟包裝到現有的註冊或登入路由中。像 「為 /signup 加入手機驗證」 這樣的提示指令就足夠了。
原始碼是公開的嗎?
是的,採用 MIT 授權。伺服器、所有七個工具的實作、npm 啟動器 (@sms8/mcp)、Claude Code 外掛程式清單以及範例程式碼都存放在 此儲存庫 中。
我的 API 金鑰會如何處理?
您的 API 金鑰會透過 Authorization: Bearer 標頭(或 X-Api-Key)來驗證每個 MCP 工具呼叫。託管的伺服器會根據您的 SMS8 帳戶驗證它,然後透過現有的 SMS8 發送管線路由該呼叫。setup_sms8 回應只會回傳您金鑰的最後四個字元,因此它永遠不會洩漏到 AI 聊天記錄或日誌中。
在正式環境中使用安全嗎?
安全。伺服器端的防禦措施包括:
- 繼承自 SMS8 API 的每個金鑰速率限制
- 每個電話號碼每 24 小時最多 5 次 OTP 的硬性上限,使用者無法設定
- 重新發送的冷卻時間為 30 至 600 秒(預設 60 秒)
- OTP 端點僅接受 POST;GET 請求會回傳 405;忽略 Cookie
- 具備資料列鎖定的事務包裝速率限制檢查;並行呼叫無法繞過限制
- HMAC-SHA256 Webhook 簽章
- 在
create_webhook上全面的 SSRF 封鎖清單,涵蓋 RFC1918、CGNAT、本地鏈路、IPv4 映射的 IPv6 以及 DNS 解析的主機 - CORS 僅針對發現方法公開;
tools/call省略了 CORS,因此惡意網頁無法驅動簡訊發送
我可以自行託管 MCP 伺服器嗎?
可以。複製儲存庫,將 SMS8_APP_PATH 設定為您的 SMS8 安裝目錄,然後執行:
git clone https://github.com/1fancy/sms8-sms-gateway.git
cd sms8-sms-gateway
export SMS8_APP_PATH=/path/to/your/sms8-install
php -S 127.0.0.1:8080 index.php
位於 mcp.sms8.io 的託管伺服器是免費的,對大多數使用者來說也更方便。
什麼是「vibe coding」?
Vibe coding 是指透過用淺顯的英文向 AI 助理描述您想要的內容來交付可運作的軟體,而不是親手編寫每一行程式碼。SMS8 MCP 讓最常見的需求之一(「加入簡訊通知」)得以實現,而無需接觸電信業者入口網站或處理 A2P 文書作業。
安全性與機密
此儲存庫不包含任何機密資訊。所有憑證都存在於環境變數或您 AI 工具的 MCP 設定中:
SMS8_API_KEY=sk_… # from app.sms8.io → Profile → API
SMS8_WEBHOOK_SECRET=… # from app.sms8.io → Webhook
完整的資安細節請參閱上方常見問題章節。可應要求提供單獨的資安稽核摘要。
儲存庫佈局
.
├── README.md this file
├── LICENSE MIT
├── index.php MCP server entry (JSON-RPC dispatcher)
├── landing.html marketing landing at mcp.sms8.io
├── .claude-plugin/plugin.json Claude Code plugin manifest
├── .mcp.json MCP server config referenced by the plugin
├── skills/send-sms/SKILL.md teaches Claude when to invoke SMS8 tools
├── npm-packages/ five published npm packages
│ ├── sms8-mcp/ MCP stdio bridge (sms8-mcp)
│ ├── sms8-cli/ universal CLI (sms8)
│ ├── sms-otp-using-myphone/ OTP-only brand of the CLI
│ ├── phone-sms-gateway/ phone-as-gateway brand of the CLI
│ └── send-sms-from-android/ Android-first brand of the CLI
├── lib/ Auth, JsonRpc, ToolRegistry
├── tools/ 7 tool implementations
└── examples/ PHP and JS drop-in samples
發展藍圖
- HTTP MCP 伺服器已在
mcp.sms8.io上線 - 具備每個電話號碼濫用上限的 OTP 端點
- npm 套件
sms8-mcp、sms8-cli、sms-otp-using-myphone、phone-sms-gateway、send-sms-from-android - Claude Code 外掛程式與技能
- MMS 支援
- 接收的簡訊自動路由至 AI 以產生回覆
- 可在儀表板中設定的每個工具速率限制
- Python、Go 和 Ruby 的程式碼範例
貢獻
歡迎在 github.com/1fancy/sms8-sms-gateway 提出問題與拉取請求。在進行較大變更前,請先發起討論。
授權
MIT。請參閱 LICENSE。
關鍵字
模型上下文協定、mcp 伺服器、mcp 簡訊、claude code 簡訊、claude code mcp、cursor mcp、windsurf mcp、簡訊 api、otp api、簡訊閘道、android 簡訊閘道、twilio 替代方案、vibe coding、ai 簡訊整合、簡訊通知、從 claude 發送簡訊、從 cursor 發送簡訊、手機驗證 api、簡訊 otp、簡訊雙重驗證、webhook 簡訊、接收簡訊、雙向簡訊、無限簡訊、無按訊息計費、無 A2P 10DLC、ai 程式開發工具、sms8