Ana Sayfa
AI asistanları için · MCP sunucusu

BuyUKeSIM MCP Sunucusu

BuyUKeSIM bir MCP (Model Context Protocol) sunucusu çalıştırır; böylece MCP destekleyen her AI asistanı - Claude, ChatGPT, Cursor, VS Code Copilot, Gemini CLI ve diğerleri - eSIM kataloğumuzla doğrudan çalışabilir. Asistanını tek bir adrese yönlendir; plan arayabilir, kapsamayı listeleyebilir, UK Numarayı anlatabilir ve bir siparişi doğal dilde sorgulayabilir.

Genel araçlar anahtar gerektirmez ve para hareketi yapmaz. İkinci, kimlik doğrulamalı araç seti ise prepaid, kripto ile fonlanan bir agent wallet ekler; böylece asistan bir bakiye fonlayıp senin adına bir travel/data eSIM satın alabilir. Hesap yok, KYC yok. Bu sayfa tam referanstır: adresler, istemci başına kurulum, her araç, kimlik doğrulama, çalıştırılabilir örnekler, hata yönetimi ve SSS.

Temel adres

https://buyukesim.com/mcp

MCP nedir

Model Context Protocol (MCP), AI asistanlarını dış araçlara ve verilere bağlayan açık bir standarttır. Kopyala-yapıştır ya da tek seferlik bir eklenti yerine, asistan uyumlu her sunucuyla tek bir protokol konuşur ve sunulan araçları keşfeder.

Sunucumuz MCP’yi JSON-RPC 2.0 ile Streamable HTTP üzerinden uygular; protokol sürümü 2025-06-18. Pratikte bu, POST isteklerini kabul eden tek bir HTTPS adresi demektir. Asistan önce initialize, sonra araçları öğrenmek için tools/list, ardından bir aracı çalıştırmak için tools/call çağırır. Bunu neredeyse hiç elle yapmazsın - MCP istemcin senin için halleder.

MCP spesifikasyonunu modelcontextprotocol.io adresinde oku

Hızlı başlangıç

En hızlı yol Claude Code. Tek komut, sunucuyu genel gezinme araçlarıyla ekler - anahtar yok, yapılandırma dosyası yok:

claude mcp add --transport http buyukesim https://buyukesim.com/mcp

Bu kadar. Asistanına "UK eSIM planlarını ara" gibi bir şey sor; araçları çağıracaktır. Diğer istemciler için aşağıdaki İstemci kurulumuna bak. Cüzdan araçlarını kullanmak için anahtarını bir Bearer başlığı olarak ekle (bkz. Kimlik doğrulama).

Adresler

Tek bir MCP adresi vardır. İstekler JSON-RPC gövdeleriyle HTTP POST’tur. Düz bir GET geçerli bir MCP isteği değildir ve 405 döner. Kolaylık olsun diye anahtarını doğrudan URL yoluna da gömebilirsin.

MetotAdresAmaç
POSThttps://buyukesim.com/mcpAna MCP adresi. Tüm JSON-RPC çağrıları (initialize, tools/list, tools/call) buraya POST olarak gider.
GEThttps://buyukesim.com/mcpGeçerli bir MCP isteği değil - 405 Method Not Allowed döner. POST kullan.
POSThttps://buyukesim.com/mcp/ak_live_YOURKEYAnahtar-URL biçimi. Aynı adres, ama API anahtarın yolda; böylece başlık gerekmez.

İstemci kurulumu

Her yerde aynı temel adresi kullan: https://buyukesim.com/mcp. Genel gezinme anahtar gerektirmez. Cüzdan araçları için bir Authorization: Bearer ak_live_YOURKEY başlığı ekle (ya da aşağıdaki diğer yöntemlerden birini kullan). ak_live_YOURKEY yerine create_wallet’tan aldığın anahtarı koy.

Claude Code (CLI)
# Public tools (browsing, no key)
claude mcp add --transport http buyukesim https://buyukesim.com/mcp

# Authenticated (wallet) - pass your key as a Bearer header
claude mcp add --transport http buyukesim https://buyukesim.com/mcp \
  --header "Authorization: Bearer ak_live_YOURKEY"

# Verify
claude mcp list
Claude Desktop
Settings  ->  Connectors  ->  Add custom connector

  Name: buyukesim
  URL:  https://buyukesim.com/mcp

Public tools work with no key. For the wallet tools,
use a client that lets you send an Authorization header
(Claude Code, Cursor, VS Code, Gemini CLI).
ChatGPT
Settings  ->  Connectors  ->  Add  (Developer mode)

  Name:           buyukesim
  MCP server URL: https://buyukesim.com/mcp

