Qgiv MCP by usefulapi

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

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
93%
Integridad del esquema
92%
Calidad de los nombres
78%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (5)

  • LOWTool 'qgiv_get_registration' description lacks action verben qgiv_get_registration
  • LOWTool 'qgiv_get_pledge' description lacks action verben qgiv_get_pledge
  • LOWTool 'qgiv_get_report_mapping' description lacks action verben qgiv_get_report_mapping
  • LOWTool 'qgiv_list_transactions_after_id' name length outside 3-30 rangeen qgiv_list_transactions_after_id
  • LOWTool 'qgiv_list_registrations_by_date' name length outside 3-30 rangeen qgiv_list_registrations_by_date

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~4,282Tokens (definiciones de herramientas)
~1.3 KBTamaño de respuesta típico
Impacto significativo en la atención (3.35% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

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

Puntos de conexión remotos

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

Qué puede hacer

Inventario de herramientas

Herramientas (21)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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.

Esquema de entrada

{
  "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.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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.

Esquema de entrada

{
  "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.

Esquema de entrada

{
  "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).

Esquema de entrada

{
  "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.

Esquema de entrada

{
  "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.

Esquema de entrada

{
  "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}.

Esquema de entrada

{
  "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"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada21 herramientas