Skip to main content
Glama

SlickText MCP by usefulapi

Create a contact

slicktext_create_contact
Destructive

WRITE: add a contact to the brand. By default the contact is created as 'not subscribed' and gets no text. Set opt_in_status='subscribed' ONLY for people who gave explicit permission to receive texts (SlickText has a zero-tolerance policy for unsolicited texts). force_double_opt_in=true makes SlickText SEND A REAL SMS to the number asking the person to confirm. Check slicktext_find_contact first to avoid duplicates. WARNING: SlickText workflows can trigger on this event (Contact Created / Contact Field Changed / Contact Added to List) and may immediately SEND REAL TEXTS or take other actions configured in the brand's workflows. POST /brands/{brand_id}/contacts.

Input Schema

NameRequiredDescriptionDefault
zipNo
cityNo
emailNo
stateNo
addressNo
countryNo
languageNoPrimary language code, e.g. "en".
timezoneNoContact time zone (SlickText accepts these four).
birthdateNoBirthday, YYYY-MM-DD.
last_nameNo
first_nameNo
custom_fieldsNoCustom field values keyed by the field's internal_name (see slicktext_list_custom_fields), e.g. {"favorite_color": "blue"}.
mobile_numberYesMobile number (required), e.g. +16155553338 or (615) 555-3338.
opt_in_statusNoDefault 'not subscribed'. 'subscribed' only with the person's explicit consent.
force_double_opt_inNotrue = SlickText texts the number a double opt-in confirmation (a real SMS).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Goes well beyond annotations: default 'not subscribed' with no text sent, double opt-in triggers a REAL SMS, and the workflow-trigger warning (Contact Created / Field Changed / Added to List) that may immediately send real texts. Annotations already cover destructiveHint/openWorldHint, and the description adds substantive side-effect context, though it doesn't mention auth or rate limits.

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 the write nature and core behavior, then adds warnings. Dense and mostly waste-free, though the length (opt_in and workflow warnings) makes it heavier than a typical definition, with some repetition of the consent/real-text theme.

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 15-param, nested-object, no-output-schema mutation tool, it covers the critical behavioral facts an agent needs (defaults, consent rules, real-SMS side effects, dedup pointer). It stops short of return-value expectations and auth requirements, but those are minor gaps given the annotations.

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?

With schema description coverage at 47%, the description compensates by adding real meaning for the semantically tricky params (opt_in_status default and consent condition, force_double_opt_in = real SMS confirmation). Remaining params are largely self-explanatory standard contact fields, so the added value is meaningful but not complete across all 15 params.

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?

Opens with a specific verb+resource: "WRITE: add a contact to the brand." It distinguishes itself from siblings by routing duplicate-checking to slicktext_find_contact and by stating the write/side-effect profile, so an agent can tell it apart from read tools like slicktext_get_contact or slicktext_find_contact 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 Guidelines5/5

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

Explicitly states the condition for the key choice (opt_in_status='subscribed' ONLY for people who gave explicit permission) and names the alternative action ("Check slicktext_find_contact first to avoid duplicates"). It also clarifies the effect of force_double_opt_in, so when-to-use and when-not are both covered.

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.