zirve-finansman-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., "@zirve-finansman-mcp 2024 yılı mizanını ana hesap seviyesinde 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.
zirve-finansman-mcp
Zirve Finansman'ın genel muhasebe verisini yapay zekâ ajanlarına açan, salt okunur bir MCP sunucusu. Zirve'nin MSSQL veritabanına bağlanır. Ajan hesap planını, fişleri, yevmiye satırlarını ve demirbaş kartlarını okur, mizan ve muavin alır.
Ön muhasebeyi başka bir sistemde tutup resmî defteri Zirve'de işleyen şirketler için yazıldı. İki sistemi de gören bir ajan, eksik ya da tutarı uyuşmayan kayıtları kendisi bulur.
Unofficial bir projedir. Zirve Yazılım'la bir bağı yoktur, Zirve Yazılım tarafından desteklenmez. "Zirve" adı sahibinin markasıdır.
Araçlar
Araç | İşlevi |
| Firmaları, kayıt bulunan yılları ve boş yılları listeler |
| Hesap planında ada, kod ön ekine veya VKN/TCKN'ye göre arar |
| Hesap bazında borç, alacak ve bakiye verir (detay ya da ana hesap seviyesinde, tarih aralığıyla) |
| Bir hesabın hareketlerini devreden ve yürüyen bakiyeyle verir |
| Yevmiye satırlarını evrak no, VKN, açıklama, hesap, tutar ve tarihe göre arar |
| Fiş başlıklarını listeler, belli bir tarihten sonra kaydedilenleri süzer |
| Bir fişi başlığı ve satırlarıyla getirir (satırlar sayfalı) |
| Demirbaş kartlarını ada, koda, alış tarihine ve satış durumuna göre arar |
| Bir demirbaş kartını yıllık değerleme ve amortisman satırlarıyla getirir |
Araçların hiçbiri veri yazmaz. Serbest SQL çalıştıran bir araç da bilerek eklenmedi.
Related MCP server: SPIP SQL MCP Server
Kurulum
Python 3.10 veya üstü, uv ve Zirve'nin SQL Server'ına ağ erişimi gerekir.
1. Salt okunur bir SQL kullanıcısı açın
Sunucuyu Zirve'nin kendi SQL kullanıcısıyla ya da sa ile çalıştırmayın. Verinin değişmeyeceğini
veritabanı yetkisi garanti etmeli. sql/create_readonly_login.sql
betiğini bir SQL yöneticisine çalıştırtın. Betik yalnızca SELECT yetkisi olan bir kullanıcı açar.
2. Bağlantı bilgisini bulun
Zirve çoğu kurulumda ZRVSQL2014 gibi adlandırılmış bir instance ve dinamik bir TCP portu kullanır.
Portu sunucuda şu sorguyla görürsünüz:
SELECT DISTINCT local_tcp_port FROM sys.dm_exec_connections WHERE local_tcp_port IS NOT NULL;Dinamik port, SQL servisi yeniden başlayınca değişebilir. İki çözümü var: SQL Server Configuration
Manager'dan sabit port verin ya da ZIRVE_SERVER değerini HOST\INSTANCE biçiminde yazın. İkinci yol
için sunucuda SQL Browser servisi çalışmalı ve UDP 1434 açık olmalı.
3. MCP istemcisine ekleyin
{
"mcpServers": {
"zirve": {
"command": "uvx",
"args": ["zirve-finansman-mcp"],
"env": {
"ZIRVE_SERVER": "192.0.2.10",
"ZIRVE_PORT": "1433",
"ZIRVE_USER": "zirve_mcp_ro",
"ZIRVE_PASSWORD": "parolanız",
"ZIRVE_FIRMA": "FIRMA_ADI"
}
}
}
}Paketi PyPI yerine doğrudan depodan çalıştırmak için args değerini şöyle yazın:
["--from", "git+https://github.com/yibudak/zirve-finansman-mcp", "zirve-finansman-mcp"]Ortam değişkenleri
Değişken | Açıklama |
| Sunucu adresi veya |
| TCP portu. Instance adı yazdıysanız gerekmez |
| Salt okunur SQL kullanıcısı ve parolası |
| Varsayılan firma. Zirve giriş ekranındaki "Firma Tanıtıcı Adı" |
| Sorgu zaman aşımı, saniye cinsinden. Varsayılan 30 |
Bilmeniz gerekenler
Kapsam genel muhasebe ve demirbaş kartlarıyla sınırlı. Ticari modül (fatura, stok, cari kartlar), bordro ve beyannameler okunmaz.
Demirbaş kartları firmanın _GENEL veritabanında durur. Yetki betiği o veritabanında yalnızca iki demirbaş
tablosunu açar. Yıllık amortisman satırlarını Zirve, Demirbaşlar > Raporlar ekranı çalıştırıldığında üretir.
Bazı yıllar eksik ya da eski kalabilir, kesin tutar için muhasebe kaydına bakın.
Sorgular kilit almadan okur (READ UNCOMMITTED). Bu sayede muhasebe programı hiç beklemez. Bedeli şu:
o anda kaydedilmekte olan bir fişi yarım görebilirsiniz.
Zirve tutarları float olarak saklar. Sunucu sonuçları kuruşa yuvarlar.
mizan ve muavin araçları, Zirve'nin "kapanış fişi hariç" mizanı gibi kapanış fişini varsayılan olarak
saymaz. Kapanış fişi kapanis_dahil ile dahil edilirse kapanmış yıllarda bütün bakiyeler sıfır çıkar.
Metin aramaları büyük-küçük harf ve Türkçe karakter ayrımı gözetmez: "CIVATA", "civata" ve "CİVATA" aynı kayıtları bulur.
Zirve'de bir fiş düzeltilince Refno değişir. Fişi sonradan yeniden bulmak için Fisno kullanın.
Proje, Zirve Finansman V9 ve SQL Server 2014 üzerinde denendi.
Şema notları
Zirve veritabanı şemasını belgelemiyor. Çalışan bir kurulumu inceleyerek çıkardığım notlar
docs/zirve-sema.md dosyasında: veritabanlarının düzeni, çekirdek tablolar, kod
alanlarının anlamları. Hangi bilginin doğrulandığı, hangisinin veriden çıkarıldığı orada işaretli.
Geliştirme
uv sync
uv run pytest
uv run ruff check .
uv run ruff format --check .Testler veritabanı gerektirmez. Katkı için ayrıntılar CONTRIBUTING.md dosyasında.
Güvenlik
Bir güvenlik açığı bulursanız herkese açık issue açmayın. GitHub'daki "Report a vulnerability" bağlantısından özel olarak bildirin. Ayrıntılar SECURITY.md dosyasında.
Lisans
AGPL-3.0-or-later. Sunucuyu değiştirip ağ üzerinden başkalarına kullandırırsanız değiştirdiğiniz kaynak kodu da aynı lisansla paylaşmanız gerekir.
Available Tools
9 toolsdemirbas_araARead-only
Demirbaş (sabit kıymet) kartlarında arama yapar. Kartlar yıldan bağımsızdır, yil parametresi yoktur.
arama: demirbaş adında geçen metin. kod_on_eki: demirbaş kodu başlangıcı (çoğu kurulumda kod, demirbaşın muhasebe hesap koduyla aynıdır; ör. "253", "254.01"). durum: "hepsi", "aktif" (satılmamış) veya "satilan". alis_baslangic/alis_bitis: alış tarihi aralığı. toplam alanı sayfalamadan bağımsız adet ve alış tutarıdır. HesapKodu demirbaşın muhasebe hesabıdır; hareketleri için muavin(hesap_kodu=...) kullanın.
Inputs: arama, durum, firma, limit, +4 more.
demirbas_getirARead-only
Bir demirbaş kartını yıllık değerleme ve amortisman satırlarıyla getirir.
kod: demirbaş kodu (demirbas_ara sonucundaki Kod). yillar: her yıl için dönem başı değer, yeniden değerleme, dönem amortismanı (DonemAmortismani), birikmiş amortisman ve devreden net değer. Dikkat: yıllık satırları Zirve, Demirbaşlar > Raporlar ekranı çalıştırıldığında üretir; bazı yıllar eksik ya da güncel olmayabilir. Kesin tutar için muhasebe kaydına (muavin) bakın.
Inputs: kod (required), firma.
firmalari_listeleBRead-only
Zirve'deki firmaları listeler: yillar yevmiye kaydı bulunan, bos_yillar veritabanı olup boş olan yıllar.
Inputs: no named parameters.
fis_getirARead-only
Tek bir muhasebe fişini başlığı ve yevmiye satırlarıyla getirir (satırlar sayfalıdır).
refno: fişin Refno değeri (yevmiye_ara, muavin ve fisleri_listele sonuçlarında bulunur). satir_sayisi fişteki toplam satırdır; devami_var ise sonraki_offset ile devam edin. Not: Zirve'de bir fiş düzeltildiğinde Refno değişir; kalıcı referans olarak Fisno kullanın.
Inputs: refno (required), yil, firma, limit, +1 more.
fisleri_listeleARead-only
Muhasebe fişlerinin başlıklarını listeler (en son kaydedilen önce).
baslangic/bitis: fiş tarihi aralığı. kayit_tarihinden_sonra: kayıt zamanı (Kayittarihi) bu andan sonra olan fişler; YYYY-AA-GG ya da saatle YYYY-AA-GG SS:DD:SS. "Son kontrolden beri ne girildi" sorusu için. fis_no: fiş numarası (baştaki sıfırlar olmadan da verilebilir). kullanici: fişi kaydeden Zirve kullanıcısı (Ozkod). Btop/Atop fişin borç/alacak toplamıdır. Satırlar için fis_getir kullanın.
Inputs: yil, bitis, firma, limit, +5 more.
hesap_araARead-only
Hesap planında arama yapar (cari hesaplar dahil; ör. 120=alıcılar, 320=satıcılar).
arama: hesap adında geçen metin (büyük-küçük harf ve Türkçe karakter ayrımı gözetmez). kod_on_eki: hesap kodu başlangıcı (ör. "120" veya "320.01"). vergi_no: hesaba tanımlı VKN/TCKN. sadece_detay: yalnızca kayıt girilebilen alt hesaplar. Hesap kartlarının çoğunda VKN boştur; vergi_no ile sonuç çıkmazsa yevmiye_ara(vergi_no=..., hesap_on_eki="120" veya "320") ile carinin hesap kodunu yevmiye satırlarından bulun.
Inputs: yil, arama, firma, limit, +4 more.
mizanARead-only
Mizan: hesap bazında borç/alacak toplamları ve bakiye (yevmiye satırlarından hesaplanır).
kod_on_eki: yalnızca bu kodla başlayan hesaplar (ör. "120"). baslangic/bitis: fiş tarihi aralığı (boşsa tüm yıl; açılış fişi 1 Ocak tarihlidir). seviye: "detay" (alt hesap) veya "ana" (ilk 3 hane). Bakiye = Borc - Alacak (pozitif borç bakiyesi). toplam alanı sayfalamadan bağımsız genel toplamdır. kapanis_dahil: Zirve'nin "kapanış fişi hariç" mizanı gibi, varsayılan olarak kapanış fişi (Fistur 9) sayılmaz; True verilirse kapanmış yıllarda tüm bakiyeler sıfırlanır.
Inputs: yil, bitis, firma, limit, +6 more.
muavinARead-only
Muavin (hesap ekstresi): tek bir hesabın hareketleri ve yürüyen bakiyesi.
hesap_kodu: tam hesap kodu (ör. "120.00010"; hesap_ara ile bulunur). baslangic verilirse o tarihten önceki hareketler "devreden" olarak özetlenir. Bakiye pozitifse borç, negatifse alacak bakiyesidir. kapanis_dahil: mizan ile tutarlı olsun diye kapanış fişi (Fistur 9) varsayılan olarak sayılmaz; True verilirse kapanmış yılda kapanış bakiyesi sıfır çıkar. Ana hesap ya da olmayan kod verilirse hata döner.
Inputs: hesap_kodu (required), yil, bitis, firma, +4 more.
yevmiye_araARead-only
Yevmiye satırlarında arama yapar; dış sistem kayıtlarını Zirve'de bulmak için ana araçtır.
evrak_no: fatura/belge numarasında geçen metin. vergi_no: satırdaki VKN/TCKN (tam eşleşme). aciklama: satır açıklamasında geçen metin (büyük-küçük harf ve Türkçe karakter ayrımı gözetmez). hesap_on_eki: hesap kodu başlangıcı (ör. "120", "600"). tutar_min/tutar_max: satırın TL tutarı (borç veya alacak); tam tutar için ikisine aynı değeri verin. baslangic/bitis: fiş tarihi aralığı. En az bir filtre verin.
Inputs: yil, bitis, firma, limit, +8 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 9 tools
The tools mostly target distinct resources and actions: company listing, voucher headers, voucher detail, journal-line search, account search, trial balance, ledger, and fixed assets. There is some potential overlap among fisleri_listele, yevmiye_ara, and fis_getir, and between mizan and muavin, but the descriptions clarify header/line/detail and balance/statement scopes.
Most names follow a readable Turkish object_action pattern in snake_case, such as firmalari_listele, hesap_ara, yevmiye_ara, and fis_getir. The bare report nouns mizan and muavin are minor deviations but still fit the accounting domain.
Nine tools is well-scoped for a finance/accounting query server, with each tool covering a distinct reporting or lookup need. There is no obvious redundant or bloated tool surface.
The surface covers core read-only finance workflows: companies, voucher listing/detail/search, account search, trial balance, ledger, and fixed assets. It lacks write operations and broader finance modules such as invoice or current-account management, but as a reporting/query MCP it is largely complete.
Maintenance
Related MCP Connectors
Read-only finance and operations controls for AI agents with evidence and safe next actions.
Read-only finance MCP server. Connects your banks, cards, payment apps, books and payroll into one ledger for your AI. Can't move money. Open source (AGPL-3.0), free during beta.
Read-only by architecture: ask AI about QuickBooks, Xero and NetSuite, across every entity.
AI accounting: ask about your live AccountsOS books in plain English. Read-only tools for transactions, cash balances, invoices, bills, VAT, filing deadlines and reports across 32 countries. OAuth sign-in; free 14-day trial at accounts-os.com.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceA read-only MCP server for the NuMetric.work accounting/POS/ERP platform, exposing 38 tools to query live business data such as financial statements, invoices, taxes, projects, inventory, and documents. It enables AI assistants to answer from real accounting data without any create, edit, or delete capabilities.MIT
- AlicenseNot gradedqualityDmaintenanceProvides read-only Microsoft SQL Server database access to AI agents with row-level security, enabling SELECT queries, table metadata, and schema introspection through MCP.23 npmMIT
- AlicenseNot gradedqualityDmaintenanceA read-only MCP server for Microsoft SQL Server that enables AI agents to safely explore and query SQL Server databases.1,560 npmMIT
- FlicenseNot gradedqualityCmaintenanceEnables governed, read-only SQL analytics, hybrid RAG knowledge search, financial metric calculation, and database schema introspection through MCP, with role-based access control, audit logging, and AI observability.-