Create rum operationDATADOG_MCP_CREATE_RUM_OPERATION
Create a web-UI-configured RUM operation: the same object created by clicking "Create Operation" in the RUM Operations UI. An operation tracks a user journey (e.g. checkout) between a start event and a success, failure, or abandonment event, matched by search queries against RUM events.
This tool does NOT create SDK-instrumented operations — those are defined in application code via startFeatureOperation(...) and have no backend object; this tool cannot create or affect them. **For SDK-instrumented operations, load the datadog/rum skill (load_datadog_skill) for the SDK instrumentation guidance** — this tool only configures web-UI operations. Use this tool only when the ask is to configure an operation from the RUM Operations UI's perspective (e.g. "set up an operation for checkout using these queries"), not "help me instrument my app's code."
application_id scopes the operation to a RUM application and is required — find it with search_rum_applications. Before writing a query from a free-text description of a user journey, use search_datadog_rum_events to confirm the real facet values (view names, action names, URL paths) rather than guessing them. An operation name must be unique; the backend rejects a duplicate (409), so the create call itself surfaces a name conflict — a pre-check via search_rum_operations is optional, not required.
Each of start/success/failure requires a query (<step>_query + <step>_event_type). The "update" step type is a UI-only feature this tool does not expose. abandonment requires start_query to target exactly one view via @view.name: (see its description) — the tool rejects the call otherwise. If the user asks to track abandonment or drop-off, set abandonment: true (requires start_query to target exactly one view). Every step query must carry the facets its event type requires (see start_query), and @view.name: may never be a bare wildcard ("*"). category — including the default, component_loading — restricts which event types are valid per step (see category); a view start is only valid under page_load, page_navigation, custom, or custom_operation (never under component_loading or form_submission), and a view success is only valid under page_navigation, form_submission, custom, or custom_operation (never under component_loading or page_load). A failure step never accepts view, under any category.
Example — "track checkout as an operation, from the checkout page to order confirmation, failing on a declined payment": call with name="checkout", category="page_navigation", start_query="@view.name:/checkout", start_event_type="view", success_query="@view.name:/checkout/complete", success_event_type="view", failure_query="@view.name:/checkout @error.message:*declined*", failure_event_type="error", application_id="<uuid from search_rum_applications>", confirm=true.
**Always confirm the exact operation (name, queries, event types) with the user before calling. Never create an operation speculatively.** Re-invoke with confirm: true once confirmed.