Fonzip

io.github.ubaranzorlu由 GitHub 帳號 ubaranzorlu 發布v0.1.2更新於 Oct 25, 2026

Dernek ve vakiflar icin Fonzip API v2 MCP sunucusu: bagis, uye, aidat ve etkinlik verileri.

概覽

AI 產生的概覽

本機 MCP 伺服器,讓 AI 助理透過 Fonzip API v2 存取公益團體的捐款、會員、會費、活動與募款活動資料。

可以做什麼
透過 fonzip_system 操作讀取與管理機構資訊、付款系統、銀行帳戶與行銷管道,並透過 fonzip_users 操作處理會員與捐款人紀錄、時間軸、標籤與名單。處理捐款、捐款類別、小額捐款、捐款頁面與表單,以及定期捐款的金額、卡片變更與取消。管理會費訂閱與欠款,以及活動、票券和票券銷售。管理募款活動、活動子活動與團隊,並管理表單與表單回覆、電子賀卡及其交易、標籤、訊息範本、Webhook 與聯絡許可。
適用情境
適合已在 Fonzip 上運作的協會與基金會,希望在 Claude Code、Claude Desktop、Cursor、VS Code 或 Codex 等支援 MCP 的用戶端中,讓助理查詢或更新捐款人、捐款、會費、活動與募款紀錄。
執行需求
透過 npx 在本機執行,需要 Node.js 20 或更新版本。需要 Fonzip API 的 client id 與 client secret,在 Fonzip 的「設定 > 進階 > Fonzip API」中建立,並以 FONZIP_CLIENT_ID 與 FONZIP_CLIENT_SECRET 提供;也可改用現成的 FONZIP_ACCESS_TOKEN。選用設定包括 API 位址、schema 模式、權杖快取路徑、逾時、重試次數與 User-Agent。需要能連線至 Fonzip API 的網路。
安裝前請注意
伺服器開放全部 CRUD 操作,刪除無法復原;含刪除的工具會標示為破壞性,用戶端可能要求確認,若只需讀取建議使用唯讀權限的 API 金鑰。回應可能包含姓名、電子郵件、電話、身分證號與 IBAN,這些會傳給 MCP 用戶端與所用模型,需自行評估資料保護義務。client secret 屬於憑證,請留意 shell 引號錯誤與共用設定外洩。Fonzip 同時只簽發一個權杖,關閉權杖快取後重新啟動可能一小時內無法取得權杖。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Fonzip,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

fonzip-mcp

Fonzip API v2 için Model Context Protocol sunucusu

Dernek ve vakıfların bağış, üye, aidat, etkinlik ve kampanya verilerine AI ajanlarından erişim.

[npm] [CI] [License: MIT] [MCP Registry]


Bağımsız bir açık kaynak projesidir; Fonzip Yazılım A.Ş. tarafından geliştirilmemiş, desteklenmemekte ve onaylanmamaktadır.

Claude Code, Claude Desktop, Cursor, VS Code, Codex ve MCP destekleyen diğer istemcilerin Fonzip verilerinize doğrudan erişmesini sağlar.

Sen:    Bu ay kaç düzenli bağışçı kaydolmuş, toplam ne kadar?Ajan:   [fonzip_donations / list çağrılır]        Ağustos'ta 34 yeni düzenli bağışçı, aylık toplam 41.250 TL.
  • 13 tool, Fonzip API v2'nin 113 operasyonunu kapsar
  • Tool tanımları OpenAPI spec'inden otomatik üretilir — elle senkron tutulmaz
  • OAuth2 client_credentials, token'ı süreçler arası saklama dahil
  • Türkçe hata mesajları; hatalı çağrıda beklenen şema modele geri döner

Kurulum

Node.js 20 veya üstü gerekir. Önce Fonzip'te Ayarlar > Gelişmiş > Fonzip API menüsünden API anahtarı oluşturun; size bir client_id ve client_secret verilir.

[!IMPORTANT] Fonzip anahtarları $2b$12$... ile başlar. Kabukta tek tırnak kullanın — çift tırnak veya tırnaksız yazarsanız kabuk $2b ve $12 kısımlarını değişken sanıp siler ve HTTP 403 alırsınız. JSON dosyalarında bu sorun yoktur.

Claude Code
bash
claude mcp add fonzip \  -e FONZIP_CLIENT_ID='...' \  -e FONZIP_CLIENT_SECRET='...' \  -- npx -y @ubaranzorlu/fonzip-mcp

Sadece bulunduğunuz projeye ekler. Tüm projelerde kullanmak için -s user, ekiple paylaşmak için -s project ekleyin.

Claude Desktop

Ayarlar > Developer > Edit Config ile claude_desktop_config.json dosyasını açın:

json
{  "mcpServers": {    "fonzip": {      "command": "npx",      "args": ["-y", "@ubaranzorlu/fonzip-mcp"],      "env": {        "FONZIP_CLIENT_ID": "...",        "FONZIP_CLIENT_SECRET": "..."      }    }  }}

