GTM Otto by gtmotto.com

MCP server · Social media posting APIs · indexed, not reviewed

Hostedvendor's own

Not reviewed

No score, grade or rank. This listing is facts from the official MCP registry and our own checks, and it stays out of the rankings until the panel reviews it.

How the index works

Self-driving LinkedIn prospecting: it sources, warms and invites daily. You approve every message.

What the official MCP registry says

Facts

MCP registry
com.gtmotto/linkedin · 1.2.1
Endpoint
https://agent.gtmotto.com/mcp
GitHub stars
1
Registry entry
updated 22 Sep 2026

From the official MCP registry, the package registries and our own checks. JSON · Markdown

Why it's listed

  • It's published in the registry under gtmotto.com, a namespace the registry only gives to whoever proves they control that domain.

Being indexed says nothing about quality, and nobody can pay for it. Is this yours? Ask for a review.

Tools it lists 21 · about 8,552 tokens of context · checked 13 minutes ago

ToolWhat it doesHint
gtm_whoamiWho am I, and what nextWho this key belongs to, and what the workspace may do: org name, plan, subscription status, how many products and plays exist, and the LEAD METER (leads added this calendar month, the plan's cap, and what is left).…read-only
gtm_list_playsList playsEvery play in the workspace with enough context to route on: which product it sells, whether it is active or paused, whether a LinkedIn seat is actually connected (`seatConnected: false` means the play cannot act,…read-only
gtm_show_playShow a playONE play in full — everything needed to judge it or copy it into a better one: goal and voice, the account's daily cap and working hours (shared by every play on the seat), the ICP facets, the five sourcing lanes with…read-only
gtm_play_statsPlay statsThe play's Stats screen: the pipeline (leads sourced → warmed → invited → new connections → conversations started) over four windows — all time, last 30 days, last 7 days, last 24 hours — each windowed count paired with…read-only
gtm_linkedin_statusLinkedIn seat statusThe play's LinkedIn seat and today's headroom against the LinkedIn limits. States: `no_seat` (nothing connected — the play cannot act), `seat_broken` (the account was disconnected or deleted; the queue is parked until a…read-only
gtm_estimate_icpEstimate ICP sizeHow big an audience a CANDIDATE ICP would reach — '≈ N companies match' — before committing to it. Writes nothing: no play, no ICP row, no cache. Use it to iterate (propose facets → see 40 → widen the locations → see…read-only
gtm_create_playCreate a play (draft)Create a fully-configured play in one call: the product (an existing productId, or a websiteUrl which seeds one and kicks its research), the play itself, the ICP facets, which sourcing lanes are on, the autonomy ladder…writes
gtm_sources_referenceSourcing lanes referenceTHE REFERENCE for configuring sourcing lanes — read it before your first gtm_configure_source / gtm_set_source / gtm_run_source call. Every lane (people_search, competitor_posts a.k.a. Post discovery, job_offers,…read-only
gtm_show_sourcesShow sourcing lanesAll five sourcing lanes of a play, configured or not — the read to make before touching any of them. Per lane: `configured`, `on`, the parsed `config` (defaults filled), the cockpit's `summary` (null = needs setup),…read-only
gtm_source_runsLane run historyThe run history of ONE lane, newest first — the funnel over time (scanned → dropped by fit → dropped by intent → added / duplicates / capped), the ICP facets LinkedIn could not filter on, and the provider's status and…read-only
gtm_configure_sourceConfigure a sourcing laneWrite a lane's settings — upload an account list, set the Post-discovery intent and anchors, change the job keywords, move a gate. MERGE semantics: only the fields you send change. Lists (companies, postUrls,…writes
gtm_set_sourceSwitch a lane on or offSwitch a lane on or off — the toggle on the Sources list. Switching ON a lane that has nothing to run on (no companies, no intent/anchors/posts, no role) is refused: configure it first. An empty ICP is not a refusal —…writes
gtm_preview_sourcePreview a lane (dry run)Dry-run ONE lane: '≈ N people match' and a 10-person sample, WITHOUT inserting a lead, spending the day's budget or moving the run clock. Same query, same gates, same scorers as a real run, on up to 50 people — so what…read-only
gtm_run_sourceRun a lane now'Run once now' — run ONE lane immediately through the same code the sourcing tick runs, with force: an OFF lane still runs (that is what run-once means while configuring), a DRAFT play still runs (how you try a lane…writes
gtm_forget_harvested_postsForget harvested postsThe tuning escape hatch for the post lanes. A post lane remembers every post it already paid to harvest so it never buys the same engagers twice — which makes it impossible to TUNE: change the intent or a gate, run, and…writes
gtm_update_icpUpdate the ICPChange the ICP a play runs — the query behind people_search and the fit gate on every other lane. Seven string arrays, plain words (gtmotto normalises 'Swiss' → Switzerland, 'Fintech' → Financial Services itself):…writes
gtm_update_playUpdate, pause or launch a playChange a play's own knobs — name, goal, voice — its two switches, and the ACCOUNT's pacing (daily action cap, working hours: shared by every play on the LinkedIn account, not per play). `paused: true` is the human's…writes
gtm_connect_linkedinConnect LinkedInThe link a human opens to connect (or reconnect) their LinkedIn account to a play — the one cockpit step the play cannot run without. Hand the URL to the human, tell them to say when it is done, then call…writes
gtm_list_approvalsList drafted messages waiting for youEvery drafted action that waits for the human — an invite note, a first message, a follow-up, a reply or a comment the planner wrote — with the draft, the 'why now', the lead, and a cockpit link. One play, or the whole…read-only
gtm_approveApprove a drafted messageApprove ONE drafted action by its approvalId (from gtm_list_approvals). It then leaves on the seat's next slot, inside LinkedIn's limits — this is the human's tap, moved from the cockpit to the chat, so ONLY call it…writes
gtm_rejectReject a drafted messageReject (skip) ONE drafted action by its approvalId. Nothing is sent; the planner records the decline and re-plans around it instead of proposing the same step again. Ask the human first, as for gtm_approve.writes

What https://agent.gtmotto.com/mcp answered to tools/list, asked without credentials over MCP 2025-11-25. The token figure is the size of the list as sent, divided by four; a model sees about that much before it calls anything. Full definitions, input schemas included, are in the listing's JSON under mcpTools.

How its tools read to an agent 0 errors · 4 warnings · 1 note

  • warnTC11gtm_set_source1 parameter without a description: on
  • warnTC11gtm_update_icp7 parameters without a description: exclude, industries, languages, locations, seniority, sizes and 1 more
  • warnTC11gtm_update_play1 parameter without a description: name
  • warnTC22gtm_create_playthe definition is about 1,716 tokens
  • noteTC24server21 of 21 tools have no outputSchema

The checks from /check and anchor check, run each day on the list above: about 8,552 tokens of definitions. Not part of the score yet. Check your own server.

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.