Skip to main content
Glama

Server Details

Read MagicBell broadcasts, users, events, workflows and channels; create and update user records.

Status
Healthy
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.

MCP client
Glama
MCP server

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.

100% free. Your data is private.
Tool DescriptionsA

Average 3.9/5 across 13 of 13 tools scored. Lowest: 3.1/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct resource and action (create, get, list, update) with no overlap. Verbs and nouns are clearly separated.

Naming Consistency5/5

All tools follow a consistent 'magicbell_verb_noun' pattern, with verbs (create, get, list, update) and singular/plural usage appropriate to the operation.

Tool Count5/5

13 tools cover core user management, broadcast/event observability, and configuration listing without being excessive or sparse for a notification platform.

Completeness4/5

Covers user CRUD (missing delete), broadcast/event/get/list, and configuration listing. While some write operations are absent, the set supports essential admin and observability tasks.

Available Tools

13 tools
magicbell_create_userCreate a userA
Destructive
Inspect

Creates a user (notification recipient) record in MagicBell. Additive — sends no notification. Provide at least one identifier (external_id or email). Project API: POST /users.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoUser email address.
timezoneNoIANA timezone, e.g. America/New_York.
last_nameNoUser last name.
first_nameNoUser first name.
external_idNoYour own stable id for this user (recommended identifier).
phone_numbersNoArray of phone numbers (E.164).
custom_attributesNoArbitrary key/value metadata for the user.
Behavior3/5

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

Annotations include destructiveHint=true, which already signals a mutation. The description adds 'Additive — sends no notification,' providing additional context about side effects, but no further behavioral details are disclosed.

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?

The description is three sentences long, front-loaded with the core purpose, and contains no redundant information. Every sentence contributes to understanding.

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?

With 7 parameters, 100% schema coverage, and annotations present, the description adequately covers purpose, a key side effect (no notification), and a usage requirement. It does not explain output or errors, but given the lack of an output schema, this is acceptable.

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 description coverage is 100%, so each parameter is documented. The description adds value by clarifying the requirement to provide at least one identifier (external_id or email), which is not apparent from individual parameter descriptions.

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?

The description clearly states it creates a user (notification recipient) in MagicBell, specifying the resource and action. It distinguishes from sibling tools like magicbell_update_user (update) and read tools.

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?

The description mentions 'Provide at least one identifier (external_id or email)' and 'Additive — sends no notification,' which gives guidance on usage. However, it does not explicitly exclude cases or mention alternatives to this tool.

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

magicbell_get_broadcastGet a broadcastA
Read-only
Inspect

Fetch a single broadcast by id. Project API: GET /broadcasts/{broadcast_id}.

ParametersJSON Schema
NameRequiredDescriptionDefault
broadcast_idYesBroadcast id.
Behavior2/5

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

Annotations already declare readOnlyHint=true, so read-only nature is covered. Description adds no additional behavioral context (e.g., auth, rate limits, side effects).

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?

Two short sentences with no fluff. Includes API endpoint for extra context. Every sentence justifies its existence.

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

Completeness3/5

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

Simple fetch-by-id tool with readOnlyHint and one required param; description is adequate but lacks return format or error details. No output schema to compensate.

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 coverage is 100% with description 'Broadcast id.' The tool description adds no extra meaning beyond that, earning the baseline score.

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?

Description clearly states action (fetch), resource (broadcast), and identifier (id). Explicitly distinguishes from list tool (sibling magicbell_list_broadcasts).

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?

Implicitly indicates using it when you have a specific broadcast_id, but no explicit when-to-use or when-to-avoid guidance, nor alternatives mentioned.

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

magicbell_get_eventGet an eventA
Read-only
Inspect

Fetch a single delivery event by id. Project API: GET /events/{event_id}.

ParametersJSON Schema
NameRequiredDescriptionDefault
event_idYesEvent id.
Behavior3/5

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

Annotations already include readOnlyHint=true, indicating a safe read operation. The description adds the HTTP method and endpoint ('GET /events/{event_id}'), which is useful but does not disclose additional behavioral traits beyond what annotations provide.

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?

Two sentences, both essential. The first states the purpose, the second provides the API endpoint. No redundant or unnecessary 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?

Given the tool's simplicity (one required parameter, no output schema, read-only annotation), the description is largely complete. It could mention the return format or error handling, but for a straightforward fetch operation, this is a minor 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 coverage is 100% with one required parameter 'event_id' having a minimal description 'Event id.' The description adds 'by id' but does not provide further details like format or examples, so it adds marginal value beyond the schema.

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?

The description clearly states 'Fetch a single delivery event by id,' using a specific verb and resource, and distinguishes from sibling 'magicbell_list_events' which lists instead of fetching a single event.

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?

The description implies usage for fetching a specific event by ID but does not explicitly state when not to use it (e.g., for listing events, use list_events). No alternatives or exclusions are mentioned.

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

magicbell_get_userGet a userA
Read-only
Inspect

Fetch a single user by MagicBell user id or external id. Project API: GET /users/{user_id}.

ParametersJSON Schema
NameRequiredDescriptionDefault
user_idYesMagicBell user id or external id.
Behavior4/5

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

The description 'Fetch' is consistent with the readOnlyHint annotation. Adds endpoint context but no additional behavioral details beyond annotations. No contradictions.

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?

Two efficient sentences with no wasted words. Front-loads the core purpose and includes the API endpoint for developer reference.

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?

Given the small parameter count, read-only annotation, and no output schema, the description sufficiently covers the tool's functionality. Could optionally mention the response shape but not critical.

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 coverage is 100% as the description for user_id matches the parameter description. The description restates the schema info, adding no extra meaning.

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?

Clearly states the verb 'Fetch' and resource 'single user', specifies identifier types (user id or external id), and mentions the API endpoint. Distinguishes from sibling tools like list_users and create_user.

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?

Indicates when to use (fetch single user by id) but does not explicitly mention alternative tools or when not to use. However, the context of siblings implies the usage scope.

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

magicbell_get_workflow_runGet a workflow runA
Read-only
Inspect

Fetch a single workflow run by id. Project API: GET /workflows/runs/{run_id}.

ParametersJSON Schema
NameRequiredDescriptionDefault
run_idYesWorkflow run id.
Behavior3/5

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

Annotations provide readOnlyHint=true, and description aligns with 'Fetch'. Adds the API endpoint (GET) but no additional behavioral details beyond annotations.

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?

Two sentences, front-loaded with the core purpose. No wasted words, efficient and clear.

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?

Given the tool's simplicity (1 required param, no output schema), the description sufficiently covers the essential information. Could mention response format but not critical for a basic fetch.

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 coverage is 100% with parameter description 'Workflow run id.' Description does not add extra semantics beyond what the schema already provides.

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?

Description states 'Fetch a single workflow run by id', clearly specifying the verb, resource, and method. It distinguishes from sibling tools like magicbell_list_workflow_runs by implying singular retrieval.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. Sibling tools exist but no explicit when-to-use or when-not-to-use context.

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

magicbell_list_broadcastsList broadcastsA
Read-only
Inspect

List broadcasts (notification-send batches) with cursor pagination. Read-only observability. Project API: GET /broadcasts.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax items per page (cursor pagination).
ending_beforeNoCursor: return items before this id (previous page).
starting_afterNoCursor: return items after this id (next page).
Behavior4/5

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

Annotations already indicate readOnlyHint=true; description adds specific pagination type (cursor) and HTTP method (GET), providing context beyond annotations.

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?

Three concise sentences, each valuable: purpose+pagination, read-only nature, API endpoint. No fluff.

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?

Explains purpose, read-only, pagination, and endpoint. Lacks return format details, but that is acceptable for a simple list tool with no output schema.

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 covers all 3 parameters (100%). Description mentions 'cursor pagination' but does not add new meaning beyond schema.

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?

Clearly states verb (List), resource (broadcasts/notification-send batches), and adds pagination detail. Distinguishes from sibling 'get_broadcast' by enumerative vs. singular retrieval.

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?

Implies use for listing broadcasts with pagination, but no explicit when-to-use or when-not-to-use compared to alternatives like 'magicbell_get_broadcast'.

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

magicbell_list_channelsList channelsA
Read-only
Inspect

List delivery channels (in-app, email, push, SMS, etc.) with cursor pagination. Project API: GET /channels.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax items per page (cursor pagination).
ending_beforeNoCursor: return items before this id (previous page).
starting_afterNoCursor: return items after this id (next page).
Behavior4/5

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

Annotations already declare readOnlyHint=true; the description adds value by specifying the pagination method (cursor) and the API endpoint (GET /channels), which is consistent and informative.

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?

The description is extremely concise with two sentences that front-load the main action and provide essential context without extra words.

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?

Given full schema coverage and annotations, the description is complete for a list tool; missing output details are acceptable since no output schema is expected.

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 description adds no extra parameter meaning. Baseline score of 3 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?

The description explicitly states that the tool lists delivery channels and provides examples (in-app, email, push, SMS), making the purpose clear and distinct from sibling list tools (e.g., events, broadcasts).

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?

The description mentions cursor pagination, implying usage for paginated listing, but does not provide explicit guidance on when to use this tool vs. siblings or when not to use it.

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

magicbell_list_eventsList eventsA
Read-only
Inspect

List notification delivery events with cursor pagination. Read-only observability. Project API: GET /events.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax items per page (cursor pagination).
ending_beforeNoCursor: return items before this id (previous page).
starting_afterNoCursor: return items after this id (next page).
Behavior4/5

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

Annotations already declare readOnlyHint=true, and the description reinforces this with 'Read-only observability'. It adds context about the project API endpoint (GET /events), providing useful behavioral information beyond annotations.

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?

The description is extremely concise with two sentences that are front-loaded with the main purpose. Every word adds value, with no redundancy.

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?

Given the tool's simplicity (list with pagination, read-only), the description covers essential aspects: what it lists, pagination mechanism, and read-only nature. It lacks details about the return format but is mostly complete for a filtered-list tool with good annotations.

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 all parameters well. The description adds no extra parameter-specific details beyond what is in the schema.

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?

The description clearly states the tool lists notification delivery events with cursor pagination, which is a specific verb and resource. It distinguishes from siblings like magicbell_get_event (single event) by emphasizing the list aspect.

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?

No explicit guidance on when to use this tool versus alternatives. The description implies usage for listing events with pagination, but does not clarify when to prefer this over other list tools or provide exclusion criteria.

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

magicbell_list_integrationsList integrationsA
Read-only
Inspect

List configured provider integrations (e.g. Sendgrid, APNs, FCM). Project API: GET /integrations.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true. Description adds endpoint and examples but no additional behavioral context beyond that.

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?

Single sentence, no wasted words. Efficiently conveys purpose and endpoint.

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?

Annotations cover read-only nature, description includes examples and endpoint. No output schema, but return values are implied. Adequate for a simple list tool.

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?

No parameters, so schema coverage is 100%. Description doesn't add parameter info, but none is needed. Baseline 4 for zero 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?

Description clearly states 'List configured provider integrations' with examples, distinguishing it from sibling tools that list other entities.

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?

No explicit when-to-use or alternatives, but for a simple list tool with no parameters, usage is implied. Lacks exclusionary context.

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

magicbell_list_usersList usersA
Read-only
Inspect

List users (notification recipients) with cursor pagination. Project API: GET /users.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax items per page (cursor pagination).
ending_beforeNoCursor: return items before this id (previous page).
starting_afterNoCursor: return items after this id (next page).
Behavior3/5

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

Annotations already declare readOnlyHint=true. Description adds cursor pagination and the GET endpoint, but does not elaborate on rate limits, authentication, or edge cases. Minimal additional value beyond annotations.

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?

Two concise sentences covering core functionality and pagination method. No extraneous information.

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

Completeness3/5

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

Covers listing and pagination but lacks details on response format (e.g., array of users). For a simple list tool with no output schema, moderate completeness is acceptable.

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 coverage is 100% with clear parameter descriptions. The description adds no extra meaning beyond what the schema already provides.

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?

Description explicitly states 'List users (notification recipients)' with a specific verb and resource. Mentions cursor pagination, distinguishing it from sibling list tools for other resources.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like magicbell_get_user or search tools. Does not specify contexts or exclusions.

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

magicbell_list_workflow_runsList workflow runsA
Read-only
Inspect

List workflow runs (execution history) with cursor pagination. Project API: GET /workflows/runs.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax items per page (cursor pagination).
ending_beforeNoCursor: return items before this id (previous page).
starting_afterNoCursor: return items after this id (next page).
Behavior4/5

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

