Listed from the MCP registry; nobody on Odel publishes it.

MCP server: One MCP server.

walkerOS Source Browser

@walkerosRun by its publisher: served from their own domain, namespace checked by the registry.MCP server · External

Generate, parse, and validate walkerOS data-elb HTML tagging attributes

Web analyticsv4.5.0MITTypeScript
Freeno charge per call

Runs on your machine from its package; the steps are below.

walkerOS Architecture
From the README

What it does

  1. Reads
  2. Writes
  3. High impact

At most: only reads or looks up information.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Runs locally over stdio

This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).

npm@walkeros/mcp-source-browserv4.5.0

Run

npx -y @walkeros/mcp-source-browser

MCP client config

{
  "mcpServers": {
    "walkeros-source-browser": {
      "command": "npx",
      "args": [
        "-y",
        "@walkeros/mcp-source-browser"
      ]
    }
  }
}
README3 min read

walkerOS

Event collection you own, version, and trust

From browser to BigQuery and ad platforms - warehouse-native, and ready for AI agents via MCP.

The problem

GA4, custom tags, ad pixels - each one a separate setup, none of them agreeing on the same numbers. When something breaks, you can't see where.

walkerOS is one collection layer for all of them.

Why walkerOS?

  • Config-as-code - version control your tracking, review it in PRs, deploy with confidence
  • Declarative tagging - tag your UI in HTML, not scattered JavaScript
  • Consent-native - events queue until consent is given, then flush correctly to every destination
  • Schema validation - catch bad events at collection time, not weeks later in a dashboard
  • One layer, many destinations - send to your warehouse and ad platforms from a single event definition
  • Warehouse-native - events land clean and structured in your data warehouse, ready to query
  • MIT licensed - self-host anywhere, no vendor lock-in

How it works

walkerOS Architecture

  • Sources: Where events come from (browser, dataLayer, Express, AWS Lambda, GCP Functions, and more)
  • Collector: The processing engine (consent, validation, mapping, routing, enrichment)
  • Destinations: Where events go (GA4, Google Ads, Meta CAPI, BigQuery, and more)

Two ways to install walkerOS

Choose one based on your workflow and integration possibilities:

ModeDescriptionBest For
IntegratedImport directly into your TypeScript applicationReact/Next.js apps, TypeScript projects
BundledBuild a standalone script from JSON config with npx walkerosStatic sites, Docker deployments, CI/CD

Integrated (import into your app):

typescript
import { startFlow } from '@walkeros/collector';

const { elb } = await startFlow({
  destinations: {
    console: {
      code: {
        type: 'console',
        config: {},
        push: (event) => console.log('Event:', event.name),
      },
    },
  },
});

await elb({ name: 'page view', data: { title: 'Home' } });
// -> logs: Event: page view

Wire a real source and destination once you are ready:

typescript
import { startFlow } from '@walkeros/collector';
import { sourceBrowser } from '@walkeros/web-source-browser';
import { destinationGtag } from '@walkeros/web-destination-gtag';

await startFlow({
  sources: {
    browser: {
      code: sourceBrowser,
      config: { settings: { pageview: true } },
    },
  },
  destinations: {
    ga4: {
      code: destinationGtag,
      config: {
        settings: { ga4: { measurementId: 'G-XXX' } },
      },
    },
  },
});

Bundled (build from JSON config):

json
{
  "version": 4,
  "flows": {
    "default": {
      "config": {
        "platform": "web",
        "bundle": {
          "packages": {
            "@walkeros/collector": {},
            "@walkeros/web-source-browser": {},
            "@walkeros/web-destination-gtag": {}
          }
        }
      },
      "sources": {
        "browser": {
          "package": "@walkeros/web-source-browser",
          "config": { "settings": { "pageview": true } }
        }
      },
      "destinations": {
        "ga4": {
          "package": "@walkeros/web-destination-gtag",
          "config": {
            "settings": { "ga4": { "measurementId": "G-XXX" } }
          }
        }
      }
    }
  }
}

Then: npx walkeros bundle flow.json

AI-ready via MCP

walkerOS exposes a Model Context Protocol (MCP) interface. AI agents can read your event schema, suggest tracking definitions, and generate integration code - making your event layer programmable, not just configurable.

In Claude Code, one plugin installs both MCP servers and the walkerOS skills:

/plugin marketplace add elbwalker/walkerOS
/plugin install walkeros@elbwalker

For any other MCP client, add the servers to its configuration:

json
{
  "mcpServers": {
    "walkeros-flow": {
      "command": "npx",
      "args": ["@walkeros/mcp"]
    },
    "walkeros-source-browser": {
      "command": "npx",
      "args": ["@walkeros/mcp-source-browser"]
    }
  }
}

Loading a flow, validating it, and simulating an event all run locally, no account needed. See the MCP docs.

Coming from Google Tag Manager? See walkerOS vs. GTM.

Contributing

⭐️ Help us grow and star us. See our Contributing Guidelines to get involved.

Support

Need help? Start a discussion, or reach out via email.

For more insights, visit the talks repository.

License

Licensed under the MIT License.

Similar modules

Browse Web analytics