Public browse tools are available immediately.
Cursor
// ~/.cursor/mcp.json
{
  "mcpServers": {
    "buyukesim": {
      "type": "streamableHttp",
      "url": "https://buyukesim.com/mcp",
      "headers": {
        "Authorization": "Bearer ak_live_YOURKEY"
      }
    }
  }
}
VS Code (GitHub Copilot)
// .vscode/mcp.json
{
  "servers": {
    "buyukesim": {
      "type": "http",
      "url": "https://buyukesim.com/mcp",
      "headers": {
        "Authorization": "Bearer ak_live_YOURKEY"
      }
    }
  }
}
Gemini CLI
// ~/.gemini/settings.json
{
  "mcpServers": {
    "buyukesim": {
      "httpUrl": "https://buyukesim.com/mcp",
      "headers": {
        "Authorization": "Bearer ak_live_YOURKEY"
      }
    }
  }
}
Windsurf / Cline / Zed
// mcpServers block (Windsurf, Cline, Zed and similar)
{
  "mcpServers": {
    "buyukesim": {
      "serverUrl": "https://buyukesim.com/mcp"
    }
  }
}

// Fallback for stdio-only clients, via the mcp-remote bridge:
npx mcp-remote https://buyukesim.com/mcp \
  --header "Authorization: Bearer ak_live_YOURKEY"

Genel araçlar

Dört salt-okunur araç. Anahtar yok, para hareketi yok - her asistana açmak güvenli.

search_esim_plans
country?: string (2-letter ISO), limit?: int

Bir ülke için travel/data eSIM planlarını bul. Data miktarı, gün cinsinden geçerlilik, USD fiyat ve purchase_esim’e verdiğin package_code döner. country iki harfli ISO kodudur (örneğin GB); limit sonuçları sınırlar.

list_covered_countries
(none)

Travel eSIM’in kapsadığı her ülke ve bölgeyi başlangıç fiyatıyla listele. Argüman almaz.

get_uk_number_info
(none)

UK Numara (+44) eSIM’i anlat - doğrulama SMS ve aramaları için gerçek bir İngiliz cep numarası. Argüman almaz.

check_order_status
code: string

Bir siparişi kısa koduyla sorgula. Yalnızca durum döner, asla kişisel veri değil.

Kimlik doğrulamalı cüzdan araçları

Bunlar bir ak_live_ anahtarı gerektirir. Cüzdan prepaid’dir ve kripto ile fonlanır (NOWPayments üzerinden) - hesap yok, KYC yok. Bir anahtar üretmek için bir kez create_wallet çağır, create_deposit ile yükle, sonra purchase_esim ile satın al.

AraçParametrelerAmaç
create_walletlabel?: string -> returns api_key + wallet_codeYeni bir agent wallet oluştur ve api_key’ini (gizli) ve wallet_code’unu döndür. Kendisi anahtar gerektirmeyen tek cüzdan aracıdır - bir anahtar üretir. api_key’i güvenle sakla.
check_balance(none)Cüzdanın güncel bakiyesini USD olarak döndür.
create_depositamount_usd: number (min 10), coin?: stringBir kripto yükleme başlat. amount_usd yatırılan tutardır (en az 10). coin isteğe bağlıdır, örneğin usdttrc20, btc, eth veya trx. Bir ödeme adresi/linki döner; yükleme onaylanınca bakiye eklenir.
list_transactions(none)Cüzdan işlem geçmişini listele - yüklemeler ve satın almalar.
purchase_esimpackage_code: string, request_id?: stringCüzdan bakiyesiyle bir travel/data eSIM satın al. package_code, search_esim_plans’tan gelir. Bu CANLIDIR ve gerçek bakiye harcar. Bir yeniden denemenin asla çift ödeme yapmaması için idempotent kılmak üzere bir request_id geç. eSIM QR kodunu döndürür.
purchase_uk_numberrequest_id?: stringCüzdan bakiyesiyle stoktan yaklaşık 25 USD’ye bir UK Numara (+44) eSIM satın al. Bu CANLIDIR ve QR’ı anında döndürür. Bir yeniden denemenin asla çift ödeme yapmaması için idempotent kılmak üzere bir request_id geç.

Bakiye yalnızca eSIM’lere harcanabilir - asla nakde ya da kriptoya çekilemez. Bu bilinçlidir: bir borsa değil, bir agent için harcama bakiyesidir.

Kimlik doğrulama

Genel araçlar hiçbir şey gerektirmez. Cüzdan araçları, create_wallet’tan aldığın ak_live_ anahtarını gerektirir. Onu göndermenin üç eşdeğer yolu var - istemcinin desteklediğini seç.

1Authorization header (recommended)