Claude Desktop'ı yeniden başlatın.

Cursor

~/.cursor/mcp.json (global) veya proje kökünde .cursor/mcp.json:

json
{  "mcpServers": {    "fonzip": {      "command": "npx",      "args": ["-y", "@ubaranzorlu/fonzip-mcp"],      "env": {        "FONZIP_CLIENT_ID": "...",        "FONZIP_CLIENT_SECRET": "..."      }    }  }}
VS Code / GitHub Copilot
bash
code --add-mcp '{"name":"fonzip","command":"npx","args":["-y","@ubaranzorlu/fonzip-mcp"],"env":{"FONZIP_CLIENT_ID":"...","FONZIP_CLIENT_SECRET":"..."}}'

Ya da .vscode/mcp.json dosyasına yazıp anahtarları girdi olarak sorun:

json
{  "inputs": [    { "type": "promptString", "id": "fonzip-id", "description": "Fonzip client id", "password": true },    { "type": "promptString", "id": "fonzip-secret", "description": "Fonzip client secret", "password": true }  ],  "servers": {    "fonzip": {      "command": "npx",      "args": ["-y", "@ubaranzorlu/fonzip-mcp"],      "env": {        "FONZIP_CLIENT_ID": "${input:fonzip-id}",        "FONZIP_CLIENT_SECRET": "${input:fonzip-secret}"      }    }  }}
Codex CLI

~/.codex/config.toml:

toml
[mcp_servers.fonzip]command = "npx"args = ["-y", "@ubaranzorlu/fonzip-mcp"]env = { FONZIP_CLIENT_ID = "...", FONZIP_CLIENT_SECRET = "..." }
Zed, Windsurf, Continue ve diğerleri

Standart stdio MCP sunucusudur. İstemcinizin yapılandırmasına şunu tanıtın:

komut:    npxargüman:  -y @ubaranzorlu/fonzip-mcportam:    FONZIP_CLIENT_ID, FONZIP_CLIENT_SECRET

Sunucu MCP Registry'de io.github.ubaranzorlu/fonzip adıyla kayıtlıdır; registry'den kurulum destekleyen istemciler doğrudan bulabilir.

Doğrulama

İstemcinize sorun: "Fonzip hesabımın bilgilerini göster" — sunucu fonzip_system / me çağrısıyla kurum adınızı döndürmeli.

Ortam değişkenleri

DeğişkenZorunluVarsayılanAçıklama
FONZIP_CLIENT_IDevet¹—Fonzip API client id
FONZIP_CLIENT_SECRETevet¹—Fonzip API client secret
FONZIP_ACCESS_TOKENhayır—Hazır token. Verilirse client_credentials akışı atlanır
FONZIP_BASE_URLhayırhttps://fonzip.com/api/v2API adresi
FONZIP_SCHEMA_MODEhayırfullfull veya compact — şema modu
FONZIP_TOKEN_CACHEhayır~/.cache/fonzip-mcp/tokens.jsonToken önbelleği yolu. off ile kapatılır
FONZIP_TIMEOUT_MShayır30000İstek zaman aşımı
FONZIP_MAX_RETRIEShayır3429 ve 5xx için yeniden deneme sayısı
FONZIP_USER_AGENThayırfonzip-mcp/<sürüm>Boş bırakmayın — neden

¹ FONZIP_ACCESS_TOKEN verilmediyse zorunlu.

Tool'lar

Fonzip API v2'de 115 operasyon var. Her biri ayrı bir tool olsaydı istemcinin tool listesi şişerdi; bunun yerine operasyonlar konu başlığına göre 13 tool'da gruplandı. Her tool zorunlu bir action parametresi alır.

ToolActionKapsam
fonzip_system5Kurum bilgisi (me), ödeme sistemleri, banka hesapları, pazarlama kanalları
fonzip_users18Üye/bağışçı kayıtları, zaman tüneli, etiketler, kişiye bağlı listeler
fonzip_donations14Bağışlar, bağış kategorileri, mikro bağışlar, bağış sayfaları ve formları
fonzip_monthly_donations5Düzenli bağış tutar/kart değişikliği ve iptal
fonzip_membership_dues9Aidat abonelikleri ve borçlar
fonzip_events12Etkinlikler, biletler, bilet satışları
fonzip_fundraising19Bağış kampanyaları, kampanya etkinlikleri, takımlar
fonzip_forms4Formlar ve form cevapları
fonzip_ecards9E-kartlar, kategoriler, satış işlemleri
fonzip_tags4Etiket yönetimi
fonzip_templates5Mesaj şablonları
fonzip_webhooks6Webhook yönetimi ve test bildirimi
fonzip_communication_permissions3E-posta/SMS/telefon izinleri

/token ve /authorize uçları tool olarak sunulmaz; kimlik doğrulama sunucunun kendi işidir.

Örnek çağrı:

json
{  "name": "fonzip_donations",  "arguments": {    "action": "list",    "status": "paid",    "start_date": "2026-01-01T00:00:00+03:00",    "end_date": "2026-01-31T23:59:59+03:00"  }}

Şema modu

full (varsayılan) modda her tool'un tüm parametreleri JSON Schema olarak istemciye gönderilir. 13 tool'un toplam şeması yaklaşık 70 KB (~19 bin token) tutar; model tek turda doğru çağrıyı kurabilir.

Bağlam bütçesi darsa FONZIP_SCHEMA_MODE=compact kullanın: şemalar yalnızca action ve serbest bir params objesine iner, alan adları ise tool açıklamasında özetlenir. Toplam yaklaşık 22 KB (~6 bin token), yani full modun üçte biri. Eksik alan gönderildiğinde hata mesajı o action'ın tam şemasını geri döndürür, böylece model kendini düzeltir.

Her iki modda da hem düz ({"action": "get", "user_id": 1}) hem sarmalanmış ({"action": "get", "params": {"user_id": 1}}) biçim kabul edilir.

Bilinmesi gerekenler

Fonzip aynı anda tek token verir. Geçerli bir token varken /token çağrısı HTTP 409 "Token already created" döner. MCP sunucuları sık yeniden başlatıldığından, token varsayılan olarak ~/.cache/fonzip-mcp/tokens.json dosyasına (0600 izniyle, client id yazılmadan) kaydedilir ve yeniden başlatmada tekrar kullanılır. Bu önbelleği kapatırsanız sunucu yeniden başladığında bir saate kadar token alamayabilir.

User-Agent zorunludur. Fonzip'in önündeki Cloudflare, User-Agent başlığı olmayan istekleri HTTP 403 (error code 1010) ile reddeder. FONZIP_USER_AGENT değerini boş bırakmayın.

Hız sınırı dakikada 240 istektir. HTTP 429 alındığında Retry-After başlığına uyularak yeniden denenir.

İşlem listeleri tarih aralığı ister. start_date ve end_date şu action'larda zorunludur; eksikse istek Fonzip'e gitmeden reddedilir:

fonzip_donations → list, list_micro, report · fonzip_membership_dues → list · fonzip_events → list_ticket_sales · fonzip_forms → list_answers · fonzip_ecards → list_transactions

Sayfalama (start_page, varsayılan 1) ve sayfa boyutu (how_many, varsayılan 10, en fazla 100) göndermezseniz varsayılanları otomatik eklenir. Aynı şekilde fonzip_donations / list için status varsayılan olarak paid gider.

Yazma işlemleri açıktır. Sunucu tüm CRUD operasyonlarını sunar; silme işlemleri geri alınamaz. Silme içeren tool'lar MCP destructiveHint ile işaretlenir, istemciniz bunlar için onay isteyebilir. Yalnızca okuma istiyorsanız Fonzip'te salt okunur yetkili bir API anahtarı oluşturun.

Kişisel veri modele gider. Fonzip yanıtları ad, e-posta, telefon, TC kimlik no ve IBAN içerebilir; bunlar MCP istemcinize ve kullandığınız modele aktarılır. KVKK yükümlülükleriniz açısından değerlendirin. Ayrıntı için SECURITY.md.

Büyük yanıtlar kırpılır. 100.000 karakteri aşan yanıtlar kesilir ve sayfalama önerilir.

Geliştirme

bash
git clone https://github.com/ubaranzorlu/fonzip-mcp.gitcd fonzip-mcpnpm installnpm test        # 97 testnpm run build

Depoda .mcp.json var; npm run build sonrası Claude Code bu projede sunucuyu yerel dist/ üzerinden çalıştırır. Kabuğunuzda FONZIP_CLIENT_ID ve FONZIP_CLIENT_SECRET tanımlı olmalıdır.

Tool tanımları elle yazılmaz — scripts/generate.ts, openapi/fonzip-v2.yaml dosyasından src/generated/operations.ts üretir. Ayrıntılar ve sürüm çıkarma adımları için CONTRIBUTING.md.

Katkı

Katkılar memnuniyetle karşılanır. Başlamadan önce CONTRIBUTING.md ve CODE_OF_CONDUCT.md dosyalarına göz atın. Güvenlik açıkları için SECURITY.md.

Lisans

Bu depodaki kod MIT © Umut Baran Zorlu.

openapi/fonzip-v2.yaml Fonzip Yazılım A.Ş.'nin kendi API dokümanıdır ve MIT kapsamı dışındadır; depoda yalnızca tool tanımlarının üretilmesi için referans olarak bulunur. Aynı istisna, spec'ten türeyen src/generated/operations.ts ve yayınlanan dist/ içeriği için de geçerlidir. "Fonzip" adı yalnızca sunucunun hangi servise bağlandığını belirtmek için kullanılır. Ayrıntı: NOTICE.

API ile ilgili sorular için: [email protected]

來源:README.md,提交 14a32c6

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.2最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分