Skip to main content
Glama

Set membership plan

set_membership_plan
DestructiveIdempotent

Create (new slug) or edit a plan; only passed fields change. Slug is permanent; gate content in Liquid with customer.me | first, then me.plans[''] (get_style_reference members). Paid: stripePriceIds. Free: selfSignup. Pro+.

Input Schema

NameRequiredDescriptionDefault
idNoSite id.
nameNoRequired when creating.
slugYesa-z, 0-9, dashes.
archivedNoStop selling; members keep it.
accessDaysNoOne-time prices: days per purchase. Omit = lifetime.
selfSignupNoFree plan; only with no prices.
descriptionNo
stripePriceIdsNoStripe price ids or pd:<rowId>.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true; the description adds the important non-obvious behaviors: partial update ('only passed fields change') and slug permanence, which is an irreversible naming decision. The 'Pro+' suffix flags a plan prerequisite. Return shape and what happens to existing prices on edit are not covered, keeping it below a 5.

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?

Roughly three dense clauses with the create/edit distinction front-loaded and zero filler. The Liquid gating fragment ('customer.me | first, then me.plans[<slug>]') is telegraphic and takes a re-read, which costs a point, but every sentence carries real information.

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 destructive 8-parameter mutation with annotations but no output schema, the description covers the risky parts: partial updates, immutable slug, paid vs free configuration, and the plan-tier requirement. It does not describe the result of the call or how archived plans behave, but the agent has enough to invoke it correctly.

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 88%, so the schema already documents all 8 parameters well. The description adds cross-parameter meaning by pairing paid plans with stripePriceIds and free plans with selfSignup, plus the note that name is needed on create. That is useful but largely restates schema constraints, so baseline-plus is appropriate.

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 ('Create (new slug) or edit a plan') and defines the operation as an upsert keyed on slug. That immediately distinguishes it from list_membership_plans and from the set_member/set_portal siblings without needing to open the 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 concrete configuration context: paid plans use stripePriceIds, free plans use selfSignup, and the tool is 'Pro+'. It also points to get_style_reference for member gating. It stops short of explicit when-not-to-use guidance or stating the alternative for reading plans, but the conditions for each mode are clear.

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.

Resources