VeriTR

VeriTR

MCP server that unifies official Turkish open data sources into a single interface, letting AI agents query and compare normalized indicators like population, inflation, and GDP through natural language.

Category
访问服务器

README

🇹🇷 VeriTR

Türkiye'nin verisi. Yapay zekânın bağlamı.

VeriTR, Türkiye'deki resmi ve açık veri kaynaklarını Claude, ChatGPT, Gemini ve diğer AI agent'ların kullanabileceği tek bir Model Context Protocol (MCP) sunucusunda birleştiren açık kaynaklı bir projedir.

TÜİK'ten nüfus, TCMB'den ekonomik göstergeler, İBB'den İstanbul'un şehir verileri; ilerleyen sürümlerde SGK'dan istihdam, YSK'dan seçim… Kaynağı aramak yerine soruyu sorun.

Python MCP License: MIT PyPI test Docker


Neden VeriTR?

Türkiye'nin kamu verisi dağınıktır. Nüfus TÜİK'te, enflasyon ve konut fiyatları TCMB'de, istihdam SGK'da, bütçe Hazine'de, seçim sonuçları YSK'da, şehir verileri onlarca ayrı belediye portalında durur. Her kurumun kendi arayüzü, kendi kod sistemi, kendi tarih biçimi ve kendi "il" tanımı vardır. Bir soruya cevap vermek için önce hangi kurumun hangi tabloyu tuttuğunu bilmek gerekir.

Bu yük, bugün bir AI agent'ın üzerine yıkılıyor. Agent ya veriyi bulamıyor ya da ezberinden — kaynaksız ve çoğu zaman yanlış — cevap veriyor.

VeriTR bu kaynakları AI agent'lar için tek bir MCP arayüzünde birleştirir. Kurum isimleri yerine normalize göstergeler (population.total, economy.cpi), kurum kodları yerine ortak coğrafya ve tarih modeli, ve her sonucun yanında hangi kurumun hangi veri setinden geldiği bulunur.


💬 VeriTR ile neler sorabilirsiniz?

"İstanbul'un nüfusu son 20 yılda nasıl değişti?"

"Türkiye'deki genç işsizlik oranının son 15 yıllık değişimini göster."

"2025'te nüfusu en fazla olan 10 şehri sırala."

"İstanbul, Ankara ve İzmir'in nüfus artış hızını karşılaştır."

"Türkiye'de araç sayısı en fazla olan illeri bul."

"Kişi başına düşen geliri en yüksek ve en düşük illeri karşılaştır."

"Doğurganlık hızı Türkiye'de son 15 yılda nasıl değişti?"

"Güneydoğu Anadolu ile Ege'nin kişi başı gelirini karşılaştır."

"Türkiye'nin sera gazı emisyonları 1990'dan bu yana nasıl arttı?"

"İstanbul'da trafik kazası duyurularını içeren veri setini bul ve göster."

"İzmir'in açık veri portalında ulaşımla ilgili neler var?"

"Konut fiyat endeksi ile TÜFE'yi 2015'ten bu yana karşılaştır."   ← TCMB anahtarı ister

Agent gerekli göstergeleri kendisi bulur, verileri VeriTR üzerinden çeker, dönemleri eşleştirir ve kaynağıyla birlikte cevap üretir.


🚀 5 Dakikada Başla

Claude Desktop / Claude Code

claude_desktop_config.json dosyanıza ekleyin:

{
  "mcpServers": {
    "veritr": {
      "command": "uvx",
      "args": ["veritr-mcp"]
    }
  }
}

Hepsi bu. API anahtarı gerekmez — TÜİK verileri anahtarsız çalışır.

TCMB'nin finansal serilerini de istiyorsanız evds2.tcmb.gov.tr adresinden ücretsiz bir anahtar alın:

{
  "mcpServers": {
    "veritr": {
      "command": "uvx",
      "args": ["veritr-mcp"],
      "env": {
        "EVDS_API_KEY": "buraya-anahtarınız"
      }
    }
  }
}

Terminal

uvx veritr-mcp

veya:

pip install veritr-mcp

Kaynaktan

git clone https://github.com/veritr/veritr-mcp.git
cd veritr-mcp
uv sync
uv run veritr-mcp

Remote MCP

Coming soon — hosted sunucu henüz yayında değil. Kendi sunucunuzu çalıştırmak isterseniz:

docker compose up -d
# MCP: http://localhost:8000/mcp
# Health: http://localhost:8000/health

🏗️ Mimari

flowchart LR
    A[Claude / ChatGPT / Gemini] --> B[VeriTR MCP]
    B --> C[Unified Data Layer]
    C --> D[TÜİK]
    C --> E[TCMB]
    C --> J[Belediyeler<br/>İBB · İzmir · Konya]
    C -.-> F[SGK]
    C -.-> G[HMB]
    C -.-> H[YSK]
    C -.-> I[MGM]

Kesikli çizgiler yol haritasındaki kaynakları gösterir.

VeriTR iki erişim yolu sunar ve hangisinin doğru olduğunu tool açıklamaları anlatır:

  • Normalize gösterge (get_series) — ulusal, karşılaştırılabilir seriler. population.total kimin yayımladığından bağımsızdır.
  • Ham veri seti kataloğu (search_datasetsget_dataset) — belediye verileri ve henüz normalize edilmemiş kurum veri setleri. Belediye verisi bilinçli olarak gösterge namespace'ine zorlanmaz: "metro yolcu sayısı" ile "ağaç envanteri" ortak bir modele oturmaz, oturtmaya çalışmak veriyi çarpıtır.

CKAN belediye açık verisinde fiilî standart olduğu için yeni bir şehir eklemek tek satırlık bir tablo kaydıdır — adapter kodu değişmez.

Verinin izlediği yol:

Resmi Kaynaklar          TÜİK .Stat API, TCMB EVDS, İBB CKAN, …
       ↓
Provider Adapters        her kurum için bağımsız, izole edilmiş adapter
       ↓
Normalization            coğrafya (81 il), dönem, frekans, birim
       ↓
Indicator Registry       population.total, economy.cpi, …
       ↓
MCP Tools                search_indicators, get_series, compare_series, …
       ↓
AI Agents

Bir kaynağın çökmesi diğerlerini etkilemez: TÜİK erişilemezse agent bunu provider_unavailable olarak görür ve diğer kaynaklara erişmeye devam eder.


🧰 Tool'lar

Tool Ne işe yarar Örnek
search_indicators Doğal dille gösterge bulur. get_series'ten önce kullanılır. search_indicators("işsizlik")
get_series Bir göstergenin zaman serisini getirir. En temel tool. get_series("population.total", geography="TR-34", start_date="2015")
get_snapshot Tek bir dönemde tüm illeri sıralar. get_snapshot("population.total", date="2025", top=10)
compare_regions Bir göstergeyi birkaç ilde karşılaştırır. compare_regions("population.total", regions=["TR-34","Ankara","35"])
compare_series Birkaç göstergeyi — farklı kurumlardan olsa da — yan yana koyar. compare_series(["economy.cpi","housing.house_price_index"], normalize=True)
analyze_series Deterministik istatistik: artış hızı, hareketli ortalama, endeksleme. analyze_series("population.total", operations=["growth_rate"])
get_metadata Bir göstergenin birimi, frekansı, ayarlanabilir boyutları ve kaynağı. get_metadata("population.median_age")
search_datasets Ham veri setlerinde arama — İstanbul'a dair şehir soruları buradan. search_datasets("metro yolcu")
get_dataset Bulunan ham veri setinin sütunlarını ve satırlarını okur. get_dataset("hourly-public-transport-data-set")
get_sources Tüm kaynakların canlı durumu. get_sources()

Coğrafya her biçimde kabul edilir — ülke (TR, Türkiye), 81 il (TR-34, 34, İstanbul, istanbul, TR100), 12 İBBS Düzey-1 bölgesi (TR9) ve 26 Düzey-2 alt bölgesi (TRC1 → Gaziantep, Adıyaman, Kilis).

Dönem de öyle: 2024, 2024-Q1, 2024-01, 2024M01, 01-2024, 15.01.2024.


📊 Kaynaklar

Kaynak Veri Durum API Key
TÜİK Nüfus, demografi, doğurganlık, işgücü, eğitim, ulaşım, dış ticaret, bölgesel GSYH, çevre Hayır
TCMB EVDS TÜFE, ÜFE, konut fiyat endeksi, döviz, faiz Evet
İBB Açık Veri İstanbul: ulaşım, trafik, çevre, kültür, altyapı (~560 veri seti) Hayır
İzmir BB Açık Veri İzmir: ulaşım, çevre, şehir hizmetleri (~256 veri seti) Hayır
Konya BB Açık Veri Konya: ulaşım, altyapı, şehir hizmetleri (~233 veri seti) Hayır
SGK Sosyal güvenlik ve istihdam 🗺️
HMB Bütçe ve kamu maliyesi 🗺️
SBB Ekonomik ve sosyal göstergeler 🗺️
YSK Seçim sonuçları ve katılım 🗺️
MGM Meteoroloji 🗺️
Sağlık Bakanlığı Hastane, personel, sağlık göstergeleri 🗺️
Enerji Bakanlığı Elektrik üretimi, yenilenebilir enerji 🗺️
Ticaret Bakanlığı İthalat, ihracat 🗺️
Diğer belediyeler Ankara, Bursa, Antalya, Kocaeli, Gaziantep 🗺️
Eurostat / OECD / World Bank Uluslararası karşılaştırma 🗺️
✅ Destekleniyor    🚧 Geliştiriliyor    🗺️ Yol haritasında

Bugün 33 normalize gösterge (nüfus, doğurganlık, hanehalkı, işgücü, eğitim, ulaşım, dış ticaret, GSYH, çevre, fiyatlar, döviz) ve ~1400 aranabilir ham veri seti (TÜİK 367 + üç belediye ~1050) mevcut. Her göstergenin her coğrafya seviyesinde gerçekten veri döndürdüğü günlük canlı testlerle doğrulanıyor.

Registry sürekli genişliyor — katkı vermek kolay.


🔎 Veriler nereden geliyor?

VeriTR herhangi bir resmi kurum değildir ve veri üretmez.

Veriler ilgili kurumların kendi resmi/açık kaynaklarından, herkese açık arayüzleri üzerinden alınır. VeriTR yalnızca üç şey yapar: erişim, standardizasyon ve agent entegrasyonu.

Her sonuç şu bilgileri taşır:

{
  "source": {
    "provider": "tuik",
    "institution": "Türkiye İstatistik Kurumu",
    "dataset": "TR,DF_ADNKS_T30,1.1",
    "retrieved_at": "2026-08-11T12:08:55+00:00",
    "official_url": "https://databrowser2.tuik.gov.tr/vizualize.html?..."
  }
}

Böylece agent "TÜİK'e göre…" diyebilir ve kullanıcı aynı veriyi kurumun kendi sitesinde doğrulayabilir.

Verilerin güncelliği, doğruluğu ve kullanım koşulları tamamen ilgili kaynak kuruma bağlıdır. VeriTR'nin MIT lisansı yalnızca bu deponun kodunu kapsar; kurumlardan alınan verileri kapsamaz.

Dürüstlük ilkeleri

VeriTR veriyi sessizce değiştirmez:

  • Frekans uyumsuzluğu gizlenmez. Aylık TÜFE ile yıllık nüfusu karşılaştırırsanız uyarı alırsınız; arka planda sessiz bir toplulaştırma yapılmaz.
  • Kırpma duyurulur. Sonuç listesi kısaltıldıysa kaç kaydın düştüğü açıkça söylenir.
  • Eksik veri uydurulmaz. Kurum bir değeri yayımlamamışsa null döner, interpolasyon yapılmaz.
  • Veri sınırları yazılıdır. Kurum bir göstergeyi yalnızca son yıl için yayımlıyorsa bu, göstergenin açıklamasında söylenir — agent "veri yok" sanmaz.
  • Korelasyon nedensellik değildir. Korelasyon çıktısı bu uyarıyı her zaman taşır.

⚠️ Sorumluluk Reddi

VeriTR; TÜİK, TCMB, SGK veya diğer kamu kurumlarıyla bağlantılı değildir, bu kurumlar tarafından desteklenmemekte veya onaylanmamaktadır. Tüm kurum adları ve markalar ilgili sahiplerine aittir.


🗺️ Yol Haritası

v0.1 — ✅ TÜİK + TCMB EVDS · normalize gösterge registry'si · search_indicators, get_series, get_metadata, compare_series, compare_regions, get_snapshot, analyze_series · cache · CSV/JSON export · Docker + Streamable HTTP

v0.2 — SGK · Hazine ve Maliye Bakanlığı · genişletilmiş gösterge kataloğu · hosted Remote MCP

v0.3 — YSK (seçim) · MGM (meteoroloji) · Sağlık Bakanlığı · Enerji Bakanlığı

v0.4 — Kalan belediye adapter'ları (Ankara, Bursa, Antalya, Kocaeli, Gaziantep) — İstanbul, İzmir ve Konya v0.1'de geldi

v1.0 — Uluslararası karşılaştırma (Eurostat, OECD, World Bank, IMF, ILOSTAT) · VeriTR Explorer · stabil API

Ayrıntılar ve tekil görevler için issue'lara bakın.


🤝 Katkı

VeriTR'nin büyümesinin ana yolu topluluk provider'ları. Yeni bir kurum eklemek kasıtlı olarak kolay tutuldu: bir adapter sınıfı, bir YAML gösterge dosyası ve fixture'lı testler.

📖 docs/ADDING_A_PROVIDER.md — adım adım rehber 📋 CONTRIBUTING.md — geliştirme akışı ve kalite ölçütleri 🔒 SECURITY.md — güvenlik açığı bildirimi

uv sync
uv run pytest              # offline testler
uv run pytest -m live      # kurumların canlı API'lerine karşı
uv run ruff check src tests
uv run mypy

📄 Lisans

Kod MIT lisansıyla dağıtılır. Kurumlardan alınan veriler bu lisansın kapsamı dışındadır ve kendi kullanım koşullarına tabidir.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选