mcpField
F
fonzip

fonzip

ローカル
github.com/ubaranzorluビジネス・マーケティング09 週間前に更新

fonzip について

fonzipは、団体や財団がAIエージェントからFonzip API v2のデータにアクセスするためのオープンソースMCPサーバーです。寄付、会員、会費、イベント、キャンペーンを扱うツールは、OpenAPI仕様から生成されます。

主な機能

  1. 01113件のAPI操作を13個のツールに集約
  2. 02寄付と寄付者の記録へのアクセス
  3. 03会費とイベントデータの管理
  4. 04OAuth2クライアント認証とトークンキャッシュ
  5. 05完全またはコンパクトなツールスキーマ
  6. 06レート制限とサーバーエラーの再試行

活用シーン

  1. 01期間を指定した寄付状況の照会
  2. 02会員と会費の記録の確認
  3. 03イベントとチケット販売データの取得
  4. 04AIエージェントによるFonzip組織データへのアクセス

MCP 対応

MCPサーバーとして、13個の分野別ツールからFonzip API v2の操作をMCPクライアントに提供します。OAuth2認証とトークンキャッシュを処理し、APIには読み取りと書き込みの両方の操作があります。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"ubaranzorlu-fonzip": {
"command": "npx",
"args": [
"-y",
"@ubaranzorlu/fonzip-mcp"
],
"env": {
"FONZIP_CLIENT_ID": "<FONZIP_CLIENT_ID>",
"FONZIP_CLIENT_SECRET": "<FONZIP_CLIENT_SECRET>",
"FONZIP_SCHEMA_MODE": "<FONZIP_SCHEMA_MODE>",
"FONZIP_BASE_URL": "<FONZIP_BASE_URL>"
}
}
}
}
起動コマンドnpx -y @ubaranzorlu/fonzip-mcp
設定が必要な環境変数
FONZIP_CLIENT_IDシークレットFonzip API client id. Fonzip > Ayarlar > Gelismis > Fonzip API menusunden olusturulur.
FONZIP_CLIENT_SECRETシークレットFonzip API client secret.
FONZIP_SCHEMA_MODETool semasi ayrintisi: full (varsayilan) veya compact.
FONZIP_BASE_URLFonzip API adresi.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@ubaranzorlu/fonzip-mcp0.1.2

ツール

13

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
actionenumはいYapilacak islem. Her action'in kendi zorunlu alanlari vardir; asagidaki aciklamalarda hangi alanin hangi action'a ait oldugu koseli parantez icinde belirtilir.list_bank_accounts | list_marketing_channel_filter_values | list_marketing_channels | list_payment_systems | me
how_manyintegerいいえ[list_bank_accounts, list_marketing_channels, list_payment_systems] 一覧表示するレコード数
start_pageintegerいいえ[list_bank_accounts, list_marketing_channels, list_payment_systems] レコードの開始ページ

詳細

fonzip-mcp

Fonzip API v2 用 Model Context Protocol サーバー

AI エージェントから、協会や財団の寄付、会員、会費、イベント、キャンペーンのデータにアクセスできます。

npm CI License: MIT MCP Registry


独立したオープンソースプロジェクトです。Fonzip Yazılım A.Ş. による開発、サポート、承認は受けていません。

Claude Code、Claude Desktop、Cursor、VS Code、Codex、およびMCPに対応するその他のクライアントから、Fonzip のデータに直接アクセスできます。

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 個のツールで、Fonzip API v2 の113 個の操作をカバーします
  • ツール定義は OpenAPI spec から自動生成されるため、手動で同期する必要はありません
  • OAuth2 client_credentials に対応し、プロセス間でトークンを保存します
  • エラーメッセージはトルコ語です。呼び出しに不備がある場合は、期待されるスキーマがモデルに返されます

インストール

Node.js 20 以降が必要です。まず Fonzip の Ayarlar > Gelişmiş > Fonzip API メニューからAPI キーを作成します。client_id と client_secret が発行されます。

重要

Fonzip のキーは $2b$12$... で始まります。シェルでは単一引用符を使用してください。二重引用符または引用符なしで入力すると、シェルが $2b と $12 を変数とみなして削除するため、HTTP 403 が発生します。JSON ファイルではこの問題は起きません。

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

