Docsfra
API Dokumantasyonu
v1

MCP Sunucusu

Docsfra, barındırılan bir MCP (Model Context Protocol) sunucusu sunar — böylece herhangi bir MCP istemcisi (Claude Code, Claude Desktop, Cursor ya da kendi ajanlarınız) Docsfra'yı doğrudan alet olarak kullanır: belge yükler, arar, sayfa-ve-kutu atıflı sorular sorar, türetilmiş AI katmanlarını okur. Entegrasyon kodu gerekmez.

Endpoint: https://api.docsfra.com/mcp (Streamable HTTP)

Kimlik: kendi Docsfra API anahtarınız Authorization başlığında — Bearer dip_live_... ya da Bearer dip_test_... (test anahtarları ölçülür ama asla faturalanmaz). Çağrılar standart artifact/sorgu oranlarıyla faturalandırılır.

Bağlanma

Claude Code (CLI):

claude mcp add --transport http docsfra https://api.docsfra.com/mcp \
  --header "Authorization: Bearer dip_live_..."

Cursor / genel JSON yapılandırması:

{
  "mcpServers": {
    "docsfra": {
      "url": "https://api.docsfra.com/mcp",
      "headers": { "Authorization": "Bearer dip_live_..." }
    }
  }
}

claude.ai custom connector'ları (OAuth)

claude.ai'ın web connector'ları API-anahtarı header'ı kullanmaz — OAuth ister ve Docsfra tam akışı destekler (dinamik istemci kaydı + PKCE):

  1. claude.ai'da: Settings → Connectors → Add custom connector
  2. https://api.docsfra.com/mcp yapıştırın — anahtar gerekmez
  3. Tarayıcınız Docsfra Console'u açar: (gerekirse) giriş yapın ve onaylayın

Onayda, seçili tenant'ınız için adanmış bir API anahtarı (MCP: <istemci> adıyla) oluşturulur ve claude.ai'a erişim token'ı olarak verilir. Erişimi iptal etmek = Console → API Keys'ten o anahtarı silmek.

Header desteği yok mu?

Bazı MCP istemcileri özel header ayarlayamaz. Bunun yerine anahtarınızı URL'e ekleyin — başka yapılandırma gerekmez:

https://api.docsfra.com/mcp?key=dip_live_...

key değeri erişim loglarımızda maskelenir. Tercih edilen yöntem yine Authorization header'ıdır. İpucu: Console, API anahtarı oluşturduğunuz anda anahtar-gömülü, tek-tık kopyalanabilir kurulum parçacıkları gösterir.

Araçlar

AraçNe yapar
upload_documentKüçük dosya yükler (base64, pratikte ~200 KB'a kadar — kısa PDF/.eml). İş id'sini döner. Daha büyüğü: Console ya da POST /v1/documents ile yükleyin, sonra burada arayın/sorun.
get_jobİşi yoklar: status, ai_status, sayfa sayısı, maliyet, taze sonuç URL'leri.
search_documentsBelgeleriniz üzerinde hibrit (vektör + tam-metin + rerank) arama; isteğe bağlı tek-belge kapsamı.
askYalnızca belgelerinize dayanan RAG soru-cevap; her cevap atıf taşır (belge, sayfa ve yerleşim izin verdiğinde piksel kutusu).
cross_checkIslenmis 2+ belgenin (ust sinir yok) dogrulanmis mantik iddialarini karsilastirir; belgeler-arasi celiski/destek bulgularini iki tarafi da sayfa + birebir alintiyla doner.
get_document_memoryKimlik kartı, özet, zaman çizelgesi ve segment haritası (birleşik taramalar sayfa aralıklı alt-belgelere otomatik ayrılır).
get_document_entitiesOCR uzlaştırmalı tipli varlık grafı: kanonik değerler, rakip OCR varyantları, güven ve needs_review işaretleri.
get_document_reasoningDoğrulanmış muhakeme claim'leri (yükümlülük / koşul / son-tarih / yasak / …) — her biri belgede birebir bulunan alıntıya çapalı, halüsinasyon-kalkanlı.

Tipik ajan akışı

  1. upload_document → iş id'si
  2. status=completed ve ai_status=ready olana dek get_job
  3. get_document_memory → dosyada ne var anla (segmentler)
  4. Belge-kapsamlı ask → atıflı cevaplar; yapısal çapraz kontroller için get_document_reasoning / get_document_entities

Tüm yetkilendirme, tenant izolasyonu ve faturalama bu sayfalarda belgelenen aynı /v1 API sözleşmesince uygulanır — MCP sunucusu onun üzerinde ince, durumsuz bir yüzeydir ve anahtarınızı asla saklamaz.