Standart bir Bearer token başlığı gönder. Claude Code (--header), Cursor, VS Code, Gemini CLI ve cURL’de çalışır. Önerilen yöntem budur.

Authorization: Bearer ak_live_YOURKEY

2X-API-Key header

Anahtarı bunun yerine bir X-API-Key başlığında gönder. Özel başlıkları açan ama Bearer’ı açmayan istemciler için kullanışlıdır.

X-API-Key: ak_live_YOURKEY

3Key in the URL path

Anahtarı doğrudan URL yoluna koy. Yalnızca URL kabul eden, başlık kabul etmeyen istemciler için pratiktir. Anahtar içinde olduğundan bu URL’yi gizli tut.

https://buyukesim.com/mcp/ak_live_YOURKEY

Örnekler

Tam akış için kopyala-yapıştır cURL. Accept başlığına dikkat: Streamable HTTP üzerinden MCP, Accept: application/json, text/event-stream gerektirir. Her id, senin seçtiğin bir istek tanımlayıcısıdır.

1. Oturumu başlat (el sıkışma).

curl -s https://buyukesim.com/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
      "protocolVersion": "2025-06-18",
      "capabilities": {},
      "clientInfo": { "name": "curl", "version": "1.0" }
    }
  }'

2. Mevcut araçları listele.

curl -s https://buyukesim.com/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{ "jsonrpc": "2.0", "id": 2, "method": "tools/list" }'

3. UK (GB) planlarını ara, genel - anahtar yok.

curl -s https://buyukesim.com/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
      "name": "search_esim_plans",
      "arguments": { "country": "GB", "limit": 5 }
    }
  }'

4. Bir cüzdan oluştur ve bir anahtar al.

# No key needed - this call mints one. Save the api_key it returns.
curl -s https://buyukesim.com/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc": "2.0",
    "id": 4,
    "method": "tools/call",
    "params": {
      "name": "create_wallet",
      "arguments": { "label": "my-agent" }
    }
  }'

# Result contains, for example:
#   api_key:     ak_live_9f3c...   (store this secret)
#   wallet_code: WLT-4821

5. Bakiye sorgula (Bearer kimlik doğrulama).

curl -s https://buyukesim.com/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Authorization: Bearer ak_live_YOURKEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 5,
    "method": "tools/call",
    "params": { "name": "check_balance", "arguments": {} }
  }'

6. Bir kripto yükleme başlat.

curl -s https://buyukesim.com/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Authorization: Bearer ak_live_YOURKEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 6,
    "method": "tools/call",
    "params": {
      "name": "create_deposit",
      "arguments": { "amount_usd": 20, "coin": "usdttrc20" }
    }
  }'

# Returns a crypto payment address / link (NOWPayments).
# Balance is credited once the deposit confirms on-chain.

7. Bir eSIM satın al (canlı, idempotent).

curl -s https://buyukesim.com/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Authorization: Bearer ak_live_YOURKEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 7,
    "method": "tools/call",
    "params": {
      "name": "purchase_esim",
      "arguments": {
        "package_code": "GB_5GB_30D",
        "request_id": "order-2026-07-10-001"
      }
    }
  }'

# LIVE: spends wallet balance and returns the eSIM QR code.
# request_id makes it idempotent - retrying never double-charges.

8. Bir UK +44 numarası satın al (canlı, idempotent).

curl -s https://buyukesim.com/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Authorization: Bearer ak_live_YOURKEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 8,
    "method": "tools/call",
    "params": {
      "name": "purchase_uk_number",
      "arguments": { "request_id": "uknum-2026-07-10-001" }
    }
  }'

# LIVE: buys a UK +44 Number eSIM from stock (~25 USD) and
# returns the QR instantly. request_id makes it idempotent.

Python, resmi mcp istemcisi ve Streamable HTTP taşıması ile:

# pip install mcp
import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client

URL = "https://buyukesim.com/mcp"
HEADERS = {"Authorization": "Bearer ak_live_YOURKEY"}  # omit for public tools

async def main():
    async with streamablehttp_client(URL, headers=HEADERS) as (read, write, _):
        async with ClientSession(read, write) as session:
            await session.initialize()

            tools = await session.list_tools()
            print([t.name for t in tools.tools])

            result = await session.call_tool(
                "search_esim_plans", {"country": "GB", "limit": 5}
            )
            print(result.content)

asyncio.run(main())

Node.js, resmi @modelcontextprotocol/sdk ile:

// npm i @modelcontextprotocol/sdk
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";

const transport = new StreamableHTTPClientTransport(
  new URL("https://buyukesim.com/mcp"),
  { requestInit: { headers: { Authorization: "Bearer ak_live_YOURKEY" } } } // omit for public
);

