bundled-skills/segment-automation/SKILL.md
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.
npx skillsauth add FrancoStino/opencode-skills-antigravity segment-automationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Automate Segment customer data platform operations through Composio's Segment toolkit via Rube MCP.
RUBE_MANAGE_CONNECTIONS with toolkit segmentRUBE_SEARCH_TOOLS first to get current tool schemasGet 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.
RUBE_SEARCH_TOOLS respondsRUBE_MANAGE_CONNECTIONS with toolkit segmentWhen to use: User wants to send event data to Segment for downstream destinations
Tool sequence:
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 propertiestimestamp: ISO 8601 timestamp (optional; defaults to server time)context: Object with contextual metadata (IP, user agent, etc.)Pitfalls:
userId or anonymousId is requiredevent name is required and should follow consistent naming conventionsWhen to use: User wants to associate traits with a user profile in Segment
Tool sequence:
SEGMENT_IDENTIFY - Set user traits and identity [Required]Key parameters:
userId: User identifier (required if no anonymousId)anonymousId: Anonymous identifiertraits: Object with user properties (email, name, plan, etc.)timestamp: ISO 8601 timestampcontext: Contextual metadataPitfalls:
userId or anonymousId is requirednullWhen to use: User wants to send multiple events, identifies, or other calls in a single request
Tool sequence:
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 identifierPitfalls:
type fieldWhen to use: User wants to associate a user with a company, team, or organization
Tool sequence:
SEGMENT_GROUP - Associate user with a group [Required]Key parameters:
userId: User identifier (required if no anonymousId)anonymousId: Anonymous identifiergroupId: Group/organization identifier (required)traits: Object with group properties (name, industry, size, plan)timestamp: ISO 8601 timestampPitfalls:
groupId is required; it identifies the company or organizationWhen to use: User wants to record page view events in Segment
Tool sequence:
SEGMENT_PAGE - Send a page view event [Required]Key parameters:
userId: User identifier (required if no anonymousId)anonymousId: Anonymous identifiername: Page name (e.g., 'Home', 'Pricing', 'Dashboard')category: Page category (e.g., 'Docs', 'Marketing')properties: Object with page-specific properties (url, title, referrer)Pitfalls:
userId or anonymousId is requiredname and category are optional but recommended for proper analyticsurl, title, referrer, path, searchWhen to use: User wants to merge anonymous and identified users, or manage source configuration
Tool sequence:
SEGMENT_ALIAS - Link two user identities together [Optional]SEGMENT_LIST_SCHEMA_SETTINGS_IN_SOURCE - View source schema settings [Optional]SEGMENT_UPDATE_SOURCE - Update source configuration [Optional]Key parameters:
userId: New user identifier (the identified ID)previousId: Old user identifier (the anonymous ID)sourceId: Source identifierPitfalls:
previousId is the anonymous/old ID, userId is the new/identified IDStandard Segment user lifecycle:
1. Anonymous user visits -> PAGE call with anonymousId
2. User interacts -> TRACK call with anonymousId
3. User signs up -> ALIAS (anonymousId -> userId), then IDENTIFY with traits
4. User takes action -> TRACK call with userId
5. User joins org -> GROUP call linking userId to groupId
For bulk data ingestion:
1. Collect events in memory (array of message objects)
2. Each message includes type, userId/anonymousId, and type-specific fields
3. Call SEGMENT_BATCH with the collected messages
4. Check response for any individual message errors
Segment recommends consistent event naming:
Identity Resolution:
userId or anonymousId on every callData Quality:
Rate Limits:
Response Parsing:
data keyTimestamps:
| Task | Tool Slug | Key Params | |------|-----------|------------| | Track event | SEGMENT_TRACK | userId, event, properties | | Identify user | SEGMENT_IDENTIFY | userId, traits | | Batch calls | SEGMENT_BATCH | batch (array of messages) | | Group user | SEGMENT_GROUP | userId, groupId, traits | | Page view | SEGMENT_PAGE | userId, name, properties | | Alias identity | SEGMENT_ALIAS | userId, previousId | | Source schema | SEGMENT_LIST_SCHEMA_SETTINGS_IN_SOURCE | sourceId | | Update source | SEGMENT_UPDATE_SOURCE | sourceId | | Warehouses | SEGMENT_LIST_CONNECTED_WAREHOUSES_FROM_SOURCE | sourceId |
This skill is applicable to execute the workflow or actions described in the overview.
research
Skill for academic research workflows: search Semantic Scholar (200M+ papers), inspect citations, download arXiv PDFs, and extract PDF text. Bundles a self-contained Python CLI.
development
Turns vague prompts into 8 structured planning files for brand new projects. DO NOT use on existing codebases.
development
Maps code, architecture, and infrastructure changes to specific control IDs in PCI-DSS v4.0 and MAS TRM (Singapore financial regulator), producing an audit-traceable findings report with per-control remediation.
testing
Companion to atlas-contract. Auto-invoked by its Final Audit on caught drift; also use after Post Reviews or user requests to record a mistake. Distills drift into WHEN/DON'T/INSTEAD clauses, writes to Atlas.md after confirmation.