Skip to main content
Glama

Little Green Light MCP by usefulapi

Search constituents

lgl_search_constituents
Read-only

Search active constituents (donors, members, volunteers, organizations). Give name and/or email for the common case, or raw terms. Available term fields: name, eaddr (email contains), phone_number, street, city, state (2-letter), postal_code, country, keyword (keyword id), updated_from / updated_to (YYYY-MM-DDTHH:MM:SSZ), membership_status (0 lapsed, 1 active), membership_level (comma-separated ids), membership_end_date_from / _to (YYYY-MM-DD), external_id, constituent_type (0 individual, 1 organization), groups (comma-separated group ids), lists (comma-separated list ids), custom_attr (key|op|value). At least one term is required. LGL: GET /api/v1/constituents/search.

Input Schema

NameRequiredDescriptionDefault
nameNoAny name field contains this.
sortNoSort by name, external_id, lgl_id, date_created, date_updated, membership_level or membership_end_date_from. Append '!' to reverse (e.g. date_updated!).
emailNoEmail address contains this.
limitNoNumber of entries to return, 1-100. LGL's default is 25.
termsNoExtra raw LGL search terms, each 'field=value' (combined with AND). See the tool description for the available fields.
expandNoRelated records to include inline on each constituent.
offsetNoStart at this entry (0-based). Use the previous page's next_item. Default 0.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=true, and the description adds real behavioral context: results are restricted to 'active' constituents, at least one search term is mandatory, and the underlying call is GET /api/v1/constituents/search. It does not describe the return shape or pagination semantics, but the term-scoping behavior is well disclosed.

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

Conciseness4/5

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

Front-loads purpose, then the common-case params, then the required term-field catalog, and ends with the API reference. Dense but every clause earns its place given the schema's reliance on the description; only minor tightness is lost in the long field enumeration.

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

Completeness4/5

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

For a many-field search tool with no output schema and only a readOnly hint, the definition is largely self-sufficient, covering term fields, formats, and the mandatory-term rule. It stops short of explaining the result envelope or how name/email/terms combine, which would fully close the gap.

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

Parameters5/5

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

Schema coverage is 100%, but the schema for `terms` explicitly defers to the description ('See the tool description for the available fields'). The description delivers exactly that authoritative field list with formats, operators, and value mappings (membership_status 0/1, constituent_type 0/1, date patterns), which the schema cannot supply on its own.

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?

States a specific verb and resource ('Search active constituents') plus the scope ('active') and concrete examples of what a constituent is (donors, members, volunteers, organizations). The plural/search framing distinguishes it cleanly from the single-record lgl_get_constituent sibling.

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?

Offers invocation guidance ('Give name and/or email for the common case, or raw terms') and an operational constraint ('At least one term is required'), which implies usage. However, it never names an alternative tool or states when-not-to-use it (e.g., vs. lgl_get_constituent or the list_* siblings), so guidance stays implicit.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.