Loops MCP Integration for LangGraph
Connect Loops to LangGraph through the local KosmoKrator MCP gateway with scoped tools, credentials, and write policy.
Connect Loops to LangGraph
Run KosmoKrator integration calls from LangGraph nodes while preserving local credentials and permissions.
Use a graph node that calls the KosmoKrator CLI for deterministic steps or an MCP client for dynamic tool selection. The gateway is local, scoped to this integration, and starts with
--write=deny so LangGraph can inspect read-capable tools without receiving write access by default.
Loops MCP Config for LangGraph
Headless CLI calls fit repeatable graph edges; MCP fits exploratory agent nodes.
{
"mcpServers": {
"kosmokrator-loops": {
"type": "stdio",
"command": "kosmo",
"args": [
"mcp:serve",
"--integration=loops",
"--write=deny"
]
}
}
} Run the Gateway Manually
kosmokrator mcp:serve --integration=loops --write=deny Why Use KosmoKrator Here
Expose only Loops instead of a broad multi-service tool list.
Reuse credentials already configured for the KosmoKrator CLI and Lua runtime.
Start read-only, then opt into ask or allow for trusted workspaces.
Loops Tools Visible to LangGraph
LangGraph sees stable MCP tool names generated from the Loops integration catalog.
| MCP tool | Source function | Type | Description |
|---|---|---|---|
integration__loops__loops_list_contacts | loops.loops_list_contacts | Read | List contacts from Loops with pagination. Returns contact records including email, name, and custom properties. |
integration__loops__loops_get_contact | loops.loops_get_contact | Read | Get a single contact from Loops by their unique contact ID. Returns full contact details including email, name, and custom properties. |
integration__loops__loops_create_contact | loops.loops_create_contact | Write | Create a new contact in Loops. Requires an email address. Optionally include first and last name. |
integration__loops__loops_update_contact | loops.loops_update_contact | Write | Update an existing contact in Loops. Provide the contact ID and the fields to update (e.g., email, first_name, last_name, or custom properties). |
integration__loops__loops_send_event | loops.loops_send_event | Write | Send a custom event to Loops for a contact identified by email. Events can trigger automations and loops in your Loops account. |
integration__loops__loops_get_current_user | loops.loops_get_current_user | Read | Get the currently authenticated Loops user. Use this to verify the API connection and see account details. |