SMELT

Integrations

Studio ships with multiple built-in connectors grouped by category. Each OAuth connector authenticates via its provider’s dev console (with our SMELT Studio branding) and exposes a set of tools that agent blocks can call during execution.

Sign in with

  • Google - Gmail, Drive, Sheets, and Calendar through one OAuth grant.
  • Microsoft - Outlook and Teams through one Entra grant.
  • Slack - channel messaging, reactions, and history.
  • GitHub - issue automation: list, create, and comment.
  • Telegram - bot messaging via API token.

Direct connections

  • HTTP REST - call any URL with SSRF-protected validation; set custom headers, pass a JSON or key-value body, or send key-value pairs as query parameters for GET requests. No provider config required.
  • Custom MCP - point Studio at your own MCP server. Available on the Pro tier and above. See Custom MCP for setup, or Billing & Limits to upgrade.

More integrations are added continuously. The block palette surfaces available connectors so you can design workflows around them.

Custom A2A works alongside Custom MCP for agents that speak the A2A protocol instead of MCP’s tool-call model: point Studio at the agent and delegate it a natural-language task. See Custom A2A for setup, or Billing & Limits to upgrade.

The tables below list every action each connector can run today. An action that is not listed does not exist: picking one fails the run with a clear message rather than pretending to succeed.

Google Workspace

ConnectorActionsOAuth Scopes
GmailSend email, read inbox (with an optional Gmail search)gmail.modify, gmail.send
DriveList files (with an optional name search), read filedrive.file
CalendarList events, create event, update eventcalendar.events
SheetsRead rows, write rows, create spreadsheetspreadsheets

Two Google actions are not available yet: applying a Gmail label, and uploading a file to Drive. Both need a request shape the connector framework does not carry, so neither is offered in the block. A workflow saved against one before they were withdrawn fails the run with a message saying so, rather than reporting a success that never happened.

Microsoft 365

ConnectorActionsOAuth Scopes
OutlookSend email, read inbox (with an optional search)Mail.ReadWrite, Mail.Send
TeamsSend message to a channel, list channels in a teamChannelMessage.Send

Messaging

ConnectorActionsAuth
SlackSend message, read channel history, add reactionOAuth (Bot Token)
TelegramSend message, read updatesBot Token

Code and Data

ConnectorActionsAuth
GitHubList open issues, create issue, comment on an issueOAuth (GitHub App)

The GitHub block takes its repository as owner/name, for example gimzware/smelt. Pull request actions are not available yet.

Escape hatches

ConnectorDescription
HTTP/RESTCall any HTTP endpoint. Supports GET, POST, PUT, PATCH, DELETE with custom headers, a JSON body, or a key-value body. For GET, DELETE, and HEAD requests the key-value pairs are sent as query parameters. No provider config required. Private addresses are refused.
Custom MCPConnect any MCP-compatible tool server. Provide the server URL and Studio discovers available tools automatically.

Custom MCP setup

Custom MCP connections are a Pro tier feature - Free workspaces get a 402 with code TIER_LIMIT_CUSTOM_MCP when posting to /connections. Upgrade in Billing & Limits to enable.

To connect a custom MCP server:

  1. Add a Custom MCP block from the palette, using the + handle on the block it should follow
  2. Save a connection with the server URL and an optional auth header, or enter a public server URL directly
  3. Click Discover tools to list the tools the server offers
  4. Select the tool the block should call

See Custom MCP for the full walkthrough.

HTTP/REST escape hatch

For APIs without a dedicated connector, use the HTTP/REST block. Configure the method, URL, headers, and body directly.

There is no domain allowlist to fill in. Every URL is checked against a deny rule instead: the scheme must be http or https, and the host, along with every address it resolves to, must be public. Private, loopback, link-local and cloud metadata addresses are refused, so a hostname that resolves inward cannot be used to reach our internal network. A refused URL fails with SSRF_BLOCKED; see Troubleshooting.


Next: Auto Agent or Templates