Skip to main content
Glama

Server Details

Mighty Automation is a marketing automation platform with built-in CRM. This MCP connector lets AI clients run email marketing, enroll contacts in automations, create and update contacts, search leads, add tags and notes, list appointments, create booking links, import files, and manage webhooks. Everything is scoped to one workspace with a revocable key. Read tools are free; actions are $0.005 per successful call (import_file $0.025). Paid Mighty Automation plan required. Auth: Bearer API key (

Ownership verified
Status
Healthy
Uptime
100.0% over the last 24 hours
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A3.7/5.0

Scored across 37 tools

Disambiguation4/5

Most tools have clearly distinct purposes, especially across CRM, calendar, hooks, media, and Grok pipeline operations. A few contact-lookup tools (find_contact, search_leads, list_contacts, get_contact) and Grok pipeline stages require careful description reading, but boundaries are generally documented.

Naming Consistency4/5

The set overwhelmingly follows a snake_case verb_noun convention, with predictable prefixes for the Grok subdomain. Minor deviations like whoami and less strictly verb-based names such as grok_render_status and grok_stitch keep it from being fully uniform.

Tool Count2/5

37 tools is heavy for one MCP server and spans many subdomains: CRM, calendar, automations, webhooks, media, campaigns, dialer, content calendar, credits, and an AI audio/video pipeline. While each tool may be individually justified, the overall set is large and increases selection burden.

Completeness3/5

Core workflows are well covered for contacts, appointments, hooks, and the Grok audio/video pipeline. However, notable lifecycle gaps remain: automations are mostly read/enroll only, campaigns are list-only, media assets cannot be deleted or downloaded, and contact deletion/tag removal are absent.

Available Tools

37 tools
add_noteAdd a noteAInspect

Append a note to a contact's timeline — visible in the CRM and usable for handoffs, call summaries, or context the member should see.

Inputs: content (required), contact_id (required). Returns: ok, note, error

add_tagAdd tags to a contactA
Idempotent
Inspect

Merge one or more tags onto a contact — existing tags are kept. Locate the contact by contact_id or email.

Inputs: tags (required), email, contact_id. Returns: ok, tags, added, error, +1 more

cancel_appointmentCancel an appointmentA
Destructive
Inspect

Cancel an appointment on the Sales Calendar, optionally noting a reason on it. Ids come from list_appointments. CRM calendar only — no attendee email. Appointments synced to Google Calendar or booked through a scheduling link return manage_in_app: cancel those in the Sales Calendar. Confirm with the member first.

Inputs: appointment_id (required), reason. Returns: ok, error, message, appointment

create_appointmentCreate an appointmentAInspect

Add an appointment, call, or meeting to the workspace Sales Calendar, optionally attached to a contact (by contact_id or email). This writes the CRM calendar only — it does not create a Google Calendar event, send an invite, or email anyone.

Inputs: title (required), scheduled_at (required), type, email, +5 more. Returns: ok, error, appointment

create_hookSubscribe to events (webhook)AInspect

Register a webhook URL — MightyAutomation POSTs each matching event to it as they happen. Use event_type "*" for every event, or a specific type like contact_created / form_submitted / appointment_booked. This is how an external agent receives real-time notifications instead of polling list_events.

Inputs: event_type (required), target_url (required). Returns: id, ok, error, event_type, +1 more

delete_hookUnsubscribe a webhookA
DestructiveIdempotent
Inspect

Remove a webhook subscription by id (ids come from list_hooks). Events stop being delivered to that URL. Idempotent — deleting a missing hook still succeeds.

Inputs: hook_id (required). Returns: ok, error

enroll_automationEnroll contact in an automationAInspect

Start an automation for a contact — locate it by automation_id or automation_name (case-insensitive; names come from list_automations) and the contact by contact_id or email. Google steps (Gmail send, Calendar event, Drive file, Sheets row) do NOT run immediately: they come back in pending_google_approvals with status awaiting_approval until the account owner approves them in the app.

Inputs: email, contact_id, automation_id, automation_name. Returns: ok, error, run_id, status, +3 more

find_contactFind contact by emailA
Read-onlyIdempotent
Inspect

Look up a CRM contact by email address (case-insensitive). Returns the contact if it exists. For broader searches by name, company, stage, or phone use search_leads.

Inputs: email (required). Returns: ok, error, contacts

get_automationGet automation detailA
Read-onlyIdempotent
Inspect

One automation's full definition — its trigger and steps — plus name, status, and timestamps. Get the id from list_automations. Read-only.

Inputs: automation_id (required). Returns: ok, error, automation

get_contactGet contact detailA
Read-onlyIdempotent
Inspect

Full contact record plus recent activity and upcoming events. Get the id from find_contact, list_contacts, or search_leads.

Inputs: contact_id (required). Returns: ok, error, contact, activities, +1 more

get_credit_balanceGet credit balanceA
Read-onlyIdempotent
Inspect

MightyAI credit balance for this workspace plus the last 10 ledger entries (grants, purchases, spend) — this is how you check what MCP calls and AI usage cost.

Inputs: no named parameters. Returns: ok, error, balance_usd, balance_micros, +4 more

get_pipeline_boardGet pipeline boardA
Read-onlyIdempotent
Inspect

The CRM pipeline as a board: every stage in board order with how many contacts sit in it, plus a count of contacts with no stage. A "deal" here is a contact in a pipeline stage — there are no deal amounts. List the contacts in one stage with search_leads (stage).

Inputs: no named parameters. Returns: ok, error, stages, truncated, +2 more

grok_generate_audioGenerate audio (ElevenLabs)AInspect

Turn a stored transcript (transcript_id), pasted text, or ready-made script turns into a generated podcast episode via ElevenLabs. Paid, metered generation that runs in the background: returns immediately with the job id — call grok_stitch with it for status and the final audio path.

Inputs: text, title, turns, with_natalie, +1 more. Returns: ok, error, job_id, run_id, +3 more

grok_generate_videoGenerate video (HyperFrames)AInspect

Render a video through the workspace video connector (default hyperframes — AI-authored motion graphics rendered in the platform sandbox). Pass audio_job_id (from grok_generate_audio) or audio_path to mux narration under the video. Paid, metered render that runs in the background: returns immediately with render_id — call grok_render_status for progress and the result path.

Inputs: brief (required), style, connector, audio_path, +2 more. Returns: ok, error, run_id, status, +2 more

grok_publish_youtubePublish video to YouTubeA
Destructive
Inspect

Upload a finished render to the workspace's connected YouTube channel (Data API v3). This is a REAL outbound publish — visibility defaults to private; use unlisted or public deliberately. Requires the channel to be connected in admin → Grok Boost first.

Inputs: title (required), tags, render_id, video_path, +2 more. Returns: ok, url, error, video_id

grok_render_statusVideo render statusA
Read-onlyIdempotent
Inspect

Check a video render's progress — status queued/rendering/done/failed, error detail, and a signed download URL once done. Ids come from grok_generate_video.

Inputs: render_id (required). Returns: ok, url, error, render

grok_run_pipelineRun the full pipelineA
Destructive
Inspect

Orchestrated Grok Boost run: transcript (transcript_id, text, or turns) → ElevenLabs audio → HyperFrames video → optional YouTube publish. Stages run in the background across separate invocations — returns immediately with a run_id; watch grok_runs / the admin feed for progress and the final video_url.

Inputs: brief (required), text, style, title, +4 more. Returns: ok, step, error, run_id, +1 more

grok_stitchStitch episode audioA
Destructive
Inspect

Report a podcast job's generation status and — once its stored dialogue chunks exist — re-stitch them with the show intro/outro bookends and return the final audio path. Poll this after grok_generate_audio; also re-runs the stitch to apply updated bookends without paying for generation again.

Inputs: job_id (required), intro_path, outro_path. Returns: ok, error, status, stitched, +3 more

grok_upload_transcriptUpload a transcriptAInspect

Store a transcript in the workspace for the Grok Boost audio pipeline. Returns a transcript_id to pass to grok_generate_audio.

Inputs: text (required), title. Returns: ok, error, transcript, transcript_id

import_fileImport a file from URLAInspect

Download a remote file (public https URL) into the workspace Media Assets library. Allowed types: image/, audio/, video/*, and application/pdf — text/html and other types are rejected; max 10 MB. Optionally attach a note to a contact recording that the file was imported for them.

Inputs: url (required), name, contact_id. Returns: ok, url, asset, error

list_appointmentsList appointmentsA
Read-onlyIdempotent
Inspect

Upcoming appointments on the workspace calendar. Optionally bound the window with from/to ISO timestamps.

Inputs: to, from. Returns: ok, error, appointments

list_automationsList automationsA
Read-onlyIdempotent
Inspect

Automations in the workspace (id, name, status). Use an automation id or name with enroll_automation.

Inputs: no named parameters. Returns: ok, error, automations

list_campaignsList email campaignsA
Read-onlyIdempotent
Inspect

Email campaigns in the workspace, newest first — name, subject, status, audience size, sent count, and schedule. Read-only: this never sends or schedules a campaign.

Inputs: limit, status. Returns: ok, error, campaigns

list_contactsList contactsA
Read-onlyIdempotent
Inspect

List CRM contacts, newest first. Filter to contacts created after a timestamp, and page with limit/offset. Use search_leads for name/stage/tag-style searches.

Inputs: limit, offset, created_after. Returns: ok, error, contacts

list_content_calendarList content calendarA
Read-onlyIdempotent
Inspect

Content Calendar items between two dates, time-sorted: planned items (with type and status), scheduled or published blog posts, published podcast episodes, and ready video clips. Read-only — nothing is created, scheduled, or posted.

Inputs: to (required), from (required). Returns: ok, error, items

list_dial_callsList Mighty Dial callsA
Read-onlyIdempotent
Inspect

The Mighty Dial call log, newest first — direction, from/to numbers, status, duration, voicemail flag, and the matched contact. Read-only: no recordings or transcripts, and it never places a call.

Inputs: limit, since, direction, contact_id. Returns: ok, calls, error

list_eventsList activity eventsA
Read-onlyIdempotent
Inspect

Workspace event feed, newest first — contact_created, tag_added, entered_stage, form_submitted, appointment_booked, call_completed, and more. Use type to filter to one event type and since to filter by timestamp.

Inputs: type, limit, since. Returns: ok, error, events

list_hooksList webhook subscriptionsA
Read-onlyIdempotent
Inspect

REST-hook subscriptions — the URLs MightyAutomation POSTs events to. Pair with create_hook / delete_hook to manage them.

Inputs: no named parameters. Returns: ok, error, subscriptions

list_media_assetsList media assetsA
Read-onlyIdempotent
Inspect

Files in the workspace Media Assets library, newest first — title, kind, MIME type, size, tags, and source. Metadata only (no download links). Use import_file to add a file.

Inputs: kind, limit. Returns: ok, error, assets

list_pipeline_stagesList pipeline stagesA
Read-onlyIdempotent
Inspect

Pipeline stage names in board order. Use the exact stage names from here when calling update_contact or search_leads.

Inputs: no named parameters. Returns: ok, error, stages

reschedule_appointmentReschedule an appointmentA
Destructive
Inspect

Move an appointment to a new start time (and optionally a new length). Ids come from list_appointments. CRM calendar only — no attendee email. Appointments synced to Google Calendar or booked through a scheduling link return manage_in_app: reschedule those in the Sales Calendar.

Inputs: scheduled_at (required), appointment_id (required), duration_minutes. Returns: ok, error, message, appointment

search_leadsSearch leads & contactsA
Read-onlyIdempotent
Inspect

Search the CRM by free text (matches first/last name, email, company), pipeline stage, lifecycle (lead|prospect|contact|customer|churned), or "has a phone number". Returns matching contacts and a total.

Inputs: q, limit, stage, offset, +2 more. Returns: ok, error, leads, total

send_emailSend an emailA
Destructive
Inspect

Send an email to a contact from the workspace sender identity and log it on the contact timeline. Fails safely if the contact is marked do-not-contact. Confirm the subject/body with the member before sending — this is a real outbound email.

Inputs: body (required), subject (required), contact_id (required), cc, +1 more. Returns: ok, sent, error, status

update_contactUpdate a contactA
DestructiveIdempotent
Inspect

Update fields on an existing contact — move it to a new pipeline stage, change lifecycle, set email/phone/name, or mark do_not_contact. Only the fields you pass are changed; tags replaces the tag set (use add_tag to merge instead).

Inputs: contact_id (required), tags, email, phone, +5 more. Returns: ok, error, contact

upsert_contactCreate or update a contactA
DestructiveIdempotent
Inspect

Create a CRM contact, or update it if one already exists for the email. This is how you "save a lead" — email is the only required field. Tags are merged (never replaced), notes are appended, and events are emitted so automations can fire.

Inputs: email (required), tags, notes, phone, +6 more. Returns: ok, error, events, created, +1 more

whoamiWho am IA
Read-onlyIdempotent
Inspect

Validate the connection and return the workspace (project) this key is bound to, plus the key label and scope.

Inputs: no named parameters. Returns: ok, error, scope, key_label, +2 more

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Remote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
      16
      9 npm
      1
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
      MIT
    Try in Browser

    Glama MCP Gateway

    Add one secure layer between your agents and this server.

    Resources