# io.github.WillHeadlee/lgl-mcp-server (npm · lgl-mcp-server)

MCP server for Little Green Light CRM. Search donors, log gifts, manage groups and contacts.

- Trust score: 62/100 (medium)
- Change this week: +19
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `lgl-mcp-server`: 62/100 (this document), [markdown](https://verifymcp.io/servers/willheadlee-lgl-mcp-server/lgl-mcp-server.md), [page](https://verifymcp.io/servers/willheadlee-lgl-mcp-server/lgl-mcp-server)

## Channel facts

- Registry: `npm`
- Package: `lgl-mcp-server`
- Version: `1.0.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 86/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 32/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - License check failed: no license is declared.
  - Actively maintained (last published 74 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 66/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 4558 tokens (~33/item across 137 items; 137 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 75/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 24% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add willheadlee-lgl-mcp-server -- npx -y lgl-mcp-server
```

### Codex

```bash
codex mcp add willheadlee-lgl-mcp-server -- npx -y lgl-mcp-server
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "willheadlee-lgl-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "lgl-mcp-server"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add willheadlee-lgl-mcp-server --command npx --arg -y --arg lgl-mcp-server
```

### Hermes

```yaml
mcp_servers:
  willheadlee-lgl-mcp-server:
    command: "npx"
    args: ["-y", "lgl-mcp-server"]
```

### Other

```json
{
  "mcpServers": {
    "willheadlee-lgl-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "lgl-mcp-server"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 62, +4)

- [functional improvement] Stability: unverified → 0.27

### 2026-08-02 (score 58, +51)

- [security regression] Provenance: unverified → fail
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Install scripts: unverified → pass
- [security improvement] Malware scan: unverified → pass
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional regression] License: unverified → fail
- [functional regression] Dependency health: partial → unverified
- [functional regression] Security disclosure: fail → unverified
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Schema quality: unverified → good

### 2026-08-01 (score 7, −12)

- [functional regression] Tool coverage: 100 → unverified
- [functional improvement] Dependency health: unverified → partial
- [functional] First check of Schema quality: unverified

### 2026-07-31 (score 19, −6)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 25, −18)

- [security regression] Malware scan: pass → unverified

### 2026-07-27 (score 43)

First indexed and scored.

## MCP tools (137)

### `search_constituents` (~40 tokens)

Search for constituents by name, email, phone, or other keyword

Input parameters:

- `limit` (number)
- `query` (string, required): Search query

### `list_constituents` (~31 tokens)

List all constituents with optional pagination

Input parameters:

- `limit` (number)
- `offset` (number)

### `get_constituent` (~30 tokens)

Get full details for a single constituent by ID

Input parameters:

- `id` (number, required): Constituent ID

### `create_constituent` (~98 tokens)

Create a new constituent in LGL

Input parameters:

- `city` (string)
- `constituent_type` (string)
- `email` (string): Primary email address
- `first_name` (string)
- `last_name` (string)
- `organization_name` (string)
- `phone` (string): Primary phone number
- `state` (string)
- `street` (string)
- `zip` (string)

### `update_constituent` (~57 tokens)

Update an existing constituent's core information

Input parameters:

- `constituent_type` (string)
- `first_name` (string)
- `id` (number, required)
- `last_name` (string)
- `organization_name` (string)

### `delete_constituent` (~24 tokens)

Delete an existing constituent by ID

Input parameters:

- `id` (number, required)

### `list_addresses` (~24 tokens)

List street addresses for a specific constituent

Input parameters:

- `constituent_id` (number, required)

### `create_address` (~87 tokens)

Add a street address to a constituent

Input parameters:

- `address_type` (string): e.g. Home, Work, Seasonal
- `city` (string)
- `constituent_id` (number, required)
- `country` (string)
- `is_primary` (boolean)
- `state` (string)
- `street` (string, required)
- `zip` (string): Postal / ZIP Code

### `update_address` (~78 tokens)

Update an existing street address record by Address ID

Input parameters:

- `address_type` (string)
- `city` (string)
- `country` (string)
- `id` (number, required): Address ID
- `is_primary` (boolean)
- `state` (string)
- `street` (string)
- `zip` (string)

### `delete_address` (~26 tokens)

Delete a street address record by Address ID

Input parameters:

- `id` (number, required): Address ID

### `list_phone_numbers` (~25 tokens)

List phone numbers for a specific constituent

Input parameters:

- `constituent_id` (number, required)

### `create_phone_number` (~58 tokens)

Add a phone number to a constituent

Input parameters:

- `constituent_id` (number, required)
- `is_primary` (boolean)
- `number` (string, required)
- `phone_type` (string): e.g. Mobile, Home, Work, Fax

### `update_phone_number` (~51 tokens)

Update an existing phone number record by Phone ID

Input parameters:

- `id` (number, required): Phone ID
- `is_primary` (boolean)
- `number` (string)
- `phone_type` (string)

### `delete_phone_number` (~27 tokens)

Delete a phone number record by Phone ID

Input parameters:

- `id` (number, required): Phone ID

### `list_email_addresses` (~25 tokens)

List email addresses for a specific constituent

Input parameters:

- `constituent_id` (number, required)

### `create_email_address` (~54 tokens)

Add an email address to a constituent

Input parameters:

- `address` (string, required)
- `constituent_id` (number, required)
- `email_type` (string): e.g. Personal, Work
- `is_primary` (boolean)

### `update_email_address` (~51 tokens)

Update an existing email address record by Email ID

Input parameters:

- `address` (string)
- `email_type` (string)
- `id` (number, required): Email ID
- `is_primary` (boolean)

### `delete_email_address` (~27 tokens)

Delete an email address record by Email ID

Input parameters:

- `id` (number, required): Email ID

### `list_web_addresses` (~31 tokens)

List web addresses (websites/social profiles) for a specific constituent

Input parameters:

- `constituent_id` (number, required)

### `create_web_address` (~54 tokens)

Add a web address to a constituent

Input parameters:

- `constituent_id` (number, required)
- `url` (string, required): Website URL
- `web_address_type` (string): e.g. Personal, Blog, LinkedIn, Twitter

### `update_web_address` (~46 tokens)

Update an existing web address record by Web Address ID

Input parameters:

- `id` (number, required): Web Address ID
- `url` (string)
- `web_address_type` (string)

### `delete_web_address` (~29 tokens)

Delete a web address record by Web Address ID

Input parameters:

- `id` (number, required): Web Address ID

### `list_gifts` (~67 tokens)

List gifts, either for a specific constituent (nested) or across the account (search)

Input parameters:

- `constituent_id` (number): Filter by constituent (calls nested API)
- `limit` (number)
- `query` (string): Search term across all gifts (if not filtering by constituent)

### `get_gift` (~29 tokens)

Get full details for a specific gift record by ID

Input parameters:

- `id` (number, required): Gift ID

### `record_gift` (~107 tokens)

Record a new gift nested under a specific constituent

Input parameters:

- `amount` (number, required): Gift amount in USD
- `appeal_name` (string)
- `campaign_name` (string)
- `constituent_id` (number, required): Target constituent
- `event_name` (string)
- `fund_name` (string)
- `gift_date` (string, required): YYYY-MM-DD
- `note` (string)
- `payment_type` (string): e.g. Cash, Check, Credit Card

### `update_gift` (~76 tokens)

Update an existing gift record by Gift ID

Input parameters:

- `amount` (number)
- `campaign_name` (string)
- `fund_name` (string)
- `gift_date` (string): YYYY-MM-DD
- `id` (number, required): Gift ID
- `note` (string)
- `payment_type` (string)

### `delete_gift` (~27 tokens)

Delete a specific gift record by Gift ID

Input parameters:

- `id` (number, required): Gift ID

### `list_campaigns` (~13 tokens)

List all campaigns

### `create_campaign` (~28 tokens)

Create a new fundraising campaign

Input parameters:

- `description` (string)
- `name` (string, required)

### `get_campaign` (~22 tokens)

Get fundraising campaign details by ID

Input parameters:

- `id` (number, required)

### `update_campaign` (~35 tokens)

Update an existing campaign details

Input parameters:

- `description` (string)
- `id` (number, required)
- `name` (string)

### `delete_campaign` (~21 tokens)

Delete a campaign by ID

Input parameters:

- `id` (number, required)

### `list_funds` (~13 tokens)

List all funds

### `create_fund` (~28 tokens)

Create a new fund

Input parameters:

- `description` (string)
- `name` (string, required)

### `get_fund` (~22 tokens)

Get fund details by ID

Input parameters:

- `id` (number, required)

### `update_fund` (~34 tokens)

Update fund details

Input parameters:

- `description` (string)
- `id` (number, required)
- `name` (string)

### `delete_fund` (~22 tokens)

Delete a fund by ID

Input parameters:

- `id` (number, required)

### `list_events` (~13 tokens)

List all fundraising events

### `create_event` (~38 tokens)

Create a new event

Input parameters:

- `description` (string)
- `event_date` (string): YYYY-MM-DD
- `name` (string, required)

### `get_event` (~22 tokens)

Get fundraising event details by ID

Input parameters:

- `id` (number, required)

### `update_event` (~34 tokens)

Update event details

Input parameters:

- `event_date` (string)
- `id` (number, required)
- `name` (string)

### `delete_event` (~21 tokens)

Delete an event by ID

Input parameters:

- `id` (number, required)

### `list_appeals` (~14 tokens)

List all appeals

### `create_appeal` (~29 tokens)

Create a new appeal

Input parameters:

- `description` (string)
- `name` (string, required)

### `get_appeal` (~23 tokens)

Get appeal details by ID

Input parameters:

- `id` (number, required)

### `update_appeal` (~28 tokens)

Update appeal details

Input parameters:

- `id` (number, required)
- `name` (string)

### `delete_appeal` (~23 tokens)

Delete an appeal by ID

Input parameters:

- `id` (number, required)

### `list_appeal_requests` (~51 tokens)

Fetch appeal requests, either for a specific appeal or for a specific constituent

Input parameters:

- `appeal_id` (number): Filter by Appeal ID
- `constituent_id` (number): Filter by Constituent ID

### `create_appeal_request` (~57 tokens)

Create a new appeal request, either linked to an appeal or constituent

Input parameters:

- `appeal_id` (number, required)
- `ask_amount` (number)
- `constituent_id` (number, required)
- `segment_name` (string)

### `get_appeal_request` (~27 tokens)

Get details for an appeal request by ID

Input parameters:

- `id` (number, required)

### `update_appeal_request` (~40 tokens)

Update an appeal request details

Input parameters:

- `ask_amount` (number)
- `id` (number, required)
- `segment_name` (string)

### `delete_appeal_request` (~25 tokens)

Delete an appeal request by ID

Input parameters:

- `id` (number, required)

### `list_notes` (~40 tokens)

List notes, optionally filtered by constituent, or fetch all notes

Input parameters:

- `constituent_id` (number): Filter notes by constituent
- `limit` (number)

### `get_note` (~24 tokens)

Get full details of a note by ID

Input parameters:

- `id` (number, required)

### `create_note` (~71 tokens)

Log a new note nested under a specific constituent

Input parameters:

- `constituent_id` (number, required)
- `note_date` (string): YYYY-MM-DD
- `note_type` (string): e.g. Interaction, Email, Alert
- `subject` (string)
- `text` (string, required): Content of the note

### `update_note` (~59 tokens)

Update an existing note record by Note ID

Input parameters:

- `id` (number, required): Note ID
- `note_date` (string): YYYY-MM-DD
- `note_type` (string)
- `subject` (string)
- `text` (string)

### `delete_note` (~23 tokens)

Delete a note record by Note ID

Input parameters:

- `id` (number, required)

### `list_contact_reports` (~40 tokens)

List contact reports, optionally filtered by constituent, or fetch all

Input parameters:

- `constituent_id` (number): Filter by constituent
- `limit` (number)

### `search_contact_reports` (~23 tokens)

Search across contact reports

Input parameters:

- `query` (string, required): Search query

### `get_contact_report` (~26 tokens)

Get full details of a contact report by ID

Input parameters:

- `id` (number, required)

### `create_contact_report` (~72 tokens)

Create a new contact report nested under a constituent

Input parameters:

- `constituent_id` (number, required)
- `contact_date` (string): YYYY-MM-DD
- `contact_type` (string): e.g. Phone, In Person, Email
- `subject` (string)
- `text` (string, required): Content of report

### `update_contact_report` (~54 tokens)

Update an existing contact report by ID

Input parameters:

- `contact_date` (string)
- `contact_type` (string)
- `id` (number, required)
- `subject` (string)
- `text` (string)

### `delete_contact_report` (~23 tokens)

Delete a contact report by ID

Input parameters:

- `id` (number, required)

### `list_volunteer_times` (~41 tokens)

List volunteer times, optionally filtered by constituent, or fetch all

Input parameters:

- `constituent_id` (number): Filter by constituent
- `limit` (number)

### `search_volunteer_times` (~24 tokens)

Search for volunteer times

Input parameters:

- `query` (string, required): Search query

### `get_volunteer_time` (~25 tokens)

Get volunteer time record details by ID

Input parameters:

- `id` (number, required)

### `create_volunteer_time` (~53 tokens)

Record volunteer hours nested under a constituent

Input parameters:

- `constituent_id` (number, required)
- `description` (string)
- `hours` (number, required): Hours volunteered
- `volunteer_date` (string): YYYY-MM-DD

### `update_volunteer_time` (~46 tokens)

Update an existing volunteer hours record

Input parameters:

- `description` (string)
- `hours` (number)
- `id` (number, required)
- `volunteer_date` (string)

### `delete_volunteer_time` (~25 tokens)

Delete a volunteer time record by ID

Input parameters:

- `id` (number, required)

### `list_relationships` (~25 tokens)

List constituent relationships for a specific constituent

Input parameters:

- `constituent_id` (number, required)

### `create_relationship` (~66 tokens)

Create a relationship between two constituents (nested under the parent constituent)

Input parameters:

- `constituent_id` (number, required): The parent constituent
- `related_constituent_id` (number, required): The related constituent
- `relationship_type` (string, required): e.g. Spouse, Sibling, Child, Parent

### `get_relationship` (~25 tokens)

Get details for a constituent relationship by Relationship ID

Input parameters:

- `id` (number, required)

### `update_relationship` (~35 tokens)

Update relationship type between two constituents by Relationship ID

Input parameters:

- `id` (number, required): Relationship ID
- `relationship_type` (string)

### `delete_relationship` (~23 tokens)

Delete a constituent relationship by Relationship ID

Input parameters:

- `id` (number, required)

### `list_class_affiliations` (~26 tokens)

List class affiliations for a constituent

Input parameters:

- `constituent_id` (number, required)

### `create_class_affiliation` (~45 tokens)

Add a class affiliation to a constituent

Input parameters:

- `class_affiliation_type_id` (number, required)
- `class_year` (number)
- `constituent_id` (number, required)

### `get_class_affiliation` (~24 tokens)

Get class affiliation details by ID

Input parameters:

- `id` (number, required)

### `update_class_affiliation` (~31 tokens)

Update a class affiliation record

Input parameters:

- `class_year` (number)
- `id` (number, required)

### `delete_class_affiliation` (~25 tokens)

Delete a class affiliation record by ID

Input parameters:

- `id` (number, required)

### `list_class_affiliation_types` (~18 tokens)

List all available class affiliation types

### `list_groups` (~17 tokens)

List all constituent groups defined in LGL

### `create_group` (~21 tokens)

Create a new constituent group

Input parameters:

- `name` (string, required)

### `get_group` (~24 tokens)

Get details for a single group by ID

Input parameters:

- `id` (number, required)

### `update_group` (~27 tokens)

Update constituent group details

Input parameters:

- `id` (number, required)
- `name` (string)

### `delete_group` (~20 tokens)

Delete a constituent group

Input parameters:

- `id` (number, required)

### `list_group_memberships` (~26 tokens)

List group memberships for a specific constituent

Input parameters:

- `constituent_id` (number, required)

### `add_constituent_to_group` (~40 tokens)

Add a constituent to a group (creates a group membership)

Input parameters:

- `constituent_id` (number, required)
- `group_id` (number, required)

### `get_group_membership` (~27 tokens)

Get details for a group membership record by ID

Input parameters:

- `id` (number, required)

### `update_group_membership` (~31 tokens)

Update a group membership record

Input parameters:

- `group_id` (number)
- `id` (number, required)

### `remove_constituent_from_group` (~38 tokens)

Remove a constituent from a group (deletes the group membership record by ID)

Input parameters:

- `id` (number, required): Group Membership ID

### `list_memberships` (~27 tokens)

List membership program enrollments for a specific constituent

Input parameters:

- `constituent_id` (number, required)

### `create_membership` (~56 tokens)

Add a membership record to a constituent

Input parameters:

- `constituent_id` (number, required)
- `end_date` (string): YYYY-MM-DD
- `membership_level_id` (number, required)
- `start_date` (string): YYYY-MM-DD

### `get_membership` (~23 tokens)

Get membership record details by ID

Input parameters:

- `id` (number, required)

### `update_membership` (~48 tokens)

Update a membership record by ID

Input parameters:

- `end_date` (string)
- `id` (number, required)
- `membership_level_id` (number)
- `start_date` (string)

### `delete_membership` (~23 tokens)

Delete a membership record by ID

Input parameters:

- `id` (number, required)

### `list_membership_levels` (~19 tokens)

List all membership levels defined in LGL

### `create_membership_level` (~23 tokens)

Create a new membership level

Input parameters:

- `name` (string, required)

### `get_membership_level` (~24 tokens)

Get membership level details by ID

Input parameters:

- `id` (number, required)

### `update_membership_level` (~29 tokens)

Update membership level details

Input parameters:

- `id` (number, required)
- `name` (string)

### `delete_membership_level` (~23 tokens)

Delete membership level by ID

Input parameters:

- `id` (number, required)

### `list_constituent_invitations` (~29 tokens)

List event invitations for a specific constituent

Input parameters:

- `constituent_id` (number, required)

### `create_constituent_invitation` (~58 tokens)

Add a constituent to an event (creates an invitation record)

Input parameters:

- `constituent_id` (number, required)
- `event_id` (number, required)
- `invitation_status` (string): e.g. Invited, RSVP, Attended

### `list_event_invitations` (~26 tokens)

List invitations for a specific event

Input parameters:

- `event_id` (number, required)

### `create_event_invitation` (~43 tokens)

Add a constituent invitation directly inside an event

Input parameters:

- `constituent_id` (number, required)
- `event_id` (number, required)
- `invitation_status` (string)

### `get_invitation` (~23 tokens)

Get event invitation details by ID

Input parameters:

- `id` (number, required)

### `update_invitation` (~32 tokens)

Update an event invitation record by ID

Input parameters:

- `id` (number, required)
- `invitation_status` (string)

### `delete_invitation` (~24 tokens)

Delete an event invitation record by ID

Input parameters:

- `id` (number, required)

### `list_categories` (~17 tokens)

List all category types defined in LGL

### `create_category` (~21 tokens)

Create a new custom category

Input parameters:

- `name` (string, required)

### `get_category` (~22 tokens)

Get custom category details by ID

Input parameters:

- `id` (number, required)

### `update_category` (~29 tokens)

Update custom category name by ID

Input parameters:

- `id` (number, required)
- `name` (string)

### `delete_category` (~22 tokens)

Delete a custom category by ID

Input parameters:

- `id` (number, required)

### `list_keywords` (~24 tokens)

List keywords nested under a specific category

Input parameters:

- `category_id` (number, required)

### `create_keyword` (~32 tokens)

Create a new keyword nested under a category

Input parameters:

- `category_id` (number, required)
- `name` (string, required)

### `get_keyword` (~21 tokens)

Get keyword details by ID

Input parameters:

- `id` (number, required)

### `update_keyword` (~29 tokens)

Update a keyword record by ID

Input parameters:

- `id` (number, required)
- `name` (string)

### `delete_keyword` (~22 tokens)

Delete a keyword record by ID

Input parameters:

- `id` (number, required)

### `list_constituent_categories` (~26 tokens)

List categories assigned to a constituent

Input parameters:

- `constituent_id` (number, required)

### `add_keyword_to_constituent` (~39 tokens)

Assign a keyword (attribute/tag) to a constituent

Input parameters:

- `constituent_id` (number, required)
- `keyword_id` (number, required)

### `remove_keyword_from_constituent` (~38 tokens)

Remove keyword assignment from a constituent

Input parameters:

- `constituent_id` (number, required)
- `id` (number, required): Keyword assignment record ID

### `list_lists` (~17 tokens)

List all default lists configured in LGL

### `search_lists` (~18 tokens)

Search lists

Input parameters:

- `query` (string, required)

### `list_mailing_templates` (~15 tokens)

List all mailing templates

### `list_team_members` (~18 tokens)

List LGL team members / account users

### `list_custom_attributes` (~17 tokens)

List custom attributes defined in LGL

### `list_gift_categories` (~14 tokens)

List gift categories

### `list_gift_types` (~15 tokens)

List all gift types

### `list_payment_types` (~14 tokens)

List all payment types

### `list_relationship_types` (~14 tokens)

List all relationship types

### `list_account_types` (~15 tokens)

List types for an account

### `list_type_values` (~28 tokens)

List values for a specific type

Input parameters:

- `type` (string, required): e.g. constituent_types

### `get_metadata` (~14 tokens)

Retrieve LGL account metadata

### `recent_donors` (~36 tokens)

Get donors who gave within the last N days (30, 60, or 90)

Input parameters:

- `days` (number, required)

### `lapsed_donors` (~33 tokens)

Find donors who gave previously but not in the last N months

Input parameters:

- `months_lapsed` (number)

### `top_donors` (~53 tokens)

Get top donors ranked by total giving, optionally within a date range

Input parameters:

- `end_date` (string): YYYY-MM-DD
- `limit` (number)
- `start_date` (string): YYYY-MM-DD

### `constituents_missing_info` (~30 tokens)

Find constituents missing key contact information

Input parameters:

- `limit` (number)
- `missing` (array, required)

### `call_lgl_api` (~90 tokens)

Execute a custom LGL REST API request directly to any of the 141 supported endpoints. Use this as a complete backup tool.

Input parameters:

- `body` (object): Optional JSON payload body for POST/PATCH
- `method` (string, required): HTTP Method
- `path` (string, required): Endpoint path (e.g. /constituents/1/memberships or /types/constituent_types)

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/willheadlee-lgl-mcp-server/lgl-mcp-server#diagnostics

## Score history

- 2026-08-03: 62
- 2026-08-02: 58
- 2026-08-01: 7
- 2026-07-31: 19
- 2026-07-30: 25
- 2026-07-28: 43
- 2026-07-27: 43

## Links

- npm package: https://www.npmjs.com/package/lgl-mcp-server
- Socket report: https://socket.dev/npm/package/lgl-mcp-server
- Repository: https://github.com/WillHeadlee/Little-Green-Light-MCP-Server
- Changelog RSS feed: https://verifymcp.io/servers/willheadlee-lgl-mcp-server/lgl-mcp-server/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/willheadlee-lgl-mcp-server/lgl-mcp-server/changelog.json
- HTML version of this page: https://verifymcp.io/servers/willheadlee-lgl-mcp-server/lgl-mcp-server
