Segment Automation
Automate Segment tasks via Rube MCP (Composio): track events, identify users, manage groups, page views, aliases, batch operations. Always search tools first for current schemas.
mkdir -p ./skills/segment-automation && curl -sfL https://raw.githubusercontent.com/mayurrathi/awesome-agent-skills/main/skills/segment-automation/SKILL.md -o ./skills/segment-automation/SKILL.md Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).
Skill Content
# Segment Automation via Rube MCP
Automate Segment customer data platform operations through Composio's Segment toolkit via Rube MCP.
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Segment connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `segment`
- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas
Setup
**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds
2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `segment`
3. If connection is not ACTIVE, follow the returned auth link to complete Segment authentication
4. Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Track Events
**When to use**: User wants to send event data to Segment for downstream destinations
**Tool sequence**:
1. `SEGMENT_TRACK` - Send a single track event [Required]
**Key parameters**:
- `userId`: User identifier (required if no `anonymousId`)
- `anonymousId`: Anonymous identifier (required if no `userId`)
- `event`: Event name (e.g., 'Order Completed', 'Button Clicked')
- `properties`: Object with event-specific properties
- `timestamp`: ISO 8601 timestamp (optional; defaults to server time)
- `context`: Object with contextual metadata (IP, user agent, etc.)
**Pitfalls**:
- At least one of `userId` or `anonymousId` is required
- `event` name is required and should follow consistent naming conventions
- Properties are freeform objects; ensure consistent schema across events
- Timestamp must be ISO 8601 format (e.g., '2024-01-15T10:30:00Z')
- Events are processed asynchronously; successful API response means accepted, not delivered
2. Identify Users
**When to use**: User wants to associate traits with a user profile in Segment
**Tool sequence**:
1. `SEGMENT_IDENTIFY` - Set user traits and identity [Required]
**Key parameters**:
- `userId`: User identifier (required if no `anonymousId`)
- `anonymousId`: Anonymous identifier
- `traits`: Object with user properties (email, name, plan, etc.)
- `timestamp`: ISO 8601 timestamp
- `context`: Contextual metadata
**Pitfalls**:
- At least one of `userId` or `anonymousId` is required
- Traits are merged with existing traits, not replaced
- To remove a trait, set it to `null`
- Identify calls should be made before track calls for new users
- Avoid sending PII in traits unless destinations are configured for it
3. Batch Operations
**When to use**: User wants to send multiple events, identifies, or other calls in a single request
**Tool sequence**:
1. `SEGMENT_BATCH` - Send multiple Segment calls in one request [Required]
**Key parameters**:
- `batch`: Array of message objects, each with:
- `type`: Message type ('track', 'identify', 'group', 'page', 'alias')
- `userId` / `anonymousId`: User identifier
- Additional fields based on type (event, properties, traits, etc.)
**Pitfalls**:
- Each message in the batch must have a valid `type` field
- Maximum batch size limit applies; check schema for current limit
- All messages in a batch are processed independently; one failure does not affect others
- Each message must independently satisfy its type's requirements (e.g., track needs event name)
- Batch is the most efficient way to send multiple calls; prefer over individual calls
4. Group Users
**When to use**: User wants to associate a user with a company, team, or organization
**Tool sequence**:
1. `SEGMENT_GROUP` - Associate user with a group [Required]
**Key parameters**:
- `userId`: User identifier (required if no `anonymousId`)
- `anonymousId`: Anonymous identifier
- `groupId`: Group/organization identifier (required)
- `traits`: Object with group properties (name, industry, size, plan)
- `timestamp`: ISO 8601 timestamp
**Pitfalls**:
- `groupId` is required; it identifies the company or organization
- Group tra
🎯 Best For
- Claude users
- Knowledge workers
- Remote teams
- Professionals
💡 Use Cases
- Using Segment Automation in daily workflow
- Automating repetitive productivity tasks
📖 How to Use This Skill
- 1
Install the Skill
Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.
- 2
Load into Your AI Assistant
Open Claude and reference the skill. Paste the SKILL.md content or use the system prompt tab.
- 3
Apply Segment Automation to Your Work
Provide context for your task — paste source material, describe your audience, or share existing work to guide the AI.
- 4
Review and Refine
Edit the AI output for accuracy, tone, and completeness. Add human insight where the AI lacks context.
❓ Frequently Asked Questions
How do I install Segment Automation?
Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/segment-automation/SKILL.md, ready to use.
Can I customize this skill for my team?
Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.
⚠️ Common Mistakes to Avoid
Not reading the full skill
Skills contain important context and edge cases beyond the quick start.