enerji-mevzuat-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@enerji-mevzuat-mcpson 7 günde çıkan enerji mevzuatı değişikliklerini önem sırasıyla göster"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
enerji-mevzuat-takip
Türkiye elektrik ve enerji piyasası mevzuatını takip eden açık kaynak araç. Resmî Gazete'yi (asıl ve mükerrer sayılar) ve EPDK, EPİAŞ, ETKB ve TEİAŞ duyurularını tarar. Enerjiyle ilgili yeni düzenlemeleri bulur, değişen maddeleri ve yürürlük tarihlerini çıkarır, piyasa etkisine göre önem seviyesi verir.
İki şekilde kullanılır:
MCP sunucusu | Günlük e-posta | |
Ne alırsınız | Claude, Cursor gibi bir yapay zekâ asistanına "bu hafta hangi enerji mevzuatı çıktı?" diye sorarsınız | Her sabah 08:00'de önem sırasına dizilmiş Türkçe rapor e-postası |
API anahtarı | Gerekmez. Özeti ve yorumu kendi asistanınız yapar | Ücretsiz Gemini/Groq anahtarı (isteğe bağlı) + Gmail uygulama şifresi |
Kurulum | Tek satır yapılandırma | GitHub'da "Use this template" + 3 secret |
Nerede çalışır | Bilgisayarınızda, siz sorduğunuzda | GitHub Actions'ta, bilgisayarınız kapalıyken de |
Tüm bileşenler ücretsizdir (bkz. Maliyet).
Hukuki görüş veya yatırım tavsiyesi değildir. Bağlayıcı olan, Resmî Gazete'de ve kurum sitelerinde yayımlanan metindir.
Ne yapar
Kaynaklar: Resmî Gazete (HTML ve PDF), EPDK duyuruları, EPİAŞ elektrik piyasası duyuruları, ETKB duyuruları, TEİAŞ duyuruları (ETKB RSS adaptörü hazır ama varsayılan olarak kapalı). Ayrıntı: docs/SOURCES.md.
Enerji filtresi: Elektrik piyasası (PTF, SMF, GÖP, GİP, dengeleme, uzlaştırma, tarifeler, kapasite mekanizması, depolama), yenilenebilir enerji (YEKDEM, YEKA, lisanssız üretim, YEK-G), doğal gaz, petrol/LPG, karbon/ETS, enerji verimliliği, nükleer. Türkçe eklere dayanıklı kök eşleşmesi kullanır.
Rutin karar ayrımı: Resmî Gazete'de her gün çıkan tek şirkete özgü EPDK kararları (lisans tadili, önlisans süre uzatımı vb.) ayrı tutulur. Piyasa genelini etkileyen kararlar (fiyat limitleri, tarifeler, usul ve esaslar) öne çıkar.
Kural tabanlı çıkarım: değişiklik türü, değiştirilen mevzuat ve ilk yayımı, değişen maddeler, yürürlük ve uyum tarihleri. Her tarihin dayanağı yazılır:
kesin(metinde açık),hesaplanan(metindeki süreden),belirsiz. Tarih tahmin edilmez.Önem seviyesi (KRİTİK / YÜKSEK / ORTA / DÜŞÜK): KRİTİK için iki şart birlikte aranır: piyasa geneline etki ve aciliyet (30 gün içinde yürürlük). Gerekçesi her kayıtta yazar.
Güvenilirlik: Taranamayan günler sonraki çalıştırmada telafi edilir; aynı değişiklik iki kez bildirilmez; tarama eksikse açıkça söylenir; robots.txt kurallarına uyulur.
Related MCP server: Cernion Grid Intelligence
1. MCP sunucusu (anahtarsız)
Gereken tek şey uv. Sunucu, verisini
~/.enerji-mevzuat-takip/ altındaki bir SQLite dosyasında tutar.
Claude Desktop
Ayarlar → Geliştirici → Yapılandırmayı düzenle (claude_desktop_config.json):
{
"mcpServers": {
"enerji-mevzuat": {
"command": "uvx",
"args": ["--from", "enerji-mevzuat-takip[mcp]", "enerji-mevzuat-mcp"]
}
}
}Claude Code
claude mcp add enerji-mevzuat -- uvx --from "enerji-mevzuat-takip[mcp]" enerji-mevzuat-mcpDiğer istemciler (Cursor, VS Code, Windsurf…)
Aynı komutu stdio sunucusu olarak ekleyin: komut uvx, argümanlar
--from enerji-mevzuat-takip[mcp] enerji-mevzuat-mcp.
Paket henüz PyPI'de değilse doğrudan GitHub'dan çalıştırın:
uvx --from "git+https://github.com/karahanOS/enerji-mevzuat-takip" --with "mcp>=2,<3" enerji-mevzuat-mcpİsteğe bağlı ortam değişkenleri ("env": {...}): HTTP_USER_AGENT (kaynak sitelere kendinizi tanıtmak
için, ör. iletişim adresinizle), ENERJI_TAKIP_HOME (veri dizini). uvx bulunamadı hatası alırsanız command alanına tam yolu yazın (which uvx / where uvx).
Araçlar
Araç | Ne yapar |
| Kaynakları tarar, yeni değişiklikleri döndürür. 30 dakikada bir sınırlıdır. İlk kullanımda |
| Son N günün değişiklikleri, önem sırasıyla |
| Başlık ve tam metinde arama ("YEKDEM", "azami uzlaştırma fiyatı") |
| Değiştirilen mevzuat, maddeler, yürürlük tarihleri ve dayanakları, önem gerekçesi |
| Tam metin, parça parça |
| Her kaynağın erişim durumu ve son hatası |
| Herhangi bir metinden yürürlük/uyum tarihlerini kural tabanlı çıkarır |
Hazır istemler (prompts): gunluk_enerji_ozeti, mevzuat_analizi(degisiklik_id). Bu istemler, asistanın
yalnızca metne dayanmasını, hükümleri alıntıyla vermesini ve tarih tahmin etmemesini ister.
Örnek sorular: "Enerji mevzuatını güncelle ve bu haftanın önemli değişikliklerini özetle." · "YEKDEM'le ilgili son 3 ayda ne çıktı?" · "Dengeleme ve Uzlaştırma Yönetmeliği değişikliği ne zaman yürürlüğe giriyor?"
Beceri (skill): skill/enerji-mevzuat/SKILL.md, araçların hangi sırayla
kullanılacağını ve analiz kurallarını asistana öğretir. Claude'da beceri olarak yükleyebilir veya projenizin
talimatlarına ekleyebilirsiniz.
2. Günlük e-posta (GitHub şablonu)
Bilgisayarınız kapalıyken de her sabah rapor gelir.
Bu depoda Use this template → Create a new repository deyin ve deponuzu Private seçin. Özel depo önerilir: GitHub, 60 gün etkinlik olmayan herkese açık depolarda zamanlanmış işleri durdurur; özel depoda ise ayda 2.000 ücretsiz dakika vardır, bu iş ayda ~100–200 dakika kullanır.
Gmail uygulama şifresi alın: Google Hesabı → Güvenlik → 2 Adımlı Doğrulama'yı açın → "Uygulama şifreleri" bölümünden 16 haneli şifre oluşturun.
(İsteğe bağlı) ücretsiz AI anahtarı: Gemini için https://aistudio.google.com → "Get API key" (kredi kartı istemez). Yedek olarak Groq: https://console.groq.com/keys. Anahtar yoksa rapor AI özeti olmadan, kural tabanlı bilgilerle gelir.
Settings → Secrets and variables → Actions → New repository secret:
Secret
Değer
SMTP_USERNAMEGmail adresiniz
SMTP_PASSWORD16 haneli uygulama şifresi
EMAIL_TORaporun gideceği adres(ler), virgülle
GEMINI_API_KEY,GROQ_API_KEY(isteğe bağlı) AI anahtarları
EMAIL_CC,ADMIN_EMAIL(isteğe bağlı)
"Variables" sekmesine
HTTP_USER_AGENTekleyin, ör.enerji-mevzuat-takip/0.1 (iletisim: adresiniz@ornek.com).Actions → "Enerji mevzuatı – günlük tarama" → Run workflow. İlk denemede "E-posta gönderilsin mi?" kutusunu kapatabilirsiniz. Günlükte her kaynağın sonucunu görürsünüz.
Bundan sonra iş her gün 08:00'de (05:00 UTC) çalışır. Veri tabanı
veridalında tek commit olarak saklanır; depo büyümez.
Secret'lar tanımlı değilse iş ağa çıkmadan "atlandı" notuyla biter. Bu yüzden şablonun kendisinde veya kurulumu bitmemiş bir kopyada hata e-postası gelmez.
Kişiselleştirme: Yerelde enerji-takip init-config çalıştırın, oluşan config/ klasörünü düzenleyip
deponuza ekleyin. config/profile.yaml, AI'nın "benim açımdan önemi" bölümünü sizin ilgi alanlarınıza göre
yazmasını sağlar. config/ varsa varsayılanların yerine o dosyalar kullanılır.
3. Kendi bilgisayarınızda (CLI)
pip install "enerji-mevzuat-takip[mcp]" # veya: pipx install / uv tool install
enerji-takip init-config # ~/.enerji-mevzuat-takip/{config/,.env} oluşturur
# .env içine Gmail ve (isteğe bağlı) AI anahtarlarını yazın
enerji-takip check-config
enerji-takip check-llm # her ücretsiz sağlayıcıya 1 test isteği
enerji-takip check-sources --all # kaynaklara erişim ve ayrıştırma
enerji-takip test-email
enerji-takip run --no-send # rapor ~/.enerji-mevzuat-takip/data/raporlar/ altına yazılır
enerji-takip scheduler # her gün 08:00 (bilgisayar açık kalmalı)Uygulama dizini sırasıyla şöyle belirlenir: ENERJI_TAKIP_HOME ortam değişkeni → içinde config/ veya .env
bulunan çalışma dizini → ~/.enerji-mevzuat-takip.
Sürekli açık bir zamanlayıcı yerine işletim sisteminin zamanlayıcısını kullanabilirsiniz:
Linux/macOS'ta crontab ile 0 8 * * * enerji-takip run, Windows'ta Görev Zamanlayıcı ile her gün 08:00'de
enerji-takip run.
Komut | İşlev |
| Varsayılan |
| Eksik yapılandırmayı listeler (sırları göstermez) |
| Zincirdeki her ücretsiz sağlayıcıya küçük bir test isteği atar |
| Kaynaklara erişilip ayrıştırılabildiğini gösterir |
| Tek seferlik tarama ve rapor; |
| Test e-postası |
| Yerel sürekli zamanlayıcı (08:00, açılışta telafi, saatlik sağlık kontrolü) |
| Son günlük çalıştırma 26 saatten eskiyse çıkış kodu 1 |
Yerel Ollama ile tamamen çevrimdışı AI: ollama pull <model> ile bir model indirin, .env içinde
LLM_ANALYSIS_CHAIN=ollama:<model> ve LLM_TRIAGE_CHAIN=ollama:<model> yazın.
Yapılandırma
Tüm değişkenler .env.example dosyasında açıklamalı olarak durur. Öne çıkanlar:
Değişken | Açıklama |
| Sıralı yedek zincir. Varsayılan: |
| Belirsiz belgelerin ucuz ön elemesi. Varsayılan: |
| Günlük AI çağrı tavanı (varsayılan 40). |
| Yerel zamanlayıcı saati. GitHub Actions'ta saat iş akışındaki |
| Değişiklik olmayan günlerde de "değişiklik yok" e-postası gelsin mi (varsayılan evet). |
| Uygulama dizini (veri, rapor, |
Model adları sağlayıcıların 23.10.2026 tarihli listelerinden alındı. Sağlayıcılar modelleri zamanla değiştirir;
check-llm hata verirse güncel adı zincire yazın.
Maliyet — her bileşen ücretsiz
Bileşen | Ne için | Maliyet / lisans | Dikkat edilecekler |
MCP sunucusu | Asistan entegrasyonu | Ücretsiz; API anahtarı yok | Analizi kullandığınız asistan yapar; onun kendi kullanım koşulları geçerlidir. |
GitHub Actions | Günlük çalıştırma | Özel depoda ayda 2.000 dk ücretsiz | Bu iş günde birkaç dakika sürer. |
Gemini API | AI özeti (isteğe bağlı) | Ücretsiz katman, kredi kartı gerekmez | Ücretsiz katmanda Flash ve Flash-Lite modelleri var. Gönderilen içerik Google ürünlerini geliştirmek için kullanılabilir; buradaki içerik zaten kamuya açık mevzuat metni. |
Groq API | Yedek AI (isteğe bağlı) | Ücretsiz plan | Dakikalık token sınırı nedeniyle Groq'a giden metin 12.000 karakterle sınırlanır. |
Ollama | Yerel AI (isteğe bağlı) | Açık kaynak (MIT) | Bilgisayarınız açık olmalı. |
Gmail SMTP | E-posta | Ücretsiz | 2 Adımlı Doğrulama ve uygulama şifresi gerekir. |
SQLite + Python kütüphaneleri | Veri, ayrıştırma | Kamu malı / MIT / BSD / Apache / PSF | Bağımlılıkların yalnızca açık kaynak olduğunu bir test denetler. |
Kodda ücretli bir API çağrısı yoktur (bunu da bir test denetler). Sağlayıcı kotası dolarsa sıradaki ücretsiz sağlayıcıya geçilir; hepsi doluysa rapor AI olmadan gider ve analiz ertesi gün yeniden denenir.
Bilinen kısıtlamalar
Kaynak siteleri değişebilir. Ayrıştırıcılar gerçek sayfa yapısını taklit eden test verisiyle test edildi. Bir sitenin yapısı değişirse sistem sessizce boş dönmez, "EKSİK TARAMA" uyarısı verir.
check-sources --allile kontrol edin; sorun görürseniz issue açın.Resmî Gazete robots.txt: Sistem her taramada robots.txt iznini kendi kimliğiyle kontrol eder; izin yoksa taramaz ve bunu raporlar.
GitHub Actions IP'leri yurt dışındadır. Bazı kamu siteleri yurt dışı erişimi kısıtlayabilir. Böyle bir kaynak Actions'ta sürekli "erişilemedi" görünürse yerelde çalıştırın.
İzlenmeyen kaynaklar: EPDK kurul kararları listesi ve mevzuat.gov.tr JavaScript gerektiriyor (EPDK kararları Resmî Gazete'den izleniyor). EPİAŞ doğal gaz ve çevresel piyasa duyuruları varsayılan olarak kapalı;
check-sources --allile doğrulayıp açabilirsiniz.Rutin karar ayrımı ve önem seviyesi kural tabanlıdır. Rutin listesi her zaman bağlantılarıyla verilir.
Eski–yeni metin karşılaştırması yok. Değişen maddeler değişiklik metninden çıkarılır.
Geliştirme
git clone https://github.com/karahanOS/enerji-mevzuat-takip && cd enerji-mevzuat-takip
pip install -e ".[dev]"
python -m pytest tests -q # ağa çıkmaz; kaynaklar "TEST VERİSİ" etiketli fixture'larla taklit edilir
python -m enerji_takip.mcp_server # MCP sunucusunu kaynak koddan çalıştırmaMimari: docs/ARCHITECTURE.md · Veri tabanı: docs/DATABASE_SCHEMA.md · Testler: docs/TEST_RESULTS.md.
PyPI'ye yayımlama: pypi.org'da "Trusted Publisher" olarak bu depoyu ve publish.yml iş akışını tanımlayın
(ortam adı pypi). Sonra GitHub'da bir Release yayımlamanız yeterli; şifre gerekmez.
enerji-mevzuat-takip/
├── enerji_takip/
│ ├── mcp_server.py MCP sunucusu (anahtarsız)
│ ├── varsayilan/ sources.yaml · taxonomy.yaml · profile.yaml · env.example
│ ├── sources/ resmi_gazete.py · listing.py · rss.py · registry.py
│ ├── detection/ relevance.py (enerji filtresi, rutin ayrımı) · extract.py · engine.py
│ ├── analysis/ llm.py (ücretsiz sağlayıcı zinciri) · prompts.py · schema.py · analyzer.py
│ ├── reporting/ builder.py · mailer.py · templates/
│ └── classification.py · pipeline.py · scheduler.py · models.py · db.py · config.py · __main__.py
├── skill/enerji-mevzuat/SKILL.md
├── tests/
├── docs/
└── .github/workflows/ enerji-mevzuat-takip.yml (günlük) · tests.yml · publish.ymlEnglish summary
enerji-mevzuat-takip tracks Turkish energy and electricity market regulation (Official Gazette, EPDK, EPİAŞ, ETKB, TEİAŞ). It finds new energy-related legislation, extracts amended articles and effective dates (never guessed: each date is marked exact, computed or unknown), and ranks items by market impact.
MCP server, no API key:
uvx --from "enerji-mevzuat-takip[mcp]" enerji-mevzuat-mcp. Your own assistant (Claude, Cursor…) reads the texts and writes the summary. Tools:guncelle(scan),son_degisiklikler(recent changes),ara(search),degisiklik_detayi(details),mevzuat_metni(full text),kaynak_durumu(source status),yururluk_tarihlerini_cikar(effective-date extraction).Daily email: click "Use this template", make the repo private, add
SMTP_USERNAME,SMTP_PASSWORD,EMAIL_TO(optionally a freeGEMINI_API_KEY) as secrets. GitHub Actions emails a Turkish report every day at 08:00 Istanbul time.Everything is free; the code calls no paid APIs. Not legal or investment advice.
Lisans
This server cannot be deployed
Maintenance
Related MCP Connectors
Turkey & EU business data: validation, sanctions screening, parsing, FX and fuel price history
Same-day regulatory updates from financial regulators worldwide — banking, payments, digital assets and crypto From the EU, UK and US to emerging markets across Asia, Africa, the Middle East and Latin America: every circular, rule, consultation and guidance, captured the day it appears, translated to English, summarised, and linked to the regulator's original—on the site, by email, or inside your AI agent. Search free; full document with original file, lineage, full text, and English translation—$0.05.
US Federal Register for AI agents: rules, notices, executive orders, agency lookup. No keys.
US Federal Register for AI agents: rules, notices, executive orders, agency lookup. No keys.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides programmatic access to Turkey's Ministry of Justice Legislation Information System (mevzuat.gov.tr), enabling users to search legislation, retrieve article hierarchies, and fetch article contents in Markdown format through natural language.1MIT
- AlicenseNot gradedqualityAmaintenance87+ specialized tools for German and European energy data. Direct AI access to Marktstammdatenregister (MaStR), ENTSO-E, Redispatch 2.0, and Grid Operations for utilities and datacenters.2GPL 3.0
- AlicenseNot gradedqualityAmaintenanceEnables MCP-compatible AI clients to research official Turkish legal sources locally by searching judicial decisions, legislation, and Constitutional Court decisions, and by retrieving legal documents, individual articles, and legislation structures.MIT
- AlicenseBqualityBmaintenanceConnects AI clients to public Turkish legislation and court/board decisions, letting users search and retrieve legal texts, case law, and institutional rulings, and generate petition drafts and UYAP UDF files.20MIT