MagicBell MCP by usefulapi
by usefulapi.io · remote · no sign-in to list tools · v1.16.3 · published by io.usefulapi
Read MagicBell broadcasts, users, events, workflows and channels; create and update user records.
13 tools: 2 can delete or cancel things and 11 only read.
Scanned Oct 21, 2026
- Deletes or cancels2Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads11Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http magicbell https://magicbell.usefulapi.io/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
13 tools
Deletes or cancels 2Claude Code: deny
magicbell_create_userCreates a user (notification recipient) record in MagicBell.No findings
Why it is in this group
- The name "magicbell_create_user" says "create": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it 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.
Annotations the server declares
- title: Create a user
- destructiveHint: true
magicbell_update_userUpdates a user record (reversible; sends no notification).No findings
Why it is in this group
- The name "magicbell_update_user" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Updates a user record (reversible; sends no notification). Project API: PUT /users/{user_id}.
Annotations the server declares
- title: Update a user
- destructiveHint: true
Only reads 11Claude Code: allow
magicbell_get_broadcastFetch a single broadcast by id.No findings
Why it is in this group
- The name "magicbell_get_broadcast" says "get": a word for reading.
Description, as the server wrote it Fetch a single broadcast by id. Project API: GET /broadcasts/{broadcast_id}.
Annotations the server declares
- title: Get a broadcast
- readOnlyHint: true
magicbell_get_eventFetch a single delivery event by id.No findings
Why it is in this group
- The name "magicbell_get_event" says "get": a word for reading.
Description, as the server wrote it Fetch a single delivery event by id. Project API: GET /events/{event_id}.
Annotations the server declares
- title: Get an event
- readOnlyHint: true
magicbell_get_userFetch a single user by MagicBell user id or external id.No findings
Why it is in this group
- The name "magicbell_get_user" says "get": a word for reading.
Description, as the server wrote it Fetch a single user by MagicBell user id or external id. Project API: GET /users/{user_id}.
Annotations the server declares
- title: Get a user
- readOnlyHint: true
magicbell_get_workflow_runFetch a single workflow run by id.No findings
Why it is in this group
- The name "magicbell_get_workflow_run" says "get": a word for reading.
Description, as the server wrote it Fetch a single workflow run by id. Project API: GET /workflows/runs/{run_id}.
Annotations the server declares
- title: Get a workflow run
- readOnlyHint: true
magicbell_list_broadcastsList broadcasts (notification-send batches) with cursor pagination.No findings
Why it is in this group
- The name "magicbell_list_broadcasts" says "list": a word for reading.
Description, as the server wrote it List broadcasts (notification-send batches) with cursor pagination. Read-only observability. Project API: GET /broadcasts.
Annotations the server declares
- title: List broadcasts
- readOnlyHint: true
magicbell_list_channelsList delivery channels (in-app, email, push, SMS, etc.) with cursor pagination.No findings
Why it is in this group
- The name "magicbell_list_channels" says "list": a word for reading.
Description, as the server wrote it List delivery channels (in-app, email, push, SMS, etc.) with cursor pagination. Project API: GET /channels.
Annotations the server declares
- title: List channels
- readOnlyHint: true
magicbell_list_eventsList notification delivery events with cursor pagination.No findings
Why it is in this group
- The name "magicbell_list_events" says "list": a word for reading.
Description, as the server wrote it List notification delivery events with cursor pagination. Read-only observability. Project API: GET /events.
Annotations the server declares
- title: List events
- readOnlyHint: true
magicbell_list_integrationsList configured provider integrations (e.g.No findings
Why it is in this group
- The name "magicbell_list_integrations" says "list": a word for reading.
Description, as the server wrote it List configured provider integrations (e.g. Sendgrid, APNs, FCM). Project API: GET /integrations.
Annotations the server declares
- title: List integrations
- readOnlyHint: true
magicbell_list_usersList users (notification recipients) with cursor pagination.No findings
Why it is in this group
- The name "magicbell_list_users" says "list": a word for reading.
Description, as the server wrote it List users (notification recipients) with cursor pagination. Project API: GET /users.
Annotations the server declares
- title: List users
- readOnlyHint: true
magicbell_list_workflow_runsList workflow runs (execution history) with cursor pagination.No findings
Why it is in this group
- The name "magicbell_list_workflow_runs" says "list": a word for reading.
Description, as the server wrote it List workflow runs (execution history) with cursor pagination. Project API: GET /workflows/runs.
Annotations the server declares
- title: List workflow runs
- readOnlyHint: true
magicbell_list_workflowsList notification workflows with cursor pagination.No findings
Why it is in this group
- The name "magicbell_list_workflows" says "list": a word for reading.
Description, as the server wrote it List notification workflows with cursor pagination. Project API: GET /workflows.
Annotations the server declares
- title: List workflows
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.16.3. Values in angle brackets are yours to fill in.
claude mcp add --transport http magicbell https://magicbell.usefulapi.io/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__magicbell__magicbell_list_broadcasts",
"mcp__magicbell__magicbell_get_broadcast",
"mcp__magicbell__magicbell_list_users",
"mcp__magicbell__magicbell_get_user",
"mcp__magicbell__magicbell_list_events",
"mcp__magicbell__magicbell_get_event",
"mcp__magicbell__magicbell_list_workflows",
"mcp__magicbell__magicbell_list_workflow_runs",
"mcp__magicbell__magicbell_get_workflow_run",
"mcp__magicbell__magicbell_list_channels",
"mcp__magicbell__magicbell_list_integrations"
],
"ask": [],
"deny": [
"mcp__magicbell__magicbell_create_user",
"mcp__magicbell__magicbell_update_user"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as magicbell. Review it before you use it.