Qgiv MCP by usefulapi

Read Qgiv (Bloomerang Fundraising) donations, refunds, recurring gifts, P2P registrations, events.

사용해야 할까요

품질 및 안전성

A
설명 품질
93%
스키마 완전성
92%
이름 품질
78%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (5)

  • LOWTool 'qgiv_get_registration' description lacks action verbqgiv_get_registration에서
  • LOWTool 'qgiv_get_pledge' description lacks action verbqgiv_get_pledge에서
  • LOWTool 'qgiv_get_report_mapping' description lacks action verbqgiv_get_report_mapping에서
  • LOWTool 'qgiv_list_transactions_after_id' name length outside 3-30 rangeqgiv_list_transactions_after_id에서
  • LOWTool 'qgiv_list_registrations_by_date' name length outside 3-30 rangeqgiv_list_registrations_by_date에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~4,282토큰 (도구 정의)
~1.3 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 3.35%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "qgiv": {
      "url": "https://qgiv.usefulapi.io/mcp"
    }
  }
}

원격 엔드포인트

https://qgiv.usefulapi.io/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (21)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢qgiv_list_recent_transactions(limit, include_contact)

The most recent donations/transactions (newest first as Qgiv returns them): id, status, date, amount, fee, net, donor name and id, form, recurring link, payment type and last four card digits, fund. Donor contact details are left out unless include_contact is set; full card numbers are never returned. POST /reporting/transactions/last/{limit}.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_transactions_by_date(begin_date, end_date, limit, offset, include_contact)

Transactions between two dates (inclusive), at most 31 days per call, paged with offset/limit. Same fields as qgiv_list_recent_transactions. Qgiv has no server-side paging, so a busy range is fetched whole and sliced; use a shorter range if it is too large. POST /reporting/transactions/dates/{begin}:{end}.

입력 스키마

