API для торгових ботів і MCP для ШІ
Бот, написаний під Binance USD-M Futures, працює на демо-рахунку BuyCrypt без переписування: змінюється лише адреса API. А Claude, ChatGPT і Cursor через MCP-сервер BuyCrypt бачать турніри, рейтинг трейдерів і ваш демо-рахунок.
{ "symbol": "BTCUSDT", "price": "…" }
Бот торгує. Асистент відповідає на запитання.
API для торгових ботів
Формат запитів, підписів і відповідей як у Binance USD-M Futures. Бот виставляє ордери на вашому демо-рахунку BuyCrypt: ціни ринкові, гроші демо.
- Ті самі бібліотеки: binance-futures-connector, власний код на requests
- REST, приватний WebSocket за listenKey, свічки та маркувальна ціна в стримі
- Ключ створюється в застосунку і працює лише з одним демо-рахунком
MCP для ШІ-асистентів
Одна адреса в налаштуваннях Claude, ChatGPT або Cursor — і асистент сам бере дані BuyCrypt, коли ви про них питаєте.
- Турніри, призи, таблиця учасників, лідери за монетами
- Паспорт трейдера: рейтинг із 1000, рівень, стиль торгівлі
- Ваш демо-рахунок: баланс, позиції, ордери (за ключем лише для читання)
MCP: підключіть BuyCrypt до Claude, ChatGPT і Cursor
MCP — відкритий стандарт, за яким ШІ-асистенти підключають зовнішні дані та інструменти. Сервер BuyCrypt віддає асистенту живі дані платформи. Реєстрація і ключ не потрібні, ключ знадобиться тільки для вашого демо-рахунку.
https://buycrypt.com/mcp
- Відкрийте claude.ai або застосунок Claude Desktop → Customize → Connectors.
- Натисніть + Add → Add custom connector.
- Назва — BuyCrypt, адреса — https://buycrypt.com/mcp, потім Continue.
- У розділі Authentication виберіть No sign in і натисніть Add.
Власні конектори є на всіх тарифах Claude, на безкоштовному — один. У командах Team і Enterprise конектор додає власник організації в Organization settings → Connectors. Для свого демо-рахунку додайте ключ у блоці Request headers цього ж вікна — як це зробити.
- Виконайте в терміналі одну команду:
claude mcp add --transport http buycrypt https://buycrypt.com/mcp
Перевірка: claude mcp list — у списку з’явиться buycrypt. Додайте --scope user, щоб сервер був доступний в усіх проєктах.
- Відкрийте chatgpt.com/plugins у браузері.
- Натисніть + → Add custom MCP server.
- Назва — BuyCrypt, у розділі Connection виберіть публічну адресу і вкажіть https://buycrypt.com/mcp.
- Authentication — No authentication. Підтвердьте попередження I understand and want to continue і натисніть Create.
Власні MCP-сервери в ChatGPT додаються лише у вебверсії й доступні не на всіх тарифах. Якщо пункту немає, його закрив тариф або адміністратор робочого простору. Підключити свій демо-рахунок у ChatGPT не можна: він не передає серверу ключі. Для цього підійдуть Claude, Claude Code і Cursor.
Кнопка відкриє Cursor із готовим налаштуванням. Або вручну: додайте в ~/.cursor/mcp.json (для всіх проєктів) або .cursor/mcp.json у корені проєкту:
{
"mcpServers": {
"buycrypt": {
"url": "https://buycrypt.com/mcp"
}
}
}Підійде будь-який клієнт із підтримкою Streamable HTTP: вкажіть адресу https://buycrypt.com/mcp, авторизація не потрібна. Якщо клієнт уміє запускати лише локальні сервери (stdio), підключіть через міст mcp-remote, потрібен Node.js:
{
"mcpServers": {
"buycrypt": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://buycrypt.com/mcp"]
}
}
}Перевірити сервер без асистента: npx @modelcontextprotocol/inspector --cli https://buycrypt.com/mcp --transport http --method tools/list
Що вміє сервер
platform_overviewЯкі турніри тривають зараз, який стартує наступним, скільки трейдерів у турнірах, останні призи.
без ключаlist_tournamentsПоточні, найближчі та завершені турніри: монета, спосіб підрахунку, призовий фонд, вхід, учасники.
без ключаget_tournamentОдин турнір: призи за місцями й таблиця учасників із результатами.
без ключаleaderboardЛідери за монетою за 7, 30 або 90 днів — як на сторінці «Топтрейдери».
без ключаtrader_profileПаспорт трейдера за ніком: рейтинг із 1000, рівень, п’ять складників оцінки, стиль. Лише відкриті профілі.
без ключаmarket_tickerЦіна і зміна за 24 години за безстроковим контрактом, наприклад BTCUSDT.
без ключаdemo_accountБаланс, маржа і відкриті позиції вашого демо-рахунку.
ваш ключdemo_open_ordersВідкриті ордери вашого демо-рахунку.
ваш ключdemo_recent_resultsОстанні результати демо-рахунку: прибуток і збиток закритих угод, комісії.
ваш ключЖоден інструмент не виставляє ордери, не вступає в турніри і не переказує гроші — сервер лише читає.
Що запитати в асистента
Натисніть на запитання, щоб скопіювати його.
Так асистент бачить BuyCrypt
Нижче — справжня відповідь сервера https://buycrypt.com/mcp просто зараз. Асистент отримує ці самі дані й переказує їх своїми словами.
Ваш демо-рахунок в асистенті
Інструменти demo_account, demo_open_orders і demo_recent_results читають ваш демо-рахунок. Для них клієнт передає серверу ваш API-ключ у двох заголовках: X-BuyCrypt-Api-Key і X-BuyCrypt-Api-Secret. Для асистента створіть ключ лише для читання: він бачить баланс, позиції та ордери, але ордер, скасування чи зміну плеча BuyCrypt за ним не виконає (відповідь 403). Як отримати.
claude mcp add --transport http buycrypt https://buycrypt.com/mcp \ --header "X-BuyCrypt-Api-Key: YOUR_API_KEY" \ --header "X-BuyCrypt-Api-Secret: YOUR_API_SECRET"
{
"mcpServers": {
"buycrypt": {
"url": "https://buycrypt.com/mcp",
"headers": {
"X-BuyCrypt-Api-Key": "YOUR_API_KEY",
"X-BuyCrypt-Api-Secret": "YOUR_API_SECRET"
}
}
}
}- Додаючи конектор (Customize → Connectors → Add custom connector), після адреси виберіть No sign in.
- У блоці Request headers додайте два заголовки: X-BuyCrypt-Api-Key і X-BuyCrypt-Api-Secret з вашими значеннями.
- Натисніть Add. Якщо конектор уже додано без ключа, видаліть його і додайте знову із заголовками.
Лише читання
MCP-сервер не виставляє й не скасовує ордери. Ключ потрібен йому, щоб прочитати баланс, позиції та ордери. Ключ лише для читання не дасть торгувати, навіть якщо потрапить до чужих рук.
Один демо-рахунок
Ключ BuyCrypt працює лише з демо-рахунком, для якого його створено. До реальних біржових рахунків він доступу не дає.
Окремий ключ
Створіть для асистента окремий ключ лише для читання. Ключ надсилається тільки на buycrypt.com, сервер його не зберігає й не записує в журнали. Відкликати його можна там само, де ви його створили.
API, сумісний із Binance USD-M Futures
Шляхи, підпис HMAC-SHA256, параметри та формат відповідей — як у Binance USD-M Futures. Відмінність одна: ордери виконуються на вашому демо-рахунку BuyCrypt за ринковими цінами, на реальну біржу вони не йдуть. Так стратегію можна перевірити на ринку, не ризикуючи грошима.
Як почати
- Акаунт. Увійдіть у вебтермінал або застосунок BuyCrypt через Google або Apple. Демо-рахунок з’явиться відразу.
- Ключ. У вебтерміналі або застосунку: Профіль → API-ключі → ваш демо-рахунок → блок Bot API keys → Generate API key. Скопіюйте apiKey і apiSecret: секрет показується лише один раз. Для ШІ-асистента або моніторингу у вебтерміналі є кнопка Generate read-only key (for MCP).
- Адреса. У своїй бібліотеці вкажіть https://api.buycrypt.com замість https://fapi.binance.com. Шляхи /fapi/v1/… залишаються тими самими.
- Перевірка. Запитайте баланс — GET /fapi/v2/balance: у відповіді буде USDT вашого демо-рахунку.
Що важливо знати
- Лише USDT-контракти та режим однієї позиції (one-way); хедж-режим не підтримується.
- Ціна тикера — /fapi/v1/ticker/price. Шлях /fapi/v2/ticker/price, який викликають нові версії бібліотек, поки не підтримується.
- У публічному стримі надходять свічки @kline_1m (раз на 5 с) і @markPrice (раз на секунду).
- recvWindow — 5 000 мс за замовчуванням, до 60 000 мс. Звіряйте годинник через /fapi/v1/time.
- Акаунт із торговим API-ключем отримує в рейтингу застосунку значок 🤖: усі бачать, що торгує програма.
- Права ключа: звичайний ключ (READ_TRADE) читає й торгує, ключ лише для читання (READ) — тільки GET-запити та listenKey. На ордер, скасування, плече чи маржу з ним — HTTP 403 і код -2015.
import os from binance.um_futures import UMFutures client = UMFutures( key=os.environ["BUYCRYPT_API_KEY"], # ключ із застосунку BuyCrypt secret=os.environ["BUYCRYPT_API_SECRET"], base_url="https://api.buycrypt.com", # єдиний рядок, який змінюється ) print(client.balance()) # USDT демо-рахунку client.change_leverage(symbol="BTCUSDT", leverage=5) order = client.new_order(symbol="BTCUSDT", side="BUY", type="MARKET", quantity=0.002) print(order["orderId"], order["status"]) print(client.get_position_risk(symbol="BTCUSDT"))
import hashlib, hmac, os, time, urllib.parse, requests API = "https://api.buycrypt.com" KEY = os.environ["BUYCRYPT_API_KEY"] SECRET = os.environ["BUYCRYPT_API_SECRET"] def signed(method, path, **params): params["timestamp"] = int(time.time() * 1000) query = urllib.parse.urlencode(params) sig = hmac.new(SECRET.encode(), query.encode(), hashlib.sha256).hexdigest() r = requests.request(method, f"{API}{path}?{query}&signature={sig}", headers={"X-MBX-APIKEY": KEY}, timeout=10) r.raise_for_status() return r.json() print(signed("GET", "/fapi/v2/balance")) print(signed("POST", "/fapi/v1/order", symbol="BTCUSDT", side="BUY", type="LIMIT", timeInForce="GTC", quantity=0.002, price=60000))
# публічні дані — без ключа curl "https://api.buycrypt.com/fapi/v1/ticker/price?symbol=BTCUSDT" curl "https://api.buycrypt.com/fapi/v1/klines?symbol=ETHUSDT&interval=1h&limit=3" # баланс демо-рахунку — підписаний запит KEY="ВАШ_API_KEY"; SECRET="ВАШ_API_SECRET" Q="timestamp=$(date +%s)000" SIG=$(printf '%s' "$Q" | openssl dgst -sha256 -hmac "$SECRET" | sed 's/^.* //') curl -H "X-MBX-APIKEY: $KEY" "https://api.buycrypt.com/fapi/v2/balance?$Q&signature=$SIG"
Методи
Базова адреса REST — https://api.buycrypt.com. Підписані методи потребують заголовка X-MBX-APIKEY, timestamp і signature.
Ринкові дані без ключа
Рахунок і позиції підписані
Торгівля підписані
Потоки WebSocket
Ліміти та помилки
Підписники для вашого бота (бета)
Бота можна зареєструвати як публічного: користувач натискає «Підключити» в застосунку, BuyCrypt відкриває йому окремий демо-рахунок з 1 000 демо-USDT і випускає ключ лише до цього рахунку. Ключ надходить на ваш вебхук подією subscription.created, і бот торгує на демо-рахунку підписника. Коли користувач відключається, позиції закриваються, ключ перестає працювати, вам надходить subscription.disconnected.
Боту не передаються реальні рахунки та ключі бірж користувачів — лише ключ до окремого демо-рахунку.
Реєстрація — підписаний POST /fapi/v1/bot/profiles з параметрами slug, displayName, webhookUrl (лише HTTPS) і webhookSecret (від 32 символів); до перевірки бот має статус PENDING_REVIEW. Кожну подію підписано: заголовок X-BuyCrypt-Signature = HMAC-SHA256(webhookSecret, timestamp + "." + тіло), час — у X-BuyCrypt-Timestamp. Доставка повторюється до 6 разів (одразу, через 10 с, 30 с, 2 хв, 10 хв, 1 год); після 10 невдалих доставок поспіль вебхук вимикається — увімкнути його знову допоможе підтримка.
import hashlib, hmac, os, time WEBHOOK_SECRET = os.environ["BUYCRYPT_WEBHOOK_SECRET"] def verify(headers, raw_body: bytes) -> bool: ts = int(headers["X-BuyCrypt-Timestamp"]) if abs(time.time() * 1000 - ts) > 5 * 60 * 1000: # старше 5 хвилин — відхилити return False expected = hmac.new(WEBHOOK_SECRET.encode(), f"{ts}.".encode() + raw_body, hashlib.sha256).hexdigest() return hmac.compare_digest(expected, headers["X-BuyCrypt-Signature"])
Ключ BuyCrypt відкриває лише демо-рахунок
Прив’язаний до одного рахунку
API-ключ створюється для конкретного демо-рахунку й працює тільки з ним. Реальні рахунки бірж через цей API недоступні. Ключ лише для читання не торгує й на цьому рахунку.
Секрет показується один раз
Зберігайте ключ і секрет у змінних середовища або менеджері секретів, а не в коді й не в публічних репозиторіях.
Відкликання за секунду
У вебтерміналі або застосунку, у тому ж блоці «Bot API keys», натисніть «Revoke»: усі запити з цим ключем одразу отримають помилку 401.
Часті запитання
Бот торгує реальними грошима?
Ні. API BuyCrypt виконує ордери на вашому демо-рахунку: ціни ринкові, баланс у демо-USDT. На біржу ордери не надсилаються, тож стратегію можна перевірити без ризику.
Чи треба переписувати бота під BuyCrypt?
Зазвичай ні. Якщо бот працює з Binance USD-M Futures, замініть базову адресу на https://api.buycrypt.com і підставте ключ BuyCrypt. Шляхи, підпис і формат відповідей ті самі. Перевірте, що бот не використовує хедж-режим і шлях /fapi/v2/ticker/price.
Де взяти API-ключ?
У вебтерміналі або застосунку BuyCrypt: Профіль → API-ключі → ваш демо-рахунок → Bot API keys → Generate API key. Для MCP та ШІ-асистентів — «Generate read-only key (for MCP)» у вебтерміналі: такий ключ бачить рахунок, але не торгує. Секрет показується лише один раз — збережіть його одразу. Там само ключ можна відкликати.
Що таке MCP і навіщо він потрібен?
MCP (Model Context Protocol) — відкритий стандарт, за яким ШІ-асистенти підключають зовнішні дані. Підключивши сервер https://buycrypt.com/mcp, ви можете запитати Claude, ChatGPT або Cursor про турніри, лідерів і паспорт трейдера, і асистент відповість за живими даними BuyCrypt.
Чи потрібна реєстрація, щоб підключити MCP?
Ні. Турніри, рейтинг, паспорти трейдерів і ціни доступні без ключа. Ключ потрібен лише для трьох інструментів, які читають ваш демо-рахунок, і вистачить ключа лише для читання.
Чи може ШІ-асистент торгувати через MCP?
Ні. Усі дев’ять інструментів сервера лише читають дані: ордери не виставляються і не скасовуються, у турніри ніхто не вступає, гроші не переказуються.
Чи отримає розробник бота мої ключі від біржі?
Ні. Коли ви підключаєте чужого бота, BuyCrypt відкриває для нього окремий демо-рахунок і видає ключ лише до нього. Ваші реальні рахунки та ключі бірж боту не передаються. Докладніше про захист даних — на сторінці «Безпека».
Почніть із демо-рахунку
Акаунт BuyCrypt безкоштовний: демо-рахунок для бота, ключ API в застосунку, турніри й рейтинг, де видно, чого варта стратегія.