Loops
Send and track product email in Loops — contacts, lists, campaigns, and transactional sends. Sign in with Loops to connect.
What Loops exposes.
Every tool below is one this server advertised the last time Omniio refreshed it, under the loops__ namespace. Your agent never loads them all — it searches, and gets the few that match.
loops__describe2 arguments · 2 required
Describe a Loops API endpoint
Return the full schema for one Loops API endpoint: parameters, request body, and responses (refs inlined). Look the endpoint up with search() first, then pass its path and method here to get what execute() needs.
Required
pathmethodloops__execute7 arguments · 2 required
Read from Loops API
Make an authenticated GET call to the Loops API as the connected user. This tool only reads; it cannot change data or send email. Flow: search() to find an endpoint, describe(path, method) for its schemas, then execute(). Calls run against one team: pass team (an id from the teams tool); if omitted it uses your only team, or returns your teams to choose from. Only endpoints documented in the OpenAPI spec can be called; anything else is rejected. Use execute_write to change data.
Required
pathmethodloops__execute_write7 arguments · 2 required
Change Loops data
Make an authenticated POST, PUT, PATCH, or DELETE call to the Loops API as the connected user. These calls create, update, delete, publish, or send: they take effect immediately, cannot be undone here, and can email real recipients. Only make one the user has asked for. Flow: search() to find an endpoint, describe(path, method) for its schemas, then execute_write(). Calls run against one team: pass team (an id from the teams tool); if omitted it uses your only team, or returns your teams to choose from. Only endpoints documented in the OpenAPI spec can be called; anything else is rejected. Use execute for GET.
Required
pathmethodloops__search1 argument · 1 required
Search Loops API endpoints
Search the Loops API OpenAPI spec for endpoints. Returns a slim listing: method, path, operationId, summary, description, tags. Call describe(path, method) to get the full parameter/request/response schemas for one endpoint before calling execute(). Spec source: https://app.loops.so/openapi.json
Required
queryloops__teamsno arguments
List Loops teams
List the teams the connected user can run Loops API calls against. Returns id and name for each; pass an id as execute()'s team parameter.
Three steps, and the last one is not yours.
Point a client at Omniio
One URL, authorized once by your client. If you already use Omniio, this step is done.
Switch Loops on
Authorize it from your library; the grant is yours and stays yours.
Ask for what you need
The agent searches, reads the one schema it picked, and runs it. You do not name the tool.
claude mcp add --transport http omniio https://mcp.omniio.devOthers in the same category.
They share the endpoint, so having more than one on costs you nothing in context — the search decides which is relevant.