safe-mcp sign in

library · marketing reporting

Google Analytics, Search Console and Bing, in one vocabulary.

Marketing Reporting is our own server. It answers questions over Google Analytics 4, Google Search Console and Bing Webmaster Tools with one canonical set of metrics, so an agent asks for sessions by landing page the same way whichever source holds them. Every new account starts with it.

Each person signs in with their own Google account. The server asks for read scopes only.

the entry
namecom.safe-mcp/marketing-reporting
endpointmarketing-api.safe-mcp.com, the hosted server the gateway connects to
authorizeGoogle, per person, scope marketing.read
read-onlymarketing_get_sources · get_catalog · get_report · get_funnel
writesmarketing_manage_surface, the one tool that saves a choice

Defaults as shipped.

What the agent can ask.

marketing_get_sourceswhich GA4 properties, web and app streams, Search Console sites and Bing sites this person can see, and which one the project reports on
marketing_get_catalogthe metrics and dimensions each source answers, and which native fields it passes through beyond the curated list
marketing_get_reporttotals, trends and breakdowns: sessions, users, engagement, revenue, clicks, impressions, position; up to nine GA4 dimensions; one date range or two for period over period; a significance test for a rate comparison
marketing_get_funnelordered event steps in GA4, or a landing-page funnel that joins GA4 sessions with Search Console and Bing clicks
marketing_manage_surfaceread or save which property and sites the project reports on by default; the only write, so it goes through every gate

One row cannot hold everything. GA4 has no search query; Search Console and Bing have no sessions. A merged report aligns on the shared grain, usually landing page, and keeps per-source detail in its own section. The catalog says which fields each source accepts.

A goal you can declare on day one.

The four read tools are marked read-only by the library, so any number they return can be a goal's measurement. Declare it and the gateway takes a baseline, then reads again every twelve hours and at the end of every session.

Search rankings move slowly. Give the goal a settle time of days or weeks, so credit lands where the effect shows.

a goal, as declared
titleorganic clicks to /signup
directionincrease
measurementmarketing_get_report · read-only
settle14 days
baseline312 · measured on declare

Example, not real data.

Where the numbers go.

The reporting server keeps no report data. Your project's log does, because the log keeps every result: a report an agent pulled on Monday is readable on Tuesday by anyone in the account, and exportable. If that is more than you want kept, narrow the server with a preset to the dimensions you need, or keep it out of projects that do not need it.

Nothing here changes anything in Google Analytics, Search Console or Bing. The only write is the project's own choice of default property and sites.

What a week with it looks like.