{
  "type": "object",
  "properties": {
    "begin_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "First day (yyyy-mm-dd)."
    },
    "end_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Last day (yyyy-mm-dd)."
    },
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "required": [
    "begin_date",
    "end_date"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_transactions_after_id(after_id, limit, include_contact)

Transactions with an id greater than the given one, sorted by id ascending and paged with limit; next_after_id is the cursor for the next call (use it as after_id). Handy for syncing new gifts. POST /reporting/transactions/after/{id}.

입력 스키마

{
  "type": "object",
  "properties": {
    "after_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Return transactions with an id greater than this."
    },
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "required": [
    "after_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_get_transaction(transaction_id, include_contact)

One transaction in full: donation lines, fund/restriction, dedication, custom-field answers, event packages, registrations, refunds. Contact details only with include_contact; card data is reduced to the last four digits. POST /reporting/transactions/{id}.

입력 스키마

{
  "type": "object",
  "properties": {
    "transaction_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Numeric Qgiv id."
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "required": [
    "transaction_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_recent_refunds(limit, include_contact)

The most recent refunds (read-only): id, original transaction, refund and settle dates, amount, payment type, last four digits, fund. POST /reporting/refunds/last/{limit}.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_refunds_by_date(begin_date, end_date, limit, offset, include_contact)

Refunds between two dates (inclusive), at most 31 days per call, paged with offset/limit. POST /reporting/refunds/dates/{begin}:{end}.

입력 스키마

{
  "type": "object",
  "properties": {
    "begin_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "First day (yyyy-mm-dd)."
    },
    "end_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Last day (yyyy-mm-dd)."
    },
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "required": [
    "begin_date",
    "end_date"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_get_refund(refund_id, include_contact)

One refund in full by id (read-only; this server never issues refunds). POST /reporting/refunds/{id}.

입력 스키마

{
  "type": "object",
  "properties": {
    "refund_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Numeric Qgiv id."
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "required": [
    "refund_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_recurring_schedules(status, limit, offset, include_contact)

Recurring donation schedules (read-only): id, start/end date, next billing date, frequency, amount, state, donor name and id, plus Qgiv's 12-month forecast. Filter by status active, paused, expired or deleted. Paged with offset/limit. POST /reporting/recurring/list or /reporting/recurring/{status}.

입력 스키마

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Only schedules in this state (default: all).",
      "type": "string",
      "enum": [
        "active",
        "paused",
        "expired",
        "deleted"
      ]
    },
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_get_recurring_schedule(recurring_id, include_contact)

One recurring donation schedule by id (read-only; schedules cannot be changed here). POST /reporting/recurring/{id}.

입력 스키마

{
  "type": "object",
  "properties": {
    "recurring_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Numeric Qgiv id."
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "required": [
    "recurring_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_statements(limit, offset)

Monthly fee/payout statements: id, date, amount contributed, fees, refunded, debited, credited and the summary totals (without the per-transaction rows; use qgiv_get_statement for those). Paged with offset/limit. POST /reporting/statements/list.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_get_latest_statements

The latest statement(s) for the organization or form, with summary totals (per-transaction rows left out). POST /reporting/statements/latest.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_get_statement(statement_id)

One statement by id with its transaction rows (first 100 shown; donor names only). POST /reporting/statements/{id}.

입력 스키마

{
  "type": "object",
  "properties": {
    "statement_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Numeric Qgiv id."
    }
  },
  "required": [
    "statement_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_recent_registrations(limit, include_contact)

The most recent peer-to-peer (Hobnob) event registrations: id, category, registrant name, team, fundraising goal and amount raised. Contact details only with include_contact. POST /reporting/registrations/last/{limit}.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_registrations_by_date(begin_date, end_date, limit, offset, include_contact)

Peer-to-peer registrations between two dates (inclusive), at most 31 days per call, paged with offset/limit. POST /reporting/registrations/dates/{begin}:{end}.

입력 스키마

{
  "type": "object",
  "properties": {
    "begin_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "First day (yyyy-mm-dd)."
    },
    "end_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Last day (yyyy-mm-dd)."
    },
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "required": [
    "begin_date",
    "end_date"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_get_registration(registration_id, include_contact)

One peer-to-peer registration in full (purchase history, team, totals, child registrations). Contact details only with include_contact. POST /reporting/registrations/{id}.

입력 스키마

{
  "type": "object",
  "properties": {
    "registration_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Numeric Qgiv id."
    },
    "include_contact": {
      "description": "Include donor contact details (email, phone, postal address). Off by default: names, ids and amounts only.",
      "type": "boolean"
    }
  },
  "required": [
    "registration_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_events(include_details, limit, offset)

Events (ticketed/auction events) on the forms the token covers: id, dates and the top-level settings. Set include_details for packages, questions and promo codes. Notification e-mail addresses are never returned. POST /events/list.

입력 스키마

{
  "type": "object",
  "properties": {
    "include_details": {
      "description": "Include nested packages, fields and promo codes (large).",
      "type": "boolean"
    },
    "limit": {
      "default": 20,
      "description": "Events to return (1-50, default 20).",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_pledges(limit, offset)

Pledge options configured on the form(s) (title, value, frequency, begin date, iterations, state), not donors' pledge records. POST /pledges/list.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_get_pledge(pledge_id)

One pledge option by id. POST /pledges/{id} (no package is sent, so nothing is changed).

입력 스키마

{
  "type": "object",
  "properties": {
    "pledge_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Numeric Qgiv id."
    }
  },
  "required": [
    "pledge_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_custom_fields(limit, offset)

Custom (additional-question) fields configured on the form(s): id, reference, title, input type, required flags, display flags. POST /customFields/list.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_list_report_mappings(limit, offset)

Report mappings (accounting export mappings) on the form(s): id, identifier, mapping data, export service, type. POST /reporting/mappings/list.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "description": "Records to return (1-100, default 25).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "default": 0,
      "description": "Records to skip, for paging through a larger result (use next_offset from the previous reply).",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢qgiv_get_report_mapping(mapping_id)

One report mapping by id. POST /reporting/mappings/{id}.

입력 스키마

{
  "type": "object",
  "properties": {
    "mapping_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Numeric Qgiv id."
    }
  },
  "required": [
    "mapping_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 21개