現在のプロジェクトにのみ追加されます。すべてのプロジェクトで使う場合は -s user、チームで共有する場合は -s project を追加してください。

Claude Desktop

Ayarlar > Developer > Edit Config から claude_desktop_config.json ファイルを開きます。

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

Claude Desktop を再起動してください。

Cursor

~/.cursor/mcp.json(グローバル)またはプロジェクトのルートにある .cursor/mcp.json:

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

または .vscode/mcp.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:

[mcp_servers.fonzip]
command = "npx"
args = ["-y", "@ubaranzorlu/fonzip-mcp"]
env = { FONZIP_CLIENT_ID = "...", FONZIP_CLIENT_SECRET = "..." }
Zed、Windsurf、Continue など

標準的な stdio MCP サーバーです。お使いのクライアントの設定に次の内容を登録してください。

komut:    npx
argüman:  -y @ubaranzorlu/fonzip-mcp
ortam:    FONZIP_CLIENT_ID, FONZIP_CLIENT_SECRET

サーバーは MCP Registry に io.github.ubaranzorlu/fonzip という名前で登録されています。レジストリからのインストールに対応するクライアントであれば、直接見つけることができます。

動作確認

クライアントに 「Fonzip アカウントの情報を表示して」 と尋ねてください。サーバーが fonzip_system / me を呼び出し、組織名を返せば正常です。

環境変数

変数必須デフォルト説明
FONZIP_CLIENT_IDはい¹—Fonzip API のクライアント ID
FONZIP_CLIENT_SECRETはい¹—Fonzip API のクライアントシークレット
FONZIP_ACCESS_TOKENいいえ—事前に取得したトークン。指定すると client_credentials フローをスキップします
FONZIP_BASE_URLいいえhttps://fonzip.com/api/v2API アドレス
FONZIP_SCHEMA_MODEいいえfullfull または compact — スキーマモード
FONZIP_TOKEN_CACHEいいえ~/.cache/fonzip-mcp/tokens.jsonトークンキャッシュのパス。off で無効化します
FONZIP_TIMEOUT_MSいいえ30000リクエストのタイムアウト
FONZIP_MAX_RETRIESいいえ3429 および 5xx に対する再試行回数
FONZIP_USER_AGENTいいえfonzip-mcp/<sürüm>空欄にしないでください — 理由

¹ FONZIP_ACCESS_TOKEN が指定されていない場合は必須です。

ツール

Fonzip API v2には115個の操作があります。各操作を個別のツールにすると、クライアントのツール一覧が膨れ上がるため、操作はトピックごとに13個のツールにまとめられています。各ツールは必須のactionパラメーターを受け取ります。

ツールAction範囲
fonzip_system5組織情報(me)、決済システム、銀行口座、マーケティングチャネル
fonzip_users18会員/寄付者の記録、タイムライン、タグ、個人に紐づくリスト
fonzip_donations14寄付、寄付カテゴリ、マイクロ寄付、寄付ページおよびフォーム
fonzip_monthly_donations5定期寄付の金額/カードの変更とキャンセル
fonzip_membership_dues9会費のサブスクリプションと未払い金
fonzip_events12イベント、チケット、チケット販売
fonzip_fundraising19寄付キャンペーン、キャンペーンイベント、チーム
fonzip_forms4フォームとフォームの回答
fonzip_ecards9Eカード、カテゴリ、販売取引
fonzip_tags4タグ管理
fonzip_templates5メッセージテンプレート
fonzip_webhooks6Webhookの管理とテスト通知
fonzip_communication_permissions3メール/SMS/電話の許可

/tokenと/authorizeエンドポイントはツールとして公開されません。認証はサーバー自体が処理します。

呼び出し例:

{
  "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"
  }
}
スキーマモード

full(デフォルト)モードでは、各ツールのすべてのパラメーターがJSON Schemaとしてクライアントに送信されます。13個のツールのスキーマは合計で約70 KB(約1万9千トークン)となり、モデルは1回のターンで適切な呼び出しを組み立てられます。

