---
title: "GoTo Webinar MCP server for AI agents - actionlake"
description: "Give Claude 53 GoTo Webinar actions through one MCP server: webinars, registrants, webhooks. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/goto-webinar
updated: 2026-10-23
---

Connectors · Marketing & media

# GoTo Webinar MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to GoTo Webinar and the rest of your systems. It gives your agent 53 GoTo Webinar actions (33 reads, 14 writes and 6 that wait for a confirmation) and holds the GoTo Webinar credential itself, so the agent never does. It paces GoTo Webinar's limits and records every call. Connecting GoTo Webinar needs your own GoTo Webinar OAuth app and one admin sign-in.

[Connect GoTo Webinar free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "goto_webinar.list_account_webinars",
  intent: "check which GoTo Webinar account is connected"
}
# Get all webinars for an account · read · 1 upstream call
```

- 53 actions in one signed file
- 33 read look, never change
- 14 write create and update
- 6 wait for a yes destructive, confirmed first

Set up

## Connect GoTo Webinar in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect GoTo Webinar.
   OAuth 2.0, authorization code. You register your own OAuth app with GoTo Webinar, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on. actionlake stores what you paste write-only, sealed under your tenant's key.
   Before the first sign-in, GoTo Webinar needs an OAuth app of your own, registered in its developer portal. actionlake has no GoTo Webinar app to lend you.
   - `access_token` Access token from one sign-in with your own OAuth app
   - `refresh_token` Refresh token from the same sign-in; the access token is renewed from it
   - `client_id` GoTo OAuth client ID (developer.goto.com > OAuth Clients)
   - `client_secret` GoTo OAuth client secret
   - `account_key` Your GoTo Webinar account key
   - `organizer_key` Your GoTo Webinar organizer key
   ```
   account { op: "connections.requirements", service: "goto_webinar" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "goto_webinar.list_account_webinars" }
   # get all webinars for an account · read · 1 upstream call
   check { action: "goto_webinar.create_webinar", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

GoTo Webinar at a glance

**Sign-in**

OAuth 2.0, authorization code. You register your own OAuth app with GoTo Webinar, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on.

**You provide**

`access_token` `refresh_token` `client_id` `client_secret`

**Setup fields**

`account_key` `organizer_key`

**Limits we pace to**

100 calls a minute, per connection

**API covered**

GoTo Webinar API 2`api.getgo.com/G2W/rest/v2`

**Built from**

GoTo Webinar's documentation, read 23 October 2026[developer.goto.com](https://developer.goto.com/GoToWebinarV2) [developer.goto.com](https://developer.goto.com/page-data/GoToWebinarV2/page-data.json)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

31 of 33 reads, for up to an hour; a write clears what it affects

**Shared entities**

2, so ask can line GoTo Webinar up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in GoTo Webinar.

53 actions in 1 area. Every one carries its effect, so a key can allow the reads and hold the rest.

- **33** read look, never change
- **14** write create and update
- **6** destructive wait for a confirmation

1. ### Webinar
   53
   33 read · 14 write · 6 destructive
   Get Webinars · Create webinar · Update webinar · Get webinar

Top actions

## The GoTo Webinar API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 5 of GoTo Webinar's 5 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `goto_webinar.list_webinars` Get Webinars | Get Webinars | read | `comm.online_meeting.list` 11 connectors |
| `goto_webinar.create_webinar` Create webinar | Create webinar | write | `comm.online_meeting.create` 10 connectors |
| `goto_webinar.cancel_webinar` Cancel webinar | Cancel webinar | destructive | `comm.online_meeting.delete` 9 connectors |
| `goto_webinar.list_registrants` Get registrants | Get registrants | read | this connector |
| `goto_webinar.copy_webinar` Copy a webinar | Copy a webinar | write | this connector |
| `goto_webinar.list_webhooks` Get webhooks | Get webhooks | read | this connector |
| `goto_webinar.list_panelists` Get webinar panelists | Get webinar panelists | read | this connector |
| `goto_webinar.create_webhooks` Creates new webhooks | Creates new webhooks | write | this connector |
| `goto_webinar.create_panelists` Create Panelists | Create Panelists | write | this connector |
| `goto_webinar.create_registrant` Create registrant | Create registrant | write | this connector |
| `goto_webinar.list_coorganizers` Get co-organizers | Get co-organizers | read | this connector |
| `goto_webinar.create_coorganizers` Create co-organizers | Create co-organizers | write | this connector |

Try it

## Prompts to paste into Claude.

Each one names the GoTo Webinar actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Find the GoTo Webinar contacts with no email address, so we can clean them up.
   calls `goto_webinar.list_registrants`
2. Write write
   Create webinar in GoTo Webinar. Show me exactly what you will send before you save it.
   calls `goto_webinar.create_webinar`

Governance for GoTo Webinar

## Destructive actions wait for a yes.

6 GoTo Webinar actions are destructive. These are all of them:

- Cancel webinar `goto_webinar.cancel_webinar`
- Delete webinar panelist `goto_webinar.delete_panelist`
- Deletes webhooks `goto_webinar.delete_webhooks`
- Delete registrant `goto_webinar.delete_registrant`
- Delete co-organizer `goto_webinar.delete_coorganizer`
- Deletes user subscriptions `goto_webinar.delete_user_subscriptions`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do goto_webinar.cancel_webinar confirm_policy: **human**

Cancel webinar?

**intent:** the user asked me to cancel webinar

run suspended · waiting for a named person · key _goto-webinar-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "goto-webinar-agent",
  allowed_actions: ["goto_webinar.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "goto_webinar.cancel_webinar", approver: "lead@example.com" },
    { match: "goto_webinar.delete_panelist", approver: "lead@example.com" },
    { match: "goto_webinar.delete_webhooks", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to GoTo Webinar only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What GoTo Webinar costs on actionlake.

Every GoTo Webinar action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call GoTo Webinar refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 53 GoTo Webinar actions
- 53 actions page each page of a long list is one call
- 31 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every GoTo Webinar action.

53 actions by area: the id your agent calls, what it does, and its effect.

**Webinar 53**

- `goto_webinar.cancel_webinar` Cancel webinar destructive
- `goto_webinar.copy_webinar` Copy a webinar write
- `goto_webinar.create_coorganizers` Create co-organizers write
- `goto_webinar.create_panelists` Create Panelists write
- `goto_webinar.create_registrant` Create registrant write
- `goto_webinar.create_user_subscriptions` Creates new user subscriptions write
- `goto_webinar.create_webhook_secret_key` Creates a new secret key write
- `goto_webinar.create_webhooks` Creates new webhooks write
- `goto_webinar.create_webinar` Create webinar write
- `goto_webinar.delete_coorganizer` Delete co-organizer destructive
- `goto_webinar.delete_panelist` Delete webinar panelist destructive
- `goto_webinar.delete_registrant` Delete registrant destructive
- `goto_webinar.delete_user_subscriptions` Deletes user subscriptions destructive
- `goto_webinar.delete_webhooks` Deletes webhooks destructive
- `goto_webinar.get_audio_information` Get audio information read
- `goto_webinar.get_registrant` Get registrant read
- `goto_webinar.get_registration_fields` Get registration fields read
- `goto_webinar.get_session_attendee` Get attendee read
- `goto_webinar.get_session_performance` Get session performance read
- `goto_webinar.get_start_url` Webinar start url read
- `goto_webinar.get_user_subscription` Get user subscription read
- `goto_webinar.get_webhook` Get webhook read
- `goto_webinar.get_webinar` Get webinar read
- `goto_webinar.get_webinar_performance` Get performance for all webinar sessions read
- `goto_webinar.get_webinar_session` Get webinar session read
- `goto_webinar.list_account_webinars` Get all webinars for an account read
- `goto_webinar.list_attendee_poll_answers` Get attendee poll answers read
- `goto_webinar.list_attendee_questions` Get attendee questions read
- `goto_webinar.list_attendee_survey_answers` Get attendee survey answers read
- `goto_webinar.list_coorganizers` Get co-organizers read
- `goto_webinar.list_in_session_webinars` Get All Insession Webinars read
- `goto_webinar.list_organizer_sessions` Get organizer sessions read
- `goto_webinar.list_panelists` Get webinar panelists read
- `goto_webinar.list_registrants` Get registrants read
- `goto_webinar.list_session_attendees` Get session attendees read
- `goto_webinar.list_session_polls` Get session polls read
- `goto_webinar.list_session_questions` Get session questions read
- `goto_webinar.list_session_surveys` Get session surveys read
- `goto_webinar.list_user_subscriptions` Get user subscriptions read
- `goto_webinar.list_webhooks` Get webhooks read
- `goto_webinar.list_webinar_attendees` Get attendees for all webinar sessions read
- `goto_webinar.list_webinar_meeting_times` Get webinar meeting times read
- `goto_webinar.list_webinar_recording_assets` Get all the recording assets associated with the webinarKey read
- `goto_webinar.list_webinar_sessions` Get webinar sessions read
- `goto_webinar.list_webinars` Get Webinars read
- `goto_webinar.resend_coorganizer_invitation` Resend invitation write
- `goto_webinar.resend_panelist_invitation` Resend panelist invitation write
- `goto_webinar.search_account_recording_assets` Search for completed recording assets of an admin user read
- `goto_webinar.search_recording_assets` Search for completed recording assets read
- `goto_webinar.update_audio_information` Update audio information write
- `goto_webinar.update_user_subscriptions` Updates user subscriptions write
- `goto_webinar.update_webhooks` Updates webhooks write
- `goto_webinar.update_webinar` Update webinar write

Questions

## The GoTo Webinar MCP server, answered.

**Is there a GoTo Webinar MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 53 GoTo Webinar actions, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by GoTo Webinar.

**What do I need to connect GoTo Webinar?**

Your own GoTo Webinar OAuth app, registered with GoTo Webinar (its client id and client secret), and the access and refresh tokens from one admin sign-in. actionlake has no GoTo Webinar app of its own, so this is not a one-step consent. actionlake renews the access token as it expires. Plus your account key and your organizer key. The free call account { op: "connections.requirements", service: "goto_webinar" } lists exactly what to paste.

**Can an AI agent delete or change things in GoTo Webinar?**

Only if its key allows it, and only with an explicit confirmation. 6 GoTo Webinar actions are destructive, including cancel webinar, delete webinar panelist and deletes webhooks. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my GoTo Webinar API limit?**

actionlake paces every call to the limits in the GoTo Webinar service file: 100 calls a minute per connection. Repeated reads are answered from cache (31 GoTo Webinar actions can be), which never reaches GoTo Webinar.

**What does a GoTo Webinar action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (53 GoTo Webinar actions page). Cache hits, searches, dry runs and calls GoTo Webinar refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which GoTo Webinar API does it cover?**

The GoTo Webinar API 2 at api.getgo.com/G2W/rest/v2. It is built from GoTo Webinar's documentation as read on 23 October 2026. 53 actions in 1 area, each one in the signed service file (version 1.0.0).

**Does actionlake keep my GoTo Webinar data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to an hour, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your GoTo Webinar credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like GoTo Webinar

Shares the most action names with

- [Zoom 5](https://actionlake.com/connectors/zoom)
- [Google Meet 4](https://actionlake.com/connectors/google-meet)
- [YouTube 4](https://actionlake.com/connectors/youtube)
- [Otter.ai 1](https://actionlake.com/connectors/otter-ai)

Joins with, on shared entities

- [TeamViewer 2](https://actionlake.com/connectors/teamviewer)
- [ConnectWise PSA 1](https://actionlake.com/connectors/connectwise-psa)
- [HaloPSA 1](https://actionlake.com/connectors/halopsa)
- [NetSuite 1](https://actionlake.com/connectors/netsuite)
- [HubSpot CRM 1](https://actionlake.com/connectors/hubspot-crm)
- [Microsoft 365 Users 1](https://actionlake.com/connectors/microsoft-365-users)

Browse

- [All Marketing & media connectors](https://actionlake.com/connectors/category/marketing-and-media)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by GoTo Webinar; the name is the vendor's own. Counts are from the GoTo Webinar service file, version 1.0.0.

## Give your agent GoTo Webinar today.

[Connect GoTo Webinar free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/goto-webinar
More: https://actionlake.com/llms.txt
