MCP (Model Context Protocol) server and OpenClaw Skill for integrating with Grizzly SMS — a platform for SMS verification codes and virtual phone numbers. Compatible with Cursor, Claude Desktop, OpenClaw (MCP and Skill modes).
| Mode | Description | Use Case |
|---|---|---|
| MCP Server | Standards-based MCP server exposing Grizzly API tools | Cursor, Claude Desktop, OpenClaw with mcpServers |
| OpenClaw Skill | Instruction-based skill using exec + CLI script | OpenClaw skills-only setup (no mcpServers) |
- Phone operations:
request_number,get_status,set_status - Account:
get_balance - Info:
get_countries,get_services,get_prices
- Dialog-based API key: Bot asks for the key during the conversation
- Balance & top-up: Check balance and provide crypto wallet (USDT TRC-20) for top-up
- Number lifecycle: Request number, poll for SMS, complete or cancel activation
- Full registration workflow: Resolve service/country codes → rent number → open browser → fill forms → enter SMS code
- Formatted output: Phone, activation ID, and SMS in copy-friendly format (monospace on Telegram)
- API key — Bot asks: Please provide your Grizzly SMS API key
- Balance & top-up — Bot can show balance and crypto wallet address for USDT TRC-20 top-up
- Number — Bot rents a number for the requested service and country
- Status — Bot can cancel an activation or request a new SMS
- SMS — Bot polls and returns the verification code
- Complete — Bot marks activation complete after code is used
See CONFIG.md for OpenClaw skill setup.
- Node.js 18+
- Grizzly SMS API key — register at grizzlysms.com, then get it from the API section
git clone https://github.com/GrizzlySMS-Git/grizzly-sms-mcp.git
cd grizzly-sms-mcp
npm install
npm run buildLocation: %APPDATA%\Cursor\User\globalStorage\mcp.json (Windows) | ~/Library/Application Support/Cursor/User/globalStorage/mcp.json (macOS) | ~/.config/Cursor/User/globalStorage/mcp.json (Linux)
{
"mcpServers": {
"grizzly-sms": {
"command": "node",
"args": ["/absolute/path/to/grizzly-sms-mcp/dist/index.js"],
"env": {
"GRIZZLY_SMS_API_KEY": "your_api_key",
"GRIZZLY_SMS_BASE_URL": "https://api.grizzlysms.com"
}
}
}
}Location: ~/.openclaw/openclaw.json (macOS/Linux) | %APPDATA%\.openclaw\openclaw.json (Windows)
{
"agents": {
"list": [{
"id": "main",
"mcpServers": {
"grizzly-sms": {
"command": "node",
"args": ["/absolute/path/to/grizzly-sms-mcp/dist/index.js"],
"env": {
"GRIZZLY_SMS_API_KEY": "your_api_key",
"GRIZZLY_SMS_BASE_URL": "https://api.grizzlysms.com"
}
}
}
}
}
}Use absolute paths. Restart after changes: openclaw gateway restart
- Add skill path to
openclaw.json:
{
"skills": {
"load": {
"extraDirs": ["/absolute/path/to/grizzly-sms-mcp"]
},
"entries": {
"grizzly_sms": {
"enabled": true
}
}
}
}- Enable exec and optionally browser tools for the agent
- Restart:
npx openclaw gateway restart
Full setup (exec approvals, browser tool, API key in dialog) — see CONFIG.md.
| Tool | Parameters | Description |
|---|---|---|
request_number |
service (required), country (optional), maxPrice, providerIds, exceptProviderIds | Rent a virtual number |
get_status |
activationId (required) | Get activation status and SMS code |
set_status |
activationId, status (6=complete, 8=cancel) | Change activation status |
get_balance |
— | Check balance |
get_wallet |
— | Get USDT TRC-20 wallet address for top-up |
get_countries |
— | List countries |
get_services |
— | List services |
get_prices |
service, country (optional) | Get prices |
| Code | Service |
|---|---|
| tg | Telegram |
| wa | |
| ig | |
| fb | |
| go | |
| ub | Uber |
| ID | Country |
|---|---|
| 73 | Brazil |
| 1 | Ukraine |
| 16 | England |
| 187 | USA |
| 22 | India |
grizzly-sms-mcp/
├── SKILL.md # OpenClaw skill instructions
├── CONFIG.md # OpenClaw skill config guide
├── clawhub.json # ClawHub metadata
├── scripts/
│ └── grizzly-cli.mjs # CLI for OpenClaw exec
├── src/ # MCP server (TypeScript)
│ ├── index.ts
│ └── grizzly-sms-client.ts
├── docs/
├── package.json
└── README.md
npm run dev # Development mode
npm run build # Build MCP server
npm start # Run MCP server
npm test # Run tests
npm run test:api # Test API methods- GRIZZLY_SMS_API_KEY required — Set in
.env, config, or provide in chat (Skill mode) - BAD_KEY — Verify API key at grizzlysms.com
- NO_BALANCE — Top up at grizzlysms.com (USDT TRC-20 supported)
- exec not permitted — Configure exec approvals; see CONFIG.md
- API docs: grizzlysms.com/docs
- Website: grizzlysms.com
- Issues: GitHub Issues
MIT — see LICENSE
MCP (Model Context Protocol) сервер и OpenClaw Skill для интеграции с Grizzly SMS — платформой SMS верификации и виртуальных номеров. Совместимо с Cursor, Claude Desktop, OpenClaw (режимы MCP и Skill).
| Режим | Описание | Когда использовать |
|---|---|---|
| MCP Server | MCP‑сервер с инструментами Grizzly API | Cursor, Claude Desktop, OpenClaw с mcpServers |
| OpenClaw Skill | Skill на exec + CLI‑скрипт | OpenClaw только со skills (без mcpServers) |
- Номера:
request_number,get_status,set_status - Аккаунт:
get_balance - Справочники:
get_countries,get_services,get_prices
- API‑ключ в диалоге: бот запрашивает ключ в чате
- Баланс и пополнение: показывает баланс и криптокошелёк (USDT TRC-20) для пополнения
- Жизненный цикл номера: аренда номера, ожидание SMS, завершение или отмена активации
- Полный workflow регистрации: определение сервиса/страны → аренда номера → браузер → заполнение форм → ввод SMS‑кода
- Форматированный вывод: номер, ID активации и SMS в удобном для копирования виде (моноширинный текст в Telegram)
- API‑ключ — бот спрашивает: Выдайте API ключ Grizzly SMS
- Баланс и пополнение — бот показывает баланс и адрес кошелька USDT TRC-20
- Номер — бот арендует номер для указанного сервиса и страны
- Статус — бот может отменить активацию или запросить новый SMS
- SMS — бот опрашивает статус и возвращает код
- Завершение — бот помечает активацию выполненной после использования кода
Подробная настройка — в CONFIG.md.
- Node.js 18+
- API‑ключ Grizzly SMS — регистрация на grizzlysms.com, ключ в разделе API
git clone https://github.com/GrizzlySMS-Git/grizzly-sms-mcp.git
cd grizzly-sms-mcp
npm install
npm run buildПуть: %APPDATA%\Cursor\User\globalStorage\mcp.json (Windows) | ~/Library/Application Support/Cursor/User/globalStorage/mcp.json (macOS) | ~/.config/Cursor/User/globalStorage/mcp.json (Linux)
{
"mcpServers": {
"grizzly-sms": {
"command": "node",
"args": ["/абсолютный/путь/к/grizzly-sms-mcp/dist/index.js"],
"env": {
"GRIZZLY_SMS_API_KEY": "ваш_api_ключ",
"GRIZZLY_SMS_BASE_URL": "https://api.grizzlysms.com"
}
}
}
}Путь: ~/.openclaw/openclaw.json (macOS/Linux) | %APPDATA%\.openclaw\openclaw.json (Windows)
{
"agents": {
"list": [{
"id": "main",
"mcpServers": {
"grizzly-sms": {
"command": "node",
"args": ["/абсолютный/путь/к/grizzly-sms-mcp/dist/index.js"],
"env": {
"GRIZZLY_SMS_API_KEY": "ваш_api_ключ",
"GRIZZLY_SMS_BASE_URL": "https://api.grizzlysms.com"
}
}
}
}
}
}Используйте абсолютные пути. После изменений: openclaw gateway restart
- Добавьте путь к skill в
openclaw.json:
{
"skills": {
"load": {
"extraDirs": ["/абсолютный/путь/к/grizzly-sms-mcp"]
},
"entries": {
"grizzly_sms": {
"enabled": true
}
}
}
}- Включите инструменты exec и по необходимости browser
- Перезапуск:
npx openclaw gateway restart
Полная настройка (exec approvals, browser, API key в диалоге) — в CONFIG.md.
| Инструмент | Параметры | Описание |
|---|---|---|
request_number |
service (обяз.), country (опц.), maxPrice, providerIds, exceptProviderIds | Аренда виртуального номера |
get_status |
activationId (обяз.) | Статус активации и SMS‑код |
set_status |
activationId, status (6=завершить, 8=отменить) | Изменение статуса |
get_balance |
— | Баланс |
get_wallet |
— | Адрес кошелька USDT TRC-20 для пополнения |
get_countries |
— | Список стран |
get_services |
— | Список сервисов |
get_prices |
service, country (опц.) | Цены |
| Код | Сервис |
|---|---|
| tg | Telegram |
| wa | |
| ig | |
| fb | |
| go | |
| ub | Uber |
| ID | Страна |
|---|---|
| 73 | Бразилия |
| 1 | Украина |
| 16 | Англия |
| 187 | США |
| 22 | Индия |
- GRIZZLY_SMS_API_KEY required — Задайте в
.env, конфиге или передайте в чате (Skill) - BAD_KEY — Проверьте ключ на grizzlysms.com
- NO_BALANCE — Пополните на grizzlysms.com (USDT TRC-20)
- exec not permitted — Настройте exec approvals в CONFIG.md
- API: grizzlysms.com/docs
- Сайт: grizzlysms.com
- Issues: GitHub Issues
MIT — см. LICENSE