Skip to main content
Glama

Encharge MCP by usefulapi

Create or update a person

encharge_upsert_person
DestructiveIdempotent

WRITE: create a person, or update the one that already has this email, userId or Encharge id. Only the fields you pass are set. Use encharge_add_tags for tags. POST /people.

Input Schema

NameRequiredDescriptionDefault
idNoEncharge id of the person (a UUID).
emailNoEmail address of the person.
fieldsNoOther person fields by field name (see encharge_list_fields), for example { "company": "Acme", "plan": "pro" }. Dates as ISO 8601.
userIdNoThe userId your own app uses for the person.
lastNameNoLast name.
firstNameNoFirst name.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=true and openWorldHint=true, so the safety/identity profile is covered. The description adds genuinely new behavioral context beyond them: 'WRITE:' flags the mutation class, the upsert matching logic explains exactly what happens on repeat calls, and 'Only the fields you pass are set' clarifies the partial-update semantics that make the destructive hint tractable.

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?

Four short, front-loaded sentences with no filler: the WRITE marker, the upsert rule, the partial-update rule, the alternative tool, and the endpoint. Every clause carries information an agent needs and the most decision-relevant content (WRITE + matching key) comes first.

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 six-parameter mutation tool with no output schema, the description covers the operation class, the identity resolution rule, partial-update behavior, and the tag alternative, while annotations carry the rest of the safety profile. It does not address key precedence when multiple identifiers are passed or any pagination/response expectations, leaving a small gap.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3 and the schema already documents id, email, userId and the name fields. The description still adds meaning the schema does not: which parameters act as the identity/match key and therefore determine whether the call creates or updates. It does not explain precedence when multiple keys are supplied, which keeps it from a 5.

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+resource pair ('create a person, or update...') and immediately defines the upsert key semantics (email, userId, or Encharge id). It also names the sibling it is not (encharge_add_tags) so an agent can route tag operations away from this tool without opening a schema.

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

Usage Guidelines4/5

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

Gives clear context for when this tool applies (create, or update the existing record matched by one of three identifiers) and explicitly redirects tag work to encharge_add_tags. It stops short of stating when-not to use it (e.g. relationship to encharge_unsubscribe_person or encharge_track_event), so a 4 rather than a 5.

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.