Vexa
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
SMS verification for AI agents: buy a number, get the code, cancel with refund. Free sandbox.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://kremledroid.duckdns.org/mcpพิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http smsverbot https://kremledroid.duckdns.org/mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"smsverbot": {
"url": "https://kremledroid.duckdns.org/mcp"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"smsverbot": {
"type": "http",
"url": "https://kremledroid.duckdns.org/mcp"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://kremledroid.duckdns.org/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ยังไม่ได้อ่านรายการเครื่องมือของตัวนี้ เราตรวจ endpoint ทีละชุดวนไป
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub MassimoSun ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.3) เข้า registry 16 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Vexa, emailmd, MCP WhatsApp Cloud
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.
MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
SMS verification for AI agents. An MCP server that lets an agent buy a real phone number, wait for the confirmation code, and cancel the order with a refund if the code never arrives. Remote streamable-HTTP endpoint, prepaid balance, pay-as-you-go — no subscriptions.
Works with Claude Code, Cursor, VS Code, Codex, Hermes and any MCP client. Keywords: MCP server, model context protocol, SMS verification, SMS activation, virtual numbers, AI agents, phone verification.
https://kremledroid.duckdns.org/mcplist_services, list_countries, get_price, buy_number, wait_for_code, cancel_order, get_balance, order_history, whoamiOpen [@Smsverbot](https://t.me/Smsverbot) in Telegram, press 🤖 MCP для агентов (or send /api_key). The bot gives you the API key and shows your balance. The balance is shared with the bot: top up once — the same money pays for both numbers bought in the chat and numbers bought by your agent. No separate account, no card, no crypto wallet needed for MCP.
Press 🧪 Тестовый режим in the same menu. A sandbox key buys fake numbers (+10000000000) and returns the fixed code 123456 after ~4 seconds, costs nothing, and never touches real providers. Build and debug your integration for free, then switch to a real key when you are ready.
claude mcp add --transport http smsverbot https://kremledroid.duckdns.org/mcp
MCP-сервер, который продаёт AI-агентам номера для приёма SMS-кодов подтверждения. Это отдельный продукт, не связанный с Telegram-ботом. Работает без собственного UI и веб-фреймворка: агент подключается по stdio или streamable HTTP и вызывает инструменты MCP.
Деньги хранятся в целых копейках. Баланс предоплаченный: агент пополняет счёт, покупка номера списывает стоимость, отмена возвращает её ровно один раз.
Эндпоинт: https://kremledroid.duckdns.org/mcp (streamable HTTP, TLS).
Claude Code:
claude mcp add --transport http smsverbot https://kremledroid.duckdns.org/mcp
Cursor (~/.cursor/mcp.json):
{ "mcpServers": { "smsverbot": { "url": "https://kremledroid.duckdns.org/mcp" } } }
VS Code (.vscode/mcp.json):
{ "servers": { "smsverbot": { "type": "http", "url": "https://kremledroid.duckdns.org/mcp" } } }
Дальше: получить API-ключ у Telegram-бота @Smsverbot, положить баланс и передать ключ одним из двух способов — заголовком Authorization: Bearer <ключ> в конфиге клиента (рекомендуется для хостед-режима) или первым аргументом api_key любого инструмента. Проверка, что ключ принят: инструмент whoami — отдаёт key_id и баланс.
mock без сети и реальный адаптер fivesim.BEGIN IMMEDIATE для всех операций с балансом.Windows (PowerShell или cmd):
python -m venv .venv
.venv/Scripts/pip install -r requirements.txt
Linux/macOS:
python -m venv .venv
.venv/bin/pip install -r requirements.txt
Требуется Python 3.11+. Проект проверялся на Python 3.14.
Скопируйте .env.example в .env и заполните значения. Файл .env читается автоматически, переменные окружения имеют приоритет.
| Переменная | По умолчанию | Назначение |
|---|---|---|
MCP_DB | ./mcp.db | Путь к SQLite-базе |
MCP_API_KEY | пусто | Ключ по умолчанию для stdio-клиентов, если api_key передан пустым |
PROVIDER | mock | mock или fivesim |
FIVESIM_TOKEN | пусто | Токен 5sim, обязателен для fivesim |
MCP_MARKUP | 2.5 | Наценка к закупочной цене |
RATE_LIMIT_PER_15MIN | 20 | Лимит покупок на ключ за 15 минут |
DAILY_CODE_LIMIT | 200 | Дневной лимит заявок на ключ (UTC) |
CODE_WAIT_SECONDS | 120 | Максимальное ожидание SMS-кода |
USD_KOP_RATE | 9200 | Курс USD→RUB в копейках за доллар |
Секретов в репозитории нет. Не коммитьте .env и реальные токены.
Mock-режим не делает сетевых запросов и подходит для тестов и локальной разработки:
.venv/Scripts/python server.py --stdio
Live-режим включается только явно:
set PROVIDER=fivesim
set FIVESIM_TOKEN=your_token_here .venv/Scripts/python server.py --stdio
HTTP-транспорт (streamable HTTP):
.venv/Scripts/python server.py --http --port 8765
По умолчанию HTTP слушает 127.0.0.1; хост можно изменить через --host.
Открытый API-ключ показывается только при создании. В базе остаётся лишь его SHA-256.
.venv/Scripts/python server.py --create-key "my-agent"
.venv/Scripts/python server.py --topup svb_ВАШ_КЛЮЧ 500
Вторая команда пополняет баланс на 500 рублей (50000 копеек).
admin.py читает путь к базе из MCP_DB (по умолчанию ./mcp.db).
Создать ключ с меткой и сразу пополнить баланс на 500 рублей:
python admin.py create --label client1 --topup 500
Показать все ключи (ID, метка, баланс в рублях):
python admin.py list
Пополнить баланс ключа на 200 рублей:
python admin.py topup --key-id ID --amount 200
Показать последние заказы ключа:
python admin.py orders --key-id ID
Открытый API-ключ показывается только один раз при создании.
Во всех примерах замените путь на абсолютный путь к server.py. Для live-режима добавьте PROVIDER и FIVESIM_TOKEN в блок env.
Файл claude_desktop_config.json:
{
"mcpServers": { "smsverbot": { "command": "C:/path/to/.venv/Scripts/python.exe", "args": ["C:/path/to/smsverbot-mcp/server.py", "--stdio"], "env": { "MCP_DB": "C:/path/to/smsverbot-mcp/mcp.db", "PROVIDER": "mock" } } } }
Файл .cursor/mcp.json (или глобальный ~/.cursor/mcp.json) использует ту же схему mcpServers, что и Claude Desktop.
claude mcp add smsverbot -- python server.py --stdio
Публичный HTTP-сервер:
claude mcp add --transport http smsverbot https://kremledroid.duckdns.org/mcp
Для отдельной базы и live-провайдера передайте переменные окружения в оболочке перед запуском команды.
Зарегистрируйте stdio-сервер с командой python и аргументами server.py --stdio, либо подключите HTTP-транспорт по адресу http://127.0.0.1:8765/mcp. Передайте MCP_DB и при необходимости PROVIDER/FIVESIM_TOKEN через env.
Все инструменты принимают api_key первым аргументом. Если передать пустую строку, используется MCP_API_KEY из окружения. Успех: {"ok": true, ...}. Ошибка: {"ok": false, "error": "CODE", "message": "..."}. Коды ошибок: UNAUTHORIZED, INSUFFICIENT_FUNDS, RATE_LIMITED, DAILY_LIMIT, ORDER_NOT_FOUND, NO_NUMBERS, UNAVAILABLE, UPSTREAM_ERROR, INTERNAL.
| Инструмент | Описание |
|---|---|
list_services(country="indonesia") | Список доступных сервисов |
list_countries | Список доступных стран |
get_price(service, country) | Розничная цена без покупки и списания |
buy_number(service, country) | Купить номер и списать баланс |
wait_for_code(order_id) | Дождаться SMS-кода по заказу |
cancel_order(order_id) | Отменить заказ и вернуть деньги один раз |
get_balance() | Текущий баланс в копейках и рублях |
order_history(limit=10) | Последние заказы ключа |
whoami | Проверить ключ: key_id и баланс в рублях |
Чтение каталога, цен, баланса и истории никогда не списывает деньги.
cost_kop берётся у провайдера.price_kop = max(ceil(cost_kop * MCP_MARKUP), cost_kop + 1000), затем округление вверх до 100 копеек.waiting, затем баланс списывается атомарно. При нехватке средств заказ отменяется у провайдера и помечается cancelled.wait_for_code только опрашивает провайдера. Таймаут переводит ответ в pending, деньги не возвращаются.waiting/open. Повторная отмена возвращает refunded_kop: 0.ledger: topup, debit, refund.RATE_LIMIT_PER_15MIN — скользящее окно на ключ, по умолчанию 20 запросов покупки за 15 минут.DAILY_CODE_LIMIT — число незавершённых отменой заказов на ключ за сутки UTC, по умолчанию 200.CODE_WAIT_SECONDS — максимум ожидания кода, по умолчанию 120 секунд; опрос каждые 2 секунды.cancel_order.Разрешено:
Запрещено:
Оператор вправе заблокировать ключ и отказать в обслуживании при нарушении AUP. Пользователь обязан соблюдать правила целевых сервисов, включая их ограничения на виртуальные номера.
.venv/Scripts/python -m pytest -q tests/
.venv/Scripts/python -m compileall -q .
Тест tests/test_mcp_client.py запускает сервер по stdio через официальный MCP-клиент, проверяет ровно 9 инструментов и читает баланс из общей тестовой базы.
config.py — настройки из окружения.store.py — SQLite, ключи, заказы, ledger, лимиты.providers/ — протокол, mock- и 5sim-адаптеры.service.py — бизнес-логика цен, покупки, ожидания и отмены.server.py — FastMCP, 9 инструментов и CLI.admin.py, admin_service.py — админ-CLI и операции с ключами в рублях.tests/ — сервисные тесты и интеграционный тест MCP-клиента.