The lua integrations command enables you to connect your agent to third-party services like Linear, Discord, Google Calendar, HubSpot, and 250+ other integrations via Unified.to. When you connect an integration:
An MCP server is automatically created to expose tools to your agent
Triggers can be set up to wake up your agent when events occur in the connected service
Copy
lua integrations # Interactive modelua integrations connect # Connect a new integrationlua integrations list # List connected integrationslua integrations available # View available integrationslua integrations info <type> # View integration details (scopes, triggers)lua integrations disconnect # Disconnect an integrationlua integrations update # Update connection scopeslua integrations webhooks # Manage triggers (webhook subscriptions)lua integrations mcp # Manage MCP servers for connections
Limit: Only 1 connection per integration type is allowed per agent. To change scopes, use lua integrations update.
Connect a new third-party integration with optional triggers.
Copy
# Interactive mode (recommended for first-time setup)lua integrations connect# Non-interactive: connect Linear with OAuth and all scopeslua integrations connect --integration linear --auth-method oauth --scopes all# Connect with triggers enabled (agent wakes up on events)lua integrations connect --integration linear --auth-method oauth --scopes all \ --triggers task_task.created,task_task.updated# Connect with all available triggerslua integrations connect --integration linear --auth-method oauth --scopes all --triggers all# Use a custom webhook URL instead of agent triggerlua integrations connect --integration linear --auth-method oauth --scopes all \ --triggers task_task.created --custom-webhook --hook-url https://my-server.com/webhook# Specify specific scopeslua integrations connect --integration linear --auth-method oauth --scopes "task_task_read,task_task_write"# Use API token authenticationlua integrations connect --integration linear --auth-method token# Control sensitive data visibilitylua integrations connect --integration discord --auth-method oauth --scopes all --hide-sensitive false
What happens:
CLI fetches available integrations
You select or specify an integration and auth method
Browser opens for OAuth authorization (or you enter API credentials)
Connection is established and stored
MCP server is automatically created and activated
If triggers are specified, webhook subscriptions are created to wake up your agent on events
Triggers: When using --triggers, events in the connected service (e.g., “a task was created in Linear”) will automatically wake up your agent with the event data in runtimeContext. This enables event-driven workflows without polling.
View detailed information about an integration type, including available OAuth scopes and triggers. This is useful for discovering what’s available before connecting.
Copy
# View integration detailslua integrations info linear# Output as JSON (for scripting/AI agents)lua integrations info linear --json
Output:
Copy
============================================================📋 Integration Info: Linear============================================================🔑 OAuth Scopes: ✓ task_task_read Manage and view issues in Linear ✓ task_task_write Create and update issues in Linear ✓ task_project_read View projects in Linear ...⚡ Available Triggers: • task_task.created [virtual, 60min interval] A new issue was created in Linear • task_task.updated [virtual, 60min interval] An issue was updated in Linear • task_task.deleted [virtual, 60min interval] An issue was deleted in Linear • task_comment.created [virtual, 60min interval] A new comment was added to an issue ...============================================================
Friendly Labels: Scopes and triggers display user-friendly descriptions (e.g., “A new issue was created in Linear” instead of “task_task.created”) to help non-technical users understand what each option does.
Update an existing connection’s OAuth scopes. This re-authorizes the connection with new permissions.
Copy
# Interactive modelua integrations update# Non-interactive: update Linear with all scopeslua integrations update --integration linear --scopes all# Specific scopeslua integrations update --integration linear --scopes "task_task_read,task_task_write,task_project_read"
Update deletes the old connection and creates a new one with updated scopes. You’ll need to re-authorize in the browser.
Manage triggers (webhook subscriptions) for connected integrations. Triggers let your agent receive events when things happen in connected services (e.g., task created, message received).
list
events
create
delete
List all triggers:
Copy
lua integrations webhooks list# Output as JSON for scriptinglua integrations webhooks list --json
Webhook IDs are displayed for each trigger, making it easy to delete specific triggers using --webhook-id.
List available trigger events for an integration:
Copy
# By integration type (before connecting)lua integrations webhooks events --integration linear# By connection ID (after connecting)lua integrations webhooks events --connection abc123# As JSON for scriptinglua integrations webhooks events --integration linear --json
Output:
Copy
⚡ Available Trigger Events for linear──────────────────────────────────────────────────────────────────────────────── • task_task.created [virtual] A new issue was created in Linear • task_task.updated [virtual] An issue was updated in Linear • task_task.deleted [virtual] An issue was deleted in Linear • task_comment.created [virtual] A new comment was added to an issue────────────────────────────────────────────────────────────────────────────────
Manage MCP servers for connections. MCP servers are automatically created when you connect an integration, but you can activate/deactivate them manually.
list
activate
deactivate
List connections with MCP server status:
Copy
lua integrations mcp list
Output:
Copy
────────────────────────────────────────────────────────────────────────────────🔌 MCP Servers for Connections──────────────────────────────────────────────────────────────────────────────── Connection: 6978e0294d9c2007ed5cb129 Integration: Linear MCP Server: linear Status: ✅ active────────────────────────────────────────────────────────────────────────────────
Use these to discover available options before connecting:
Copy
# List available integrationslua integrations available# Get integration details (scopes and triggers)lua integrations info linearlua integrations info linear --json# List available trigger eventslua integrations webhooks events --integration linearlua integrations webhooks events --integration linear --json
# Discover available integrations and their detailslua integrations availablelua integrations info linear --json# Connect with triggers in one commandlua integrations connect --integration linear --auth-method oauth --scopes all \ --triggers task_task.created,task_task.updated# Connect with all available triggerslua integrations connect --integration linear --auth-method oauth --scopes all --triggers all# Create additional trigger after connectionlua integrations webhooks create \ --connection 6978e0294d9c2007ed5cb129 \ --object task_task \ --event deleted# Create trigger with custom webhook URLlua integrations webhooks create \ --connection 6978e0294d9c2007ed5cb129 \ --object task_task \ --event created \ --hook-url https://my-server.com/webhook# Disconnectlua integrations disconnect --connection-id 6978e0294d9c2007ed5cb129
Triggers are a powerful way to make your agent reactive to external events. Instead of polling or manually checking for updates, your agent automatically wakes up when something happens.
# Connect Linear with trigger for new issueslua integrations connect --integration linear --auth-method oauth --scopes all \ --triggers task_task.created
When a new issue is created in Linear, your agent receives the event data and can:
Send a notification to Slack
Update a dashboard
Assign the issue to a team member
Any other action your agent is configured to perform
Triggers are the easiest way to make your agent reactive. Enable them during connection:
Copy
# Enable triggers during connectionlua integrations connect --integration linear --auth-method oauth --scopes all \ --triggers task_task.created,task_task.updated# Or add triggers laterlua integrations webhooks create --connection abc123 --object task_task --event created
Your agent automatically wakes up when events occur - no polling required!
Discover Before Connecting
Use discovery commands to understand what’s available:
Copy
# See all integrationslua integrations available# Get detailed info about an integrationlua integrations info linear# See available trigger eventslua integrations webhooks events --integration linear
This is especially useful for AI coding assistants building agents programmatically.
Hide Sensitive Data
By default, --hide-sensitive true is enabled, which hides sensitive fields from MCP tool responses. Disable only if your agent needs access to sensitive data: