# BlockVectra MCP sunucusu: AI Agent'lar için blokzincir RPC ve belge araçları

> Source: https://docs.blockvectra.com/tr/guides/mcp-server/

`https://docs.blockvectra.com/mcp` adresindeki BlockVectra MCP sunucusu, geliştiricilere ve AI Agent'lara blokzincir RPC çağrıları, zincir durumu, fiyatlandırma ve belgeler için 15 araç sunar. Bağlanmak için API key gerekmez: 10 araç hiçbir zaman API key gerektirmez; diğerleri istemcinizin başlıklarındaki `x-api-key` değerini kullanır. Tek satırda kurun: `claude mcp add --transport http blockvectra-docs https://docs.blockvectra.com/mcp`

Uç nokta [MCP uç noktasıdır](https://docs.blockvectra.com/mcp) (JSON-RPC 2.0 alan HTTP POST; GET 405 döndürür), MCP Streamable HTTP üzerinden sunulur ve durum bilgisi tutmaz. HTTP dosyaları, genel JSON ve çevresindeki kayıt akışı için [AI Agent'ları bağlayın](https://docs.blockvectra.com/tr/guides/ai-agents/) sayfasına bakın.

## Araçlar

| Araç | Ne yapar | API key | Erişim türü |
| --- | --- | --- | --- |
| `read_doc` | Bir belge sayfasını Markdown olarak okur. | Gerekmez | Salt okunur |
| `search_docs` | Belge başlıklarında, yollarında ve özetlerinde arama yapar. | Gerekmez | Salt okunur |
| `list_chains` | Desteklenen zincirleri, parametreleri ve metot politikalarını listeler (GET /v1/chains). | Gerekmez | Salt okunur |
| `get_status` | Hizmetin ve zincirlerin canlı durumunu okur (GET /v1/status). | Gerekmez | Salt okunur |
| `get_pricing` | Compute Unit ağırlıklarını, Free Plan parametrelerini ve anahtar varsayılanlarını okur (GET /v1/plans). | Gerekmez | Salt okunur |
| `estimate_usage` | Bir veya daha fazla metot için Compute Unit ve maliyeti tahmin eder. | Gerekmez | Salt okunur |
| `how_to_get_api_key` | API key alma adımlarını ve istek kimlik doğrulama biçimlerini döndürür. | Gerekmez | Salt okunur |
| `get_method_info` | Bir metodun zincirlere göre kullanılabilirliğini, CU ağırlığını ve fiyatını gösterir. | Gerekmez | Salt okunur |
| `explain_error` | Bir hatanın anlamını, faturalandırmasını, yeniden denenebilirliğini ve düzeltme yolunu sorgular. | Gerekmez | Salt okunur |
| `list_docs` | Tüm belge sayfalarını yolları ve başlıklarıyla listeler. | Gerekmez | Salt okunur |
| `rpc_call` | Desteklenen bir zincirde salt okunur bir JSON-RPC metodu çalıştırır. | İsteğe bağlı: anahtarsız yalnızca zincirin public.methods içindeki metotlar için | Salt okunur |
| `data_api_get` | Desteklenen bir zincirin Data API'sine GET isteği gönderir. | Gerekli (x-api-key başlığı) | Salt okunur |
| `get_account` | Hesap bakiyesini, CU'yu ve hız sınırlarını okur (GET /v1/account). | Gerekli (x-api-key başlığı) | Salt okunur |
| `get_deposit_address` | Hesabın yatırma adresini, açık ağları ve token'ları okur. | Gerekli (x-api-key başlığı) | Salt okunur |
| `send_raw_transaction` | Önceden imzalanmış ham bir işlemi yayınlar (eth_sendRawTransaction). | İsteğe bağlı: anahtarsız yalnızca zincirin public.methods içindeki metotlar için | İmzalanmış bir işlemi yayınlar |

Bu tablo sunucunun araç kayıt defterinden üretilir; bu nedenle `tools/list` çağrısının döndürdüğü her aracı listeler. Her araç, kendi `tools/list` şemasında açıklanan argümanları alır ve açıklanan alanları döndürür.

### API key güvenliği

Anahtar gerektiren araçlar, Data API istekleri, hesap işlemleri veya bir zincirin genel yöntemleri dışındaki RPC yöntemleri için bir API key ister.

* **Yalnızca başlıklardan okunur**: API key yalnızca MCP istemcisinin HTTP istek başlıklarından okunur (`x-api-key: rgw_...` veya `Authorization: Bearer rgw_...`).
* **Anahtarları asla sohbete yazmayın**: API key'leri veya özel anahtarları asla araç argümanlarında iletmeyin ve sohbete yapıştırmayın. Araç argümanları ve sohbet geçmişi konuşma günlüklerine ve bağlama girer; anahtarların argümanlarla iletilmesi reddedilir.

API key başlığı olmadan çağrılırsa, anahtar gerektiren araçlar `isError: true` döndürür ve agent'ı `how_to_get_api_key` aracına ve [programatik kayıt rehberine](https://docs.blockvectra.com/tr/guides/programmatic-signup/?ref=docs-mcp-server) yönlendirir.

## İstemcinizde kurulum

`https://docs.blockvectra.com/mcp` adresindeki BlockVectra belge MCP sunucusuna yaygın geliştirme ortamları ve çerçevelerden bağlanabilirsiniz.

API key olmadan başlayın. MCP uç noktasına bağlanın, list\_chains çağırın, ardından read\_doc ile quickstart sayfasını okuyun. Data API veya hesap araçlarına ihtiyaç duyduğunuzda istemcinizin HTTP başlıklarına bir API key ekleyin. Anahtarsız RPC erişimi, her zincirin genel yöntem politikasını izler.

`x-api-key` başlığı isteğe bağlıdır. API key olmadan istemciler salt okunur belge araçlarının tamamını (`read_doc`, `search_docs`, `list_docs`), zincir keşfini (`list_chains`), canlı durumu (`get_status`), fiyat tahminini (`get_pricing`, `estimate_usage`), hata açıklamalarını (`explain_error`) ve genel uç noktalarda izin verilen yöntemleri kullanabilir. Anahtar gerektiren araçları (kısıtlı yöntemlerde `rpc_call`, `send_raw_transaction`, `data_api_get`, `get_account` ve `get_deposit_address`) kullanırken `x-api-key` başlığını API key'inizle yapılandırın.

### Claude Code

CLI ile MCP sunucusuna bağlanın:

```bash
claude mcp add --transport http blockvectra-docs https://docs.blockvectra.com/mcp
```

Kimlik doğrulamalı araçlar için isteğe bağlı bir API key eklemek üzere `--header` (veya `-H`) seçeneğini kullanın ve anahtarı yapıştırmak yerine bir ortam değişkenine başvurun. Kabuğunuz değişkeni genişletmesin diye tek tırnak kullanın; Claude Code, oturumu başlatırken `${BLOCKVECTRA_API_KEY}` ifadesini genişletir:

```bash
claude mcp add --transport http blockvectra-docs https://docs.blockvectra.com/mcp \
  --header 'x-api-key: ${BLOCKVECTRA_API_KEY}'
```

Aynı yapılandırma, proje düzeyinde bir `.mcp.json` olarak (`claude mcp add --scope project` komutunun yazdığı dosya da budur):

```json
{
  "mcpServers": {
    "blockvectra-docs": {
      "type": "http",
      "url": "https://docs.blockvectra.com/mcp",
      "headers": { "x-api-key": "${BLOCKVECTRA_API_KEY}" }
    }
  }
}
```

`BLOCKVECTRA_API_KEY` değişkenini `claude` komutunu başlatan ortamda dışa aktarın. Claude Code, o dizinde `claude` komutunu ilk çalıştırdığınızda proje düzeyindeki bir `.mcp.json` sunucusunu onaylamanızı ister; o zamana kadar `claude mcp list` onu `Pending approval` olarak gösterir.

Betikler ve CI için dosyayı `--mcp-config` ile verin ve sunucunun araçlarına izin verin. Anahtar ortamda kalır ve MCP istemcisi başlığı kendisi ekler; böylece agent'ın `$BLOCKVECTRA_API_KEY` değişkenini genişleten bir kabuk komutuna ihtiyacı olmaz (Claude Code'un izin denetimi, etkileşimsiz modda bu tür komutları `Contains simple_expansion` ile reddetti):

