Skip to main content
Glama
YogiAdhik

civicrm-mcp

by YogiAdhik

Get contributions

civicrm_get_contributions

Retrieve contributions (donations, dues, event fees) filtered by contact, date range, status, or financial type, with readable donor names and status labels.

Instructions

List contributions (donations, dues, event fees) with optional filters by contact, date window, status, and financial type. Resolves donor display name and human-readable status labels.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
sinceNoISO date/datetime lower bound for receive_date, e.g. '2026-01-01'.
untilNoISO date/datetime upper bound for receive_date.
statusNoContribution status name, e.g. 'Completed', 'Pending', 'Failed', 'Refunded'.
contact_idNoFilter by donor contact id.
financial_typeNoFinancial type name, e.g. 'Donation', 'Member Dues', 'Event Fee'.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It correctly describes a read operation ('list') and adds value by mentioning resolved display names and status labels, but does not explicitly state idempotency or lack of side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: first states purpose and filters, second adds behavioral detail about resolved fields. No redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 6 parameters and no output schema, the description covers purpose and filters but lacks details on return structure, pagination, sorting, or error behavior. It mentions resolved fields but not the full response shape.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is high (83%), so baseline is 3. The description lists filter types (contact, date, status, financial type) which map to parameters, but adds little beyond what the schema already provides. No parameter-specific syntax details are added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists contributions (donations, dues, event fees) and specifies optional filters. It distinguishes from sibling tools like civicrm_record_contribution (create) and civicrm_list_entities (generic).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for listing contributions but does not explicitly state when to use vs alternatives or provide exclusions. The context of siblings helps differentiate, but no explicit guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/YogiAdhik/civicrm-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server