memberful
Server Details
Manage Memberful members, subscriptions, plans, passes and coupons via the GraphQL API.
- Status
- Unhealthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Score is being calculated. Check back soon.
Available Tools
12 toolschange_subscription_expirationChange subscription expirationDestructiveInspect
MUTATES Memberful data: change WHEN a subscription expires (extend or shorten access). expiresAt is a Unix timestamp in SECONDS (Int). Memberful GraphQL: subscriptionChangeExpirationTime(id, expiresAt).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The subscription id (required). | |
| expiresAt | Yes | New expiration as a Unix timestamp in SECONDS (Int, required). |
create_couponsCreate couponsDestructiveInspect
MUTATES Memberful data: create one or more coupon codes for a discount. Provide the discount id (discountId) and the coupon code strings. Memberful GraphQL: createCoupons(discountId, coupons).
| Name | Required | Description | Default |
|---|---|---|---|
| codes | Yes | Coupon code strings to create (at least one, required). | |
| discountId | No | The discount id to attach the coupons to. |
create_memberCreate a memberDestructiveInspect
MUTATES Memberful data: create a new member with an email (and optional full name). Memberful GraphQL: memberCreate(email, fullName).
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | The new member's email (required). | ||
| fullName | No | The new member's full name. |
get_memberGet a memberRead-onlyInspect
Fetch one Memberful member by id: profile, Stripe customer id, unrestricted-access flag, total spend, metadata, address, and their subscriptions (each with plan). Memberful GraphQL: member(id).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The member id. |
get_subscriptionGet a subscriptionRead-onlyInspect
Fetch one subscription by id: status, activated/expires/trial timestamps, plan, member, orders, coupon. Memberful GraphQL: subscription(id).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The subscription id. |
list_membersList membersRead-onlyInspect
List members (Relay connection): each edge has a cursor + node (profile, Stripe customer id, unrestricted-access flag, total spend, and their subscriptions). Paginate with first + after (pass the last edge's cursor); first defaults to 50. Set activeOnly to return only members with an ACTIVE membership state. For member-state filters beyond active, use memberful_query. Memberful GraphQL: members connection.
| Name | Required | Description | Default |
|---|---|---|---|
| last | No | Max members to return, from the end. | |
| after | No | Cursor for the next page (the `cursor` of the last edge from a prior call). | |
| first | No | Max members to return, from the start (page size). | |
| before | No | Cursor for the previous page. | |
| activeOnly | No | Only return members with an ACTIVE membership state. |
list_passesList passesRead-onlyInspect
List all passes (Memberful dashboard 'Plans' — the access groups a member subscribes to): id, name. Memberful GraphQL: passes.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
list_plansList plansRead-onlyInspect
List all plans (Memberful dashboard 'Prices'): name, interval, price (cents), for-sale flag, plan group. Memberful GraphQL: plans.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
list_subscriptionsList subscriptionsRead-onlyInspect
List subscriptions (Relay connection): each edge has a cursor + node (status, expires/created timestamps, plan, member). Paginate with first + after (pass the last edge's cursor); first defaults to 50. NOTE: this uses the top-level subscriptions connection, which is sourced from the community SDK — validate against a live account. Memberful GraphQL: subscriptions connection.
| Name | Required | Description | Default |
|---|---|---|---|
| last | No | Max subscriptions to return, from the end. | |
| after | No | Cursor for the next page (the `cursor` of the last edge from a prior call). | |
| first | No | Max subscriptions to return, from the start (page size). | |
| before | No | Cursor for the previous page. |
memberful_graphqlRun a GraphQL operation (query or mutation)DestructiveInspect
MUTATES Memberful data (potentially): escape hatch to run an arbitrary Memberful GraphQL operation — including any mutation — against your account's /api/graphql endpoint with optional variables. Prefer memberful_query for read-only calls.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | A GraphQL query or mutation document. | |
| variables | No | Variables object for the operation. |
memberful_queryRun a GraphQL query (read-only)Read-onlyInspect
Escape hatch: run an arbitrary Memberful GraphQL QUERY (read-only) against your account's /api/graphql endpoint with optional variables. Mutations are REJECTED — use the dedicated write tools or memberful_graphql for those. Useful for fields not covered by the curated read tools (e.g. member-state filters beyond active).
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | A GraphQL query document (must be a query, not a mutation). | |
| variables | No | Variables object for the query. |
update_memberUpdate a memberDestructiveInspect
MUTATES Memberful data: update a member's metadata (a JSON string; max 50 keys, 40-char keys, 500-char values). Only metadata is supported here; for other inline member fields use memberful_graphql. Memberful GraphQL: memberUpdate(id, metadata).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The member id (required). | |
| metadata | No | Metadata as a JSON string (max 50 keys, 40-char keys, 500-char values). |
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!