Skip to main content
Glama
zackscriven

ghl-mcp-server-v2

by zackscriven

ghl_affiliate_update_customer_state

Updates whether an affiliate's customer is disabled, letting you enable or disable customer access through the affiliate manager API.

Instructions

Update customer state Update the disabled state of a customer for an affiliate. Endpoint: PATCH /affiliate-manager/{locationId}/affiliates/{affiliateId}/customers/{customerId}/state (Version header: v3; source: v3/affiliate-manager-v3.json) Requires a Sub-Account (location) token. OAuth scopes: affiliate-manager.write

Input Schema

NameRequiredDescriptionDefault
bodyYesRequest body (schema carried verbatim from the official OpenAPI spec).
customerIdYesCustomer Id
locationIdYesLocation Id
affiliateIdYesAffiliate Id

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly=false and idempotent=false, so the bar is lower, yet the description still adds real context: PATCH semantics, the specific field being mutated (isDisabled), that a Sub-Account/location token is required, and the affiliate-manager.write OAuth scope. It stops short of describing downstream effects of disabling a customer (e.g. on commissions or payouts), which would be valuable for a state-changing call.

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?

The operative purpose sentence is front-loaded before endpoint and auth metadata, and the remaining lines are dense with useful operational facts. The opening line duplicates the tool title, which is minor waste, and the endpoint/version/source line is bulky but justified.

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

Completeness5/5

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

For a boolean toggle with no output schema, the description covers what is mutated, the HTTP method, the auth token type and required OAuth scope, and the endpoint. An agent has everything needed to invoke it correctly; only post-mutation effects are unstated, which is an edge case rather than a blocking gap.

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 description coverage is 100%, so the schema already documents locationId, affiliateId, customerId and body.isDisabled. The description adds only the conceptual mapping of 'disabled state' to body.isDisabled; it gives no format, default, or reversal semantics beyond the schema. Baseline 3 applies.

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

Purpose4/5

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

States a specific verb+resource: 'Update the disabled state of a customer for an affiliate', which is more precise than the bare name. It doesn't explicitly say how it differs from the nearby affiliate-state siblings (ghl_affiliate_update_status, ghl_affiliate_update_suspension), but the customer-scoped target is clear enough to distinguish it.

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?

Usage is implied by 'disabled state' — an agent can infer this is the enable/disable toggle for an affiliate's customer. There is no explicit when-to-use/when-not guidance, no alternatives named, and no exclusion from the delete or validate-customer siblings.

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

Deploy Server

Other Tools