コンテキストの予算が限られている場合は、FONZIP_SCHEMA_MODE=compactを使用してください。スキーマはactionと自由形式のparamsオブジェクトのみになり、フィールド名はツールの説明にまとめられます。合計で約22 KB(約6千トークン)となり、fullモードの3分の1です。必須フィールドが不足している場合、エラーメッセージにそのactionの完全なスキーマが返されるため、モデルは自分で修正できます。

どちらのモードでも、フラット形式({"action": "get", "user_id": 1})とラップ形式({"action": "get", "params": {"user_id": 1}})の両方を受け付けます。

知っておくべきこと

Fonzipは同時に1つのトークンしか発行しません。 有効なトークンがある状態で/tokenを呼び出すと、HTTP 409 "Token already created"が返されます。MCPサーバーは頻繁に再起動されるため、トークンはデフォルトで~/.cache/fonzip-mcp/tokens.jsonに(0600の権限で、client idを記録せずに)保存され、再起動後も再利用されます。このキャッシュを無効にすると、サーバーの再起動後、最大1時間トークンを取得できない場合があります。

User-Agentは必須です。 Fonzipの前段にあるCloudflareは、User-AgentヘッダーのないリクエストをHTTP 403 (error code 1010)で拒否します。FONZIP_USER_AGENTを空のままにしないでください。

レート制限は1分あたり240リクエストです。 HTTP 429を受け取った場合は、Retry-Afterヘッダーに従って再試行します。

取引リストには日付範囲が必要です。 次のactionではstart_dateとend_dateが必須です。不足している場合、リクエストはFonzipに送信される前に拒否されます。

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

ページネーション(start_page、デフォルトは1)とページサイズ(how_many、デフォルトは10、最大100)を指定しない場合、デフォルト値が自動的に追加されます。同様に、fonzip_donations / listでは、statusのデフォルト値としてpaidが指定されます。

書き込み操作が有効です。 サーバーはすべてのCRUD操作を提供します。削除操作は元に戻せません。削除を含むツールにはMCPのdestructiveHintが設定されているため、クライアントが確認を求める場合があります。読み取り専用で使用する場合は、Fonzipで読み取り専用権限のAPIキーを作成してください。

個人データがモデルに送信されます。 Fonzipの応答には、氏名、メールアドレス、電話番号、トルコ共和国身分証番号、IBANが含まれる場合があります。これらはMCPクライアントおよび使用するモデルに転送されます。KVKKに基づく義務を考慮してください。詳細はSECURITY.mdを参照してください。

大きな応答は切り詰められます。 100,000文字を超える応答は切り詰められ、ページネーションが推奨されます。

開発

git clone https://github.com/ubaranzorlu/fonzip-mcp.git
cd fonzip-mcp
npm install
npm test        # 97 test
npm run build

リポジトリには .mcp.json があります。npm run build の実行後、Claude Code はこのプロジェクトのサーバーをローカルの dist/ から起動します。シェルで FONZIP_CLIENT_ID と FONZIP_CLIENT_SECRET が定義されている必要があります。

ツールの定義は手作業では作成しません。scripts/generate.ts が openapi/fonzip-v2.yaml から src/generated/operations.ts を生成します。詳細とリリース手順については、CONTRIBUTING.md をご覧ください。

貢献

貢献を歓迎します。始める前に、CONTRIBUTING.md と CODE_OF_CONDUCT.md をご確認ください。セキュリティ上の脆弱性については、SECURITY.md をご覧ください。

ライセンス

このリポジトリ内のコードは MIT © Umut Baran Zorlu です。

openapi/fonzip-v2.yaml は Fonzip Yazılım A.Ş. 独自の API ドキュメントであり、MIT ライセンスの適用対象外です。リポジトリ内では、ツール定義の生成に使用する参照資料としてのみ含まれています。同じ例外は、仕様から生成された src/generated/operations.ts と公開される dist/ の内容にも適用されます。「Fonzip」という名称は、サーバーが接続するサービスを示す目的でのみ使用しています。詳細については、NOTICE をご覧ください。

API に関するお問い合わせ:[email protected]

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。