```bash
claude -p "Use rpc_call to run eth_blockNumber on base_mainnet" \
  --mcp-config ./mcp.json --allowedTools "mcp__blockvectra-docs__*"
```

Anahtar ayarlıyken `rpc_call` sonucu ayrıca `cu_charged` ve `balance_units` alanlarını içerir; anahtarsız bir çağrı yalnızca JSON-RPC yanıtını döndürür. Değişken ayarlı değilse istemci başlık metnini olduğu gibi gönderir ve sunucu, anahtarsız uç noktaya geri dönmek yerine `invalid_api_key` (hata kodu `-32024`) yanıtını verir.

Resmî belgeler: [Claude Code MCP belgeleri](https://code.claude.com/docs/en/mcp).

### Cursor

Sunucuyu Cursor'ın MCP yapılandırmasına ekleyin:

```json
{
  "mcpServers": {
    "blockvectra": {
      "url": "https://docs.blockvectra.com/mcp"
    }
  }
}
```

Cursor ayrıca base64 kodlu `eyJ1cmwiOiJodHRwczovL2RvY3MuYmxvY2t2ZWN0cmEuY29tL21jcCJ9` yapılandırmasını (`{"url":"https://docs.blockvectra.com/mcp"}` değerini temsil eder) kullanan derin bağlantılarla tek tıkla kurulumu destekler:

```text
cursor://anysphere.cursor-deeplink/mcp/install?name=blockvectra&config=eyJ1cmwiOiJodHRwczovL2RvY3MuYmxvY2t2ZWN0cmEuY29tL21jcCJ9
```

Kimlik doğrulamalı araçlara (Data API veya hesap yönetimi) ihtiyaç duyduğunuzda API key'inizle `headers` nesnesini ekleyin:

```json
{
  "mcpServers": {
    "blockvectra": {
      "url": "https://docs.blockvectra.com/mcp",
      "headers": {
        "x-api-key": "${env:BLOCKVECTRA_API_KEY}"
      }
    }
  }
}
```

`${env:NAME}` biçimi, `url` ve `headers` içindeki değişkenleri çözen Cursor belgelerini izler; bu biçim burada Cursor'a karşı çalıştırılmamıştır. Dosyayı `.cursor/mcp.json` (proje) veya `~/.cursor/mcp.json` (genel) konumuna koyun.

Resmî belgeler: [Cursor MCP belgeleri](https://cursor.com/docs/context/mcp) ve [Cursor kurulum bağlantıları](https://cursor.com/docs/context/mcp/install-links).

### VS Code

VS Code'da sunucuyu `.vscode/mcp.json` içinde, üst düzey `servers` anahtarı altında `type: "http"` ile yapılandırın:

```json
{
  "servers": {
    "blockvectra": {
      "type": "http",
      "url": "https://docs.blockvectra.com/mcp"
    }
  }
}
```

Kimlik doğrulamalı araçlara ihtiyaç duyduğunuzda `headers` nesnesini ekleyin:

```json
{
  "servers": {
    "blockvectra": {
      "type": "http",
      "url": "https://docs.blockvectra.com/mcp",
      "headers": {
        "x-api-key": "YOUR_API_KEY"
      }
    }
  }
}
```

Hassas kimlik bilgilerini saklarken VS Code, anahtarları koda gömmek yerine girdi değişkenlerine veya ortam dosyalarına başvurmayı destekler. Sunucuları ayrıca `MCP: Add Server` Komut Paleti eylemiyle de ekleyebilirsiniz.

Resmî belgeler: [VS Code MCP sunucuları belgeleri](https://code.visualstudio.com/docs/copilot/customization/mcp-servers) ve [VS Code MCP yapılandırma başvurusu](https://code.visualstudio.com/docs/agents/reference/mcp-configuration).

### Codex

Sunucuyu OpenAI Codex CLI ile ekleyin:

```bash
codex mcp add blockvectra --url https://docs.blockvectra.com/mcp
```

`config.toml` içinde sunucu URL'sini yapılandırın:

```toml
[mcp_servers.blockvectra]
url = "https://docs.blockvectra.com/mcp"
```

Kimlik doğrulamalı araçlara ihtiyaç duyduğunuzda istek başlıklarını `config.toml` içinde yapılandırın:

```toml
[mcp_servers.blockvectra]
url = "https://docs.blockvectra.com/mcp"
http_headers = { "x-api-key" = "YOUR_API_KEY" }
```

Alternatif olarak başlığı bir ortam değişkeninden eşleyin:

```toml
[mcp_servers.blockvectra]
url = "https://docs.blockvectra.com/mcp"
env_http_headers = { "x-api-key" = "BLOCKVECTRA_API_KEY" }
```

Resmî belgeler: [OpenAI Codex CLI MCP belgeleri](https://learn.chatgpt.com/docs/extend/mcp?surface=cli).

### Gemini CLI

Gemini CLI yapılandırmasında sunucuyu `mcpServers` altına, Streamable HTTP için `httpUrl` kullanarak ekleyin:

```json
{
  "mcpServers": {
    "blockvectra": {
      "httpUrl": "https://docs.blockvectra.com/mcp"
    }
  }
}
```

Kimlik doğrulamalı araçlara ihtiyaç duyduğunuzda API key'inizle `headers` nesnesini ekleyin:

```json
{
  "mcpServers": {
    "blockvectra": {
      "httpUrl": "https://docs.blockvectra.com/mcp",
      "headers": {
        "x-api-key": "YOUR_API_KEY"
      }
    }
  }
}
```

Resmî belgeler: [Gemini CLI MCP sunucusu belgeleri](https://github.com/google-gemini/gemini-cli/blob/main/docs/tools/mcp-server.md).

### OpenAI Responses API

OpenAI Responses API'yi çağırırken MCP sunucusunu `tools` dizisinde `type: "mcp"` ile iletin:

```bash
OPENAI_API_BASE="https://api.openai.com/v1"
curl "$OPENAI_API_BASE/responses" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "<model>",
    "tools": [{
      "type": "mcp",
      "server_label": "blockvectra",
      "server_url": "https://docs.blockvectra.com/mcp",
      "require_approval": "never"
    }],
    "input": "..."
  }'
```

Kimlik doğrulamalı araçlara ihtiyaç duyduğunuzda araç tanımına `headers` alanını ekleyin:

```json
{
  "type": "mcp",
  "server_label": "blockvectra",
  "server_url": "https://docs.blockvectra.com/mcp",
  "headers": { "x-api-key": "YOUR_API_KEY" },
  "require_approval": "never"
}
```

Resmî belgeler: [OpenAI MCP araçları rehberi](https://developers.openai.com/api/docs/guides/tools-connectors-mcp) ve [OpenAI Responses API başvurusu](https://developers.openai.com/api/reference/resources/responses/methods/create).

### Windsurf

Windsurf'te sunucuyu `mcpServers` altında `serverUrl` alanını kullanarak yapılandırın:

```json
{
  "mcpServers": {
    "blockvectra": {
      "serverUrl": "https://docs.blockvectra.com/mcp"
    }
  }
}
```

Kimlik doğrulamalı araçlara ihtiyaç duyduğunuzda API key'inizle `headers` nesnesini ekleyin:

```json
{
  "mcpServers": {
    "blockvectra": {
      "serverUrl": "https://docs.blockvectra.com/mcp",
      "headers": {
        "x-api-key": "YOUR_API_KEY"
      }
    }
  }
}
```

Windsurf ayrıca `"x-api-key": "${env:BLOCKVECTRA_API_KEY}"` gibi ortam değişkenlerine başvurmayı da destekler.

Resmî belgeler: [Windsurf MCP belgeleri](https://docs.devin.ai/desktop/cascade/mcp).

### Claude Desktop ve claude.ai

Özel bağlayıcılar kullanıcı arayüzü üzerinden yapılandırılır:

* **claude.ai**: **Customize** > **Connectors** bölümüne gidin, **+ Add** düğmesine tıklayın, **Add custom connector** seçeneğini seçin ve URL'yi girin:
  ```text
  https://docs.blockvectra.com/mcp
  ```
* **Claude Desktop**: Hesap ayarları menüsünü açın ve özel bağlayıcıları bağlayıcılar arayüzünden yapılandırın.

URL'ye bağlanmak, Claude'un kimlik bilgisi olmadan rehberlerde arama yapmasını, Markdown belgelerini okumasını, desteklenen zincirleri incelemesini, ağ durumunu kontrol etmesini ve fiyat tahminleri hesaplamasını sağlar.

Resmî belgeler: [Claude özel bağlayıcılar rehberi](https://support.claude.com/en/articles/11175166-getting-started-with-custom-connectors-using-remote-mcp).

### Bağlantıyı kontrol edin ve sorun giderin

Claude Code'da `claude mcp list`, her sunucunun durumunu gösterir. Gerçekten kaydedilen araçların sayısını görmek için akış çıktısıyla bir kez çalıştırıp `init` olayını okuyun veya hata ayıklama günlüğünü okuyun:

```bash
claude -p "say ok" --mcp-config ./mcp.json --output-format stream-json --verbose
claude -p "say ok" --mcp-config ./mcp.json --debug mcp --debug-file mcp-debug.log
```

Çalışan bir bağlantı, `init` olayında `"status": "connected"` ve `mcp__blockvectra-docs__*` araçlarını (`list_chains` ve `rpc_call` gibi) gösterir. Hata ayıklama günlüğünde `blockvectra-docs` ile ilgili `Successfully connected` ve `Failed to fetch tools` gibi satırlara bakın. Sunucu `connected` görünüyor ama hiç araç yoksa, hata ayıklama günlüğünün (`--debug mcp`) `Failed to fetch tools` sonrasında bildirdiği nedeni okuyun. Sunucunun kendisinin sağlıklı olduğunu denetlemek için aşağıdaki curl çağrılarını kullanın.

### MCP uç noktasını istemci olmadan çağırın

Uç nokta, HTTP POST üzerinden JSON-RPC 2.0'dır; bu nedenle herhangi bir HTTP istemcisi onu çağırabilir:

```bash
curl -s https://docs.blockvectra.com/mcp -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

curl -s https://docs.blockvectra.com/mcp -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"rpc_call","arguments":{"chain":"base_mainnet","method":"eth_blockNumber","params":[]}}}'
```

İlk çağrı araç listesini döndürür; ikincisi JSON-RPC yanıtını `result.structuredContent` içinde döndürür. Zincir tanımlayıcıları `base_mainnet` gibi slug'lardır; bunları `list_chains` ile alın. Anahtar gerektiren araçlar `x-api-key` başlığına ihtiyaç duyar; bu çağrı hesabınızı bir ortam değişkenindeki anahtarla okur:

```bash
curl -s https://docs.blockvectra.com/mcp -H 'content-type: application/json' \
  -H "x-api-key: $BLOCKVECTRA_API_KEY" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"get_account","arguments":{}}}'
```

`result.structuredContent` içinde `key_id`, `plan`, `balance_units`, `balance_cu` ve anahtarın hız sınırlarını döndürür. Agent'ınız komutları izin denetimli bir kabuk üzerinden çalıştırıyorsa bu değişken genişletmesi engellenebilir; bunun yerine başlığı MCP istemcisinde yapılandırın.

## SSS

### BlockVectra MCP sunucusu bir API key gerektirir mi?

Hayır. Bağlanmak için anahtar gerekmez ve 15 aracın 10 tanesi hiçbir zaman anahtar gerektirmez. `rpc_call` ve `send_raw_transaction`, anahtar olmadan yalnızca zincirin `public.methods` listesindeki yöntemler için çalışır (bunu `list_chains` ile okuyun). `data_api_get`, `get_account` ve `get_deposit_address` için `x-api-key` başlığı gerekir.

### MCP sunucusu API key oluşturabilir veya iptal edebilir mi?

Hayır. Hiçbir araç API key oluşturmaz, listelemez veya iptal etmez. `how_to_get_api_key` yalnızca adımları döndürür; bir agent [programatik kayıt](https://docs.blockvectra.com/tr/guides/programmatic-signup/?ref=docs-mcp-server) rehberini izleyerek HTTP üzerinden anahtar oluşturur, insanlar ise konsolda oluşturur. Anahtarlar hiçbir zaman araç argümanlarından geçmez.

### Bir agent MCP sunucusu üzerinden işlem gönderebilir mi?

Yayınlayabilir, imzalayamaz. `rpc_call`, `eth_sendRawTransaction`, `eth_sendTransaction`, `eth_sign` ve `personal_*` gibi yazma yöntemlerini reddeder. `send_raw_transaction`, yerelde zaten imzaladığınız bir işlemi `eth_sendRawTransaction` ile yayınlar; sunucu hiçbir zaman özel anahtar tutmaz veya görmez.

### Bir çağrı başarısız olursa ne olur?

Araç hataları, yapılandırılmış bir nedenle `isError: true` döndürür. Bir hatanın faturalandırılıp faturalandırılmadığını ve yeniden denenip denenmeyeceğini görmek için `explain_error` aracını veya [hata kodları başvurusunu](https://docs.blockvectra.com/tr/errors/) kullanın.

## İlgili

* [AI Agent'ları bağlayın](https://docs.blockvectra.com/tr/guides/ai-agents/): makine tarafından okunabilir dosyalar, genel JSON uç noktaları ve zincir seçimi iş akışı.
* [Programatik kayıt](https://docs.blockvectra.com/tr/guides/programmatic-signup/?ref=docs-mcp-server): tarayıcı olmadan bir cüzdan imzasıyla API key oluşturun.
* [Agent çerçevesi tarifleri](https://docs.blockvectra.com/tr/guides/agent-frameworks/): ElizaOS, viem, wagmi ve Coinbase AgentKit.
* [Hata kodları](https://docs.blockvectra.com/tr/errors/): faturalandırma ve yeniden deneme kurallarıyla her hata.