const client = new Client({ name: "buyukesim-demo", version: "1.0.0" });
await client.connect(transport);

const tools = await client.listTools();
console.log(tools.tools.map((t) => t.name));

const res = await client.callTool({
  name: "search_esim_plans",
  arguments: { country: "GB", limit: 5 },
});
console.log(res.content);

Hata yönetimi

Protokol düzeyindeki sorunlar, sayısal bir kod ve mesajla standart JSON-RPC 2.0 hataları olarak döner. Göreceğin başlıcaları:

KodAnlam
-32700Ayrıştırma hatası - istek gövdesi geçerli JSON değildi.
-32600Geçersiz istek - JSON, geçerli bir JSON-RPC 2.0 isteği değil.
-32601Yöntem bulunamadı - bilinmeyen yöntem ya da var olmayan bir araç adı.
-32602Geçersiz parametre - bir araç eksik ya da yanlış tipte argümanla çağrıldı.
-32603Dahili hata - çağrıyı işlerken bizim tarafta bir şey başarısız oldu.

Araç düzeyindeki hatalar farklıdır. Çalışan ama tamamlanamayan bir araç (örneğin yetersiz bakiye ya da bilinmeyen bir package_code) JSON-RPC hatası fırlatmaz. isError: true ile ve metin içeriğinde insan-okunur bir mesajla normal bir araç sonucu döner; böylece asistanın okuyup açıklayabilir.

Canlı olan vs yakında

Sana dürüst olalım: satın alma CANLI. travel/data eSIM için purchase_esim gerçekten cüzdan bakiyesi harcar ve çalışan bir QR kodu döndürür; purchase_uk_number ise artık UK Numara (+44) eSIM için aynısını yapar - stoktan yaklaşık 25 USD’ye bir tane satın alır ve QR’ı anında döndürür. get_uk_number_info aracı yine ürünü anlatır; asıl satın alanı purchase_uk_number’dır.

Bir dürüst sınır daha: hiçbir asistan eSIM’i senin için kuramaz. Kurulum, QR profilini kendi telefonunda tarayıp dokunmak demektir. Asistan planı bulabilir, satın alabilir ve QR’ı sana verebilir - son kurulum her zaman senindir.

SSS

Bu gerçek para mı?

Genel araçlar para hareketi yapmaz. Cüzdan araçları yapar: create_deposit gerçek bir prepaid bakiyeyi kripto ile fonlar ve purchase_esim onu gerçekten harcar. Salt-okunur olan her şey ücretsizdir.

Asistan eSIM’i benim için kurabilir mi?

Hayır. Arayabilir, satın alabilir ve QR kodunu döndürebilir, ama kurulum QR’ı kendi cihazında taramak demektir. O son adım her zaman senindir.

Gerçekten KYC yok mu?

Evet. Hesap yok, kimlik kontrolü yok. Bir cüzdan oluşturur, kripto ile fonlar ve eSIM’lere harcarsın.

Bakiyem güvende mi? Çekebilir miyim?

Bakiye yalnızca eSIM’lere harcanabilir - asla nakde ya da kriptoya çekilemez. Bu, nakde çevirdiğin bir cüzdan değil, bir agent için harcama bakiyesidir.

UK numaraları ne olacak?

get_uk_number_info, UK Numara (+44) eSIM’i anlatır; purchase_uk_number ise artık cüzdan bakiyenle stoktan yaklaşık 25 USD’ye bir tane satın alır ve QR’ı anında döndürür. Tıpkı purchase_esim gibi canlıdır ve request_id ile idempotenttir.

İdempotency nasıl çalışır?

purchase_esim’e sabit bir request_id geç. Aynı request_id yeniden denenirse satın alma tekrarlanmaz; böylece bir ağ yeniden denemesi asla çift ödeme yapmaz.

Hangi coinleri yükleyebilirim?

NOWPayments üzerinden usdttrc20, btc, eth ve trx gibi yaygın olanlar. En az yükleme 10 USD. Seçenek sunulması için coin’i boş bırak.

Bir sunucu çalıştırmam gerekiyor mu?

Hayır. Barındırılan bir HTTP adresidir. URL’yi istemcine ekle, bitti - kuracak ya da kendin barındıracak bir şey yok.

Destek

Sorular, bir anahtar sorunu ya da beklendiği gibi çalışmayan bir şey mi var? Telegram’dan @buyukesimbot’a yaz, yardımcı olalım.

@buyukesimbot

Adres: JSON-RPC 2.0 / HTTP POST (Streamable HTTP), protokol sürümü 2025-06-18. Temel URL https://buyukesim.com/mcp.