Skip to main content

For AI agents: a Markdown version of this page is at https://docs.snowplow.io/docs/signals/applications.md. The index of all documentation pages is at https://docs.snowplow.io/llms.txt, and the index for this section is at https://docs.snowplow.io/docs/signals/llms.txt.

Choose how to use Signals attributes

Once you've defined and published attribute groups, several kinds of consumer can read what Signals calculates. Applications can pull values when they need them, or Signals can push an intervention when a user meets your criteria. Pull and push compares the two patterns.

Use this table to find the page for what reads the data:

What reads itWhat it getsUseInterfaces
Application codeCalculated attribute values for a user or sessionServices, then retrieve attributes. Services are recommended for production.Python SDK, Node.js SDK, Signals API
An agent that needs recent session activity and a promptThe session's latest events, up to 100 events or 1 hour, as JSON or a narrativeAgentic contexts, scoped to domain_sessionidPython SDK, Node.js SDK, Signals MCP server
An agent that chooses what to read at runtimePublished attribute groups and agentic contexts, as toolsSignals MCP serverAny MCP client
An application that reacts when criteria are metAn intervention payload, pushed as soon as the criteria are metDefine interventions, then subscribe to themPython SDK, browser plugin, Signals API
Offline model trainingPoint-in-time attribute values for labeled anchors, in a warehouse tableBuild training datasetsPython SDK

Agents​

An agent can read Signals data in two ways. To ground it in what the user is doing in the current session, retrieve an agentic context and pass it to the model. To let the agent list and read published attribute groups and agentic contexts itself, add the Signals MCP server to its tools.

For context about a logged-in user across sessions, use an attribute group keyed on user_id or domain_userid; see identity resolution.

Was this page helpful?