Annotations already signal readOnlyHint=true, so the description adds value by mentioning cursor pagination and the HTTP method GET. No contradictions.

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?

One short sentence and a URL. Fully front-loaded, zero waste.

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?

Given low complexity, no output schema, and annotations, the description is complete enough. It covers purpose and pagination method.

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 coverage is 100%, so baseline is 3. Description does not add extra meaning beyond the schema, though it reiterates cursor pagination.

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?

Description clearly states 'List workflow runs (execution history) with cursor pagination.' It uses a specific verb and resource, and distinguishes from siblings like magicbell_list_workflows (workflows) and magicbell_get_workflow_run (single run).

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?

No explicit guidance on when to use vs. alternatives. Context from sibling names is available, but description does not mention when not to use or provide alternatives.

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

magicbell_list_workflowsList workflowsA
Read-only
Inspect

List notification workflows with cursor pagination. Project API: GET /workflows.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax items per page (cursor pagination).
ending_beforeNoCursor: return items before this id (previous page).
starting_afterNoCursor: return items after this id (next page).
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's mention of cursor pagination adds some value beyond annotations, but does not provide a comprehensive behavioral overview (e.g., no mention of return format or error handling).

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?

Two sentences with no fluff. The first sentence provides the core purpose and key feature (cursor pagination), and the second is a brief API reference. Every sentence earns its place.

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

Completeness3/5

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

For a list tool with 3 optional parameters, the description is minimal. It does not explain what the tool returns (e.g., list of workflow objects with pagination metadata). Given no output schema, this gap reduces completeness.

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% and the description adds context by naming cursor pagination, which explains the purpose of the 'ending_before' and 'starting_after' parameters. This enhances understanding beyond the schema definitions alone.

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?

The description clearly states the action 'list' and the resource 'notification workflows', distinguishing it from sibling list tools like magicbell_list_broadcasts and magicbell_list_channels.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, prerequisites, or when not to use it. The API reference 'Project API: GET /workflows' is informative but not actionable for decision-making.

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

magicbell_update_userUpdate a userA
Destructive
Inspect

Updates a user record (reversible; sends no notification). Project API: PUT /users/{user_id}.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoUser email address.
user_idYesMagicBell user id or external id to update.
timezoneNoIANA timezone, e.g. America/New_York.
last_nameNoUser last name.
first_nameNoUser first name.
external_idNoYour own stable id for this user (recommended identifier).
phone_numbersNoArray of phone numbers (E.164).
custom_attributesNoArbitrary key/value metadata for the user.
Behavior3/5

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

Annotations provide destructiveHint=true, indicating mutation. The description adds that the update is reversible and sends no notification, offering some behavioral context beyond annotations. However, it does not cover authorization needs, rate limits, or other side effects.

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?

The description is a single sentence that front-loads key information: update, reversibility, no notification. No wasted words.

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

Completeness2/5

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

With 8 parameters (including nested objects), no output schema, and one required parameter, the description is too minimal. It does not explain return values, error handling, or guidance on using external_id vs user_id.

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 coverage is 100%, so baseline is 3. The description adds no new parameter semantics beyond what the input schema already documents; it only mentions the PUT endpoint redundantly.

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?

The title and description clearly state it updates a user. It specifies the verb 'updates' and the resource 'user record', and distinguishes from siblings like magicbell_create_user (creates) and magicbell_get_user (reads) by implying modification.

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?

The description implies usage for modifying user fields. It does not explicitly state when not to use it or mention alternatives, but the purpose is clear enough for an agent to differentiate from create and list operations.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    Enables AI agents to interact with Novu's notification infrastructure, supporting event triggering, subscriber management, topic operations, and notification retrieval.
  • F
    license
    -
    quality
    -
    maintenance
    Enables AI agents to interact with Novu's notification system, facilitating operations like sending notifications, managing subscribers, and organizing topics.
    4
  • A
    license
    A
    quality
    C
    maintenance
    Manage your entire notification infrastructure using natural language. Trigger workflows, create users, manage preferences, update tenant branding, and access docs — all from Cursor, Claude Desktop, or Windsurf. 24 tools covering email, SMS, push, WhatsApp, Slack, MS Teams, and in-app notifications.
    22
    12
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    Enables AI assistants to manage notification infrastructure—workflows, channels, templates, users, and more—via Knock's API with OAuth authentication.
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.