Finansal veri Çapraz doğrulanmış REST API MCP sunucusu AAOIFI Standardı 21 Ajan-yerel

Temel veriler, oranlar, mali tablolar ve temettüler — artı AAOIFI uyumluluk kararı — tek bir REST çağrısından veya tek bir MCP aracından. Her sayı birden çok bağımsız kaynakla (SEC EDGAR, Yahoo, Finnhub) çapraz doğrulanır; iki kaynağın altındaki her şey doğrulanmamış olarak işaretlenir. Körfez ve ABD piyasaları, 7 dil, ajan-yerel.

Ücretsiz bir hesapla 3 ay boyunca ücretsiz — her kontrole, Zekât araçlarına ve API + MCP sunucusuna tam erişim. Kart gerekmez; ücretli planlar lansman döneminden sonra başlar. Aşağıdaki tablodaki plan etiketleri gelecekteki fiyatlandırmayı gösterir; lansman döneminde ücret alınmaz.

Ücretsiz hesabınızı oluşturun Ajan Beceri dosyası

Hızlı başlangıç — 3 adım

Sıfırdan uyumluluk kararına birkaç dakikada.

1. API anahtarınızı alın

Hesap oluştur

2. Uç noktayı çağırın

3. Kararı okuyun

Örnek istek ve yanıt

curl https://halalstock.net/v1/stock/2222.SR/halal?profile=standard \
  -H "Authorization: Bearer thl_your_key"

{
  "symbol": "2222.SR",
  "name": "Saudi Arabian Oil Company",
  "status": "halal",
  "compliance_score": 82,
  "confidence": "likely",
  "corroborated_by": [],         // Sharia-screened funds that also hold it (independent scholar check) — not data sources
  "ratios": [
    {"name": "debt_ratio", "value": 0.09, "threshold": 0.30, "passed": true},
    {"name": "cash_ratio", "value": 0.04, "threshold": 0.30, "passed": true},
    {"name": "impure_income_ratio", "value": null, "threshold": 0.05, "passed": null}
  ],
  "risk_level": "safe",
  "purification_pct": null,
  "reasons": ["Business is permissible and all computable financial ratios pass."],
  "explanation": {"en": "...", "ar": "..."},
  "disclaimer": "Screening analysis for information only — not a fatwa..."
}

İpucu: kod bloğuna tıklayıp seçin, sonra kopyalayın.

Canlı deneyin

Bir sembol yazın ve genel uç noktada gerçek bir tarama çalıştırın — anahtar yok, kayıt yok. Kodunuzun alacağı JSON'un aynısı.


        

Bu, mevcut verilerin otomatik tarama sonucudur — bir şirketin helal olduğuna dair fetva veya hüküm değildir. status'ü confidence ile okuyun ve daima disclaimer alanını iletin.

SDK'lar ve kopyala-yapıştır örnekler

Python ve JavaScript için bağımlılıksız resmi istemciler, ham bir curl çağrısı ve MCP yapılandırması. Anahtarınızı bir kez HALALSTOCK_API_KEY olarak ayarlayın (thl_ ile başlar).

import os
from halalstock import HalalStock, HalalStockError

# key from your account (starts with thl_); keyless works too but is IP-metered
hs = HalalStock(api_key=os.environ.get("HALALSTOCK_API_KEY"))

try:
    v = hs.check("AAPL")                 # GET /v1/stock/AAPL/halal
    # status is a screening result, not a fatwa — read it with confidence
    print(v["status"], v["compliance_score"], v["confidence"])
    print(v["disclaimer"])               # always relay this to the user

    res = hs.screen(["AAPL", "TSLA", "2222.SR"])   # batch, up to 25
    print(res["count"], "screened")
except HalalStockError as e:
    print("error", e.status, e.message)
import { HalalStock, HalalStockError } from "./halalstock.js";

// key from your account (starts with thl_); keyless works too but is IP-metered
const hs = new HalalStock(process.env.HALALSTOCK_API_KEY);

try {
  const v = await hs.check("AAPL");            // GET /v1/stock/AAPL/halal
  // status is a screening result, not a fatwa — read it with confidence
  console.log(v.status, v.compliance_score, v.confidence);
  console.log(v.disclaimer);                   // always relay this to the user

  const res = await hs.screen(["AAPL", "TSLA", "2222.SR"]);  // batch, up to 25
  console.log(res.count, "screened");
} catch (e) {
  if (e instanceof HalalStockError) console.error(e.status, e.detail);
}
# public — no key needed (metered per IP)
curl "https://halalstock.net/v1/stock/AAPL/halal?profile=standard"

# with your key (starts with thl_) for a higher quota
curl "https://halalstock.net/v1/stock/2222.SR/halal" \
  -H "Authorization: Bearer $HALALSTOCK_API_KEY"

# batch screen up to 25 tickers
curl "https://halalstock.net/v1/screen?symbols=AAPL,TSLA,2222.SR" \
  -H "Authorization: Bearer $HALALSTOCK_API_KEY"
# add to your MCP client config (e.g. Claude Desktop)
{
  "mcpServers": {
    "halalstock": {
      "command": "python",
      "args": ["-m", "tahleel.mcp_server"],
      "env": {
        "HALALSTOCK_API_URL": "https://halalstock.net",
        "HALALSTOCK_API_KEY": "thl_your_key"
      }
    }
  }
}
# then just ask: "Is Aramco (2222.SR) halal?" — the agent calls check_halal()

İstemcileri depodan alın: /sdk/python/halalstock.py ve /sdk/javascript/halalstock.js. İkisi de aşağıdaki aynı REST uç noktalarını sarar.

Yapay zekâ ajanları için (MCP)

HalalStock bir Model Context Protocol sunucusu sunar. Claude Desktop, Cursor veya herhangi bir MCP istemcisini ona yönlendirin ve bir hissenin helal olup olmadığını sorun.

MCP istemci yapılandırması

# add to your MCP client config (e.g. Claude Desktop)
{
  "mcpServers": {
    "halalstock": {
      "command": "python",
      "args": ["-m", "tahleel.mcp_server"],
      "env": {
        "HALALSTOCK_API_URL": "https://halalstock.net",
        "HALALSTOCK_API_KEY": "thl_your_key"
      }
    }
  }
}

Araçlar ve kullanım

# the server exposes two tools:
#   check_halal(symbol, profile="standard")
#   screen_portfolio(symbols, profile="standard")

# then just ask the agent:
"Is Aramco (2222.SR) halal?"
"Screen AAPL, TSLA and JPM for Sharia compliance."

# With HALALSTOCK_API_URL + HALALSTOCK_API_KEY set, calls
# go to the hosted, metered API. Without them, the server
# screens locally with no API key (best-effort, via Yahoo —
# US names degrade gracefully; still needs a network connection).

Uç nokta referansı

Çoğu okuma uç noktası anahtar gerektirmez (IP başına ölçülür); bazıları anahtar, birkaçı ücretli plan gerektirir.

Uç nokta Döndürür Kimlik
GET /v1/stock/{symbol}/halalBir sembol için tam karar: durum, puan, oranlar, güven, gerekçelerİsteğe bağlı anahtar
GET /v1/screen?symbols=Virgülle ayrılmış en fazla 25 sembol için toplu kararlarİsteğe bağlı anahtar
GET /v1/search?q=Ad veya sembolle hisse + ETF evrenini arayınİsteğe bağlı anahtar
GET /v1/screenerÖnceden taranmış dizinden duruma, ülkeye, sektöre, puana göre adlar bulunİsteğe bağlı anahtar
GET /v1/top-halalUyumluluk puanına göre en iyi helal hisseler, isteğe bağlı ülke/sektörİsteğe bağlı anahtar
GET /v1/stock/{symbol}/zakatBir varlık üzerindeki zekât (%2,5); intent=investment|tradingİsteğe bağlı anahtar
GET /v1/stock/{symbol}/purificationTemettü arındırma tutarı (gayrimeşru gelir payı × temettüler)İsteğe bağlı anahtar
GET /v1/stock/{symbol}/alternativesAynı sektördeki helal hisselerİsteğe bağlı anahtar
GET /v1/stock/{symbol}/historyZaman içinde uyumluluk durumu (günlük anlık görüntüler)İsteğe bağlı anahtar
GET /v1/fundamentals/{symbol}Çapraz doğrulanmış temel veriler (piyasa değeri, borç, nakit, gelir) alan bazlı kaynaklarlaİsteğe bağlı anahtar
GET /v1/ratios/{symbol}Tarama oranları (borç, nakit, gayrimeşru gelir) eşikler ve geçti/kaldı ileİsteğe bağlı anahtar
GET /v1/profile/{symbol}Şirket profili: ad, sektör, sanayi, iş özeti, para birimi, türİsteğe bağlı anahtar
GET /v1/dividends/{symbol}Türetilmiş temettü arındırma rakamları (gayrimeşru oran, arındırma %) + paketli kararİsteğe bağlı anahtar
GET /v1/financials/{symbol}Çok dönemli mali tablolar (gelir, bilanço, nakit akışı)Ücretli plan
GET /v1/compliance-changesYakın zamanda helal durumu değişen hisselerİsteğe bağlı anahtar
GET /v1/whale-watchBüyük İslami fonların elindekiler — helal akıllı parayı izleyinİsteğe bağlı anahtar
GET /v1/sectorsEvren genelinde sektöre göre helal-toplam dağılımıİsteğe bağlı anahtar
GET /v1/methodologyUygulanan tarama standardı, eşikler ve aşamalarYok
GET /v1/marketsKapsanan piyasalar ve sembol ekleriYok
POST /v1/signupHesabınızı oluşturun ve API anahtarı alınYok
GET /v1/portfolio · POST · DELETEAnahtarınıza bağlı bir varlık portföyünü kaydedin ve tarayınAnahtar gerekli
GET /v1/stock/{symbol}/multi-standardAAOIFI'ye karşı DJIM'e karşı toplam varlık bazına göre uyumlulukÜcretli plan
GET /v1/stock/{symbol}/custom-screenKendi borç/nakit/gayrimeşru eşiklerinizle yeniden tarayınÜcretli plan
GET /v1/compare?symbols=En fazla 4 sembolün yan yana uyumluluk karşılaştırmasıÜcretli plan
GET /v1/screen.csv?symbols=En fazla 100 sembol için kararların toplu CSV dışa aktarımı (symbol,name,status,score,as_of)Business planı
GET /v1/portfolio.csvKayıtlı her varlığın uyumluluk durumunun toplu CSV dışa aktarımıBusiness planı
GET/POST/DELETE /v1/webhookBİR uyumluluk-bildirim URL'si kaydedin; izlenen/sahip olunan bir hisse durum değiştirince {symbol,old_status,new_status,score,as_of} POST ederizBusiness planı

Piyasa kapsamı: ABD'de işlem gören hisseler tam desteklenir (SEC EDGAR + Yahoo + Finnhub). Körfez ve diğer uluslararası piyasalar en iyi çabayla, güvenilir veri bulunan yerlerde kapsanır; bir sayı doğrulanamadığında tahmin etmek yerine status 'unknown' veya verified=false döndürürüz.

Hız sınırları ve hatalar

Günlük kotanın yanı sıra dakika başına bir patlama sınırı da vardır: Pro = 300 istek/dk, Business = 600 istek/dk. Büyük işleri yayın — dakika sınırına takılmak gövdesinde "max N requests/minute on your plan" yazan bir 429 döndürür (günlük kota 429'undan farklı).

401

Anahtar gerektiren bir uç noktada eksik veya geçersiz API anahtarı.

402

Ücretsiz katman anahtarıyla yalnızca ücretli özellik çağrıldı. Planınızı yükseltin.

429

Günlük kota doldu veya dakika başına patlama sınırına ulaşıldı. Gövde hangisi olduğunu söyler. Bekleyin, anahtar alın veya planınızı yükseltin.

API anahtarınızı alın Fiyatları gör