OQVA Marketing MCP
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| config_statusA | Report which marketing data sources are configured (no secrets revealed). Call first if a tool says 'not configured'. |
| gsc_list_sitesA | List Search Console properties the service account can access (confirm the SA is granted + the exact siteUrl). |
| gsc_queryA | Search Console Search Analytics — clicks / impressions / CTR / position grouped by dimension(s). The core SEO tool (same data as the GSC Performance export, but live + filterable). |
| gsc_list_sitemapsC | List submitted sitemaps + processing status for a property. |
| gsc_inspect_urlB | URL Inspection — index/coverage status, last crawl, canonical, mobile usability for one URL. |
| ga4_run_reportB | GA4 Data API runReport — sessions, users, conversions, events, channels. Flexible dimensions + metrics over a date range. |
| ga4_realtimeC | GA4 realtime report (active users in the last 30 min). |
| gbp_list_accountsA | [GBP] List Business Profile accounts. NOTE: the Business Profile APIs require Google to approve API access (allowlist) first. |
| gbp_list_locationsA | [GBP] List locations for an account (name, title, address, website, categories). |
| gbp_performanceB | [GBP] Daily performance time series for a location: impressions (maps/search × desktop/mobile), call clicks, website clicks, direction requests, conversations, bookings. |
| gbp_list_reviewsA | [GBP] List reviews for a location (rating, comment, reviewer, time, any reply). |
| gbp_reply_reviewC | [GBP][WRITE] Post (or update) the business reply to a review. |
| meta_graphA | Meta Graph / Marketing API call — flexible escape hatch, READ and WRITE. method defaults GET; POST to create/update (e.g. path='', params={status:'PAUSED'}), DELETE to remove. Does anything the token's scopes allow. |
| meta_page_insightsC | [Meta] Facebook Page insights (impressions, engagement, fans, etc.). |
| meta_ad_insightsB | [Meta] Ad account insights (impressions, clicks, spend, actions, CPC, CTR). Only returns data if you actually run Meta ads. |
| meta_list_ad_accountsA | [Meta] List ad accounts the token can access (id, name, status, spend, currency, business). NOTE: amount_spent is in the currency's MINOR unit (cents/pence) — divide by 100 for the real figure. (A SYSTEM-USER token returns [] here — use meta_graph on '/owned_ad_accounts' instead.) Start of an ads audit. |
| meta_list_businessesA | [Meta] List Business Manager businesses the token can access. |
| meta_list_pagesA | [Meta] List Facebook Pages the token manages (id, name, category, fans). |
| meta_list_campaignsA | [Meta] List campaigns on an ad account (id, name, status, effective_status, objective, budget, dates). NOTE: daily_budget/lifetime_budget are in the currency's MINOR unit (cents/pence — ÷100). The core tool for finding dead/clutter campaigns. |
| meta_update_campaignA | [Meta][WRITE] Change a campaign's status — ACTIVE / PAUSED / ARCHIVED / DELETED. The tidy verb for dead campaigns (prefer ARCHIVED over DELETED — reversible). |
| meta_list_custom_audiencesA | [Meta] List custom audiences on an ad account (id, name, size, subtype, status, dates). |
| meta_delete_custom_audienceA | [Meta][WRITE] Delete a custom audience (destructive — removed, not archived). |
| meta_list_pixelsA | [Meta] List ad pixels / datasets on an ad account (id, name, last_fired_time) — spot stale/duplicate pixels. |
| ga4_account_summariesA | GA4 Admin: list the accounts + properties you can access, including each property's NUMERIC id — use this to discover GA4_PROPERTY_ID. |
| ga4_list_key_eventsB | GA4 Admin: list key events (conversions) on a property. |
| ga4_create_key_eventB | GA4 Admin [WRITE]: mark an event name as a Key event (conversion). e.g. eventName='generate_lead'. |
| ga4_list_custom_dimensionsC | GA4 Admin: list custom dimensions on a property. |
| ga4_create_custom_dimensionA | GA4 Admin [WRITE]: register an event parameter as a custom dimension (e.g. surface a 'step' param as 'Booking Step'). |
| ga4_list_data_streamsC | GA4 Admin: list data streams (web/app) on a property — incl. the measurement id. |
| ga4_adminA | GA4 Admin API escape hatch — any method/path under analyticsadmin v1beta (audiences, property/stream updates, etc.). WRITES are real; PATCH usually needs a updateMask query. |
| gsc_submit_sitemapC | GSC [WRITE]: submit / resubmit a sitemap. |
| gsc_delete_sitemapA | GSC [WRITE]: remove a sitemap (re-submittable). |
| gsc_add_siteB | GSC [WRITE]: add a property to Search Console (ownership still has to be verified separately). |
| gsc_request_indexingA | Indexing API [WRITE]: ask Google to (re)crawl a URL. NOTE: officially for JobPosting/BroadcastEvent pages; pinging general URLs works but is unofficial. |
| gtmA | Google Tag Manager API v2 escape hatch — any method/path under tagmanager/v2. Discover: GET 'accounts', then '/containers', then '/workspaces'. Manage: GET/POST '/tags' | '/triggers' | '/variables'; create a version (POST ':create_version'); publish (POST ':publish'). WRITES + PUBLISH are real and affect the live site — build in a workspace, publish deliberately. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 35 tools
Each tool is clearly prefixed by platform (ga4_, gbp_, gsc_, gtm_, meta_) and has a distinct purpose within that platform. No overlapping functionality between tools; even similar sounding tools like ga4_run_report and ga4_realtime are clearly differentiated by description.
Naming follows a consistent pattern: platform_verb_noun (e.g., ga4_list_data_streams, gsc_submit_sitemap, meta_list_campaigns). All lowercase with underscores. Only minor exception is config_status without prefix, but it's a utility tool. Convention is uniform and predictable.
35 tools is relatively high but justified by covering 5 distinct marketing platforms (GA4, GBP, GSC, GTM, Meta). Each platform has a reasonable number of tools (1-9), avoiding unnecessary bloat. Could be trimmed slightly, but overall appropriate for the scope.
The tool set covers core CRUD and reporting operations for each platform: GA4 has admin and data tools, GBP has location and review management, GSC has site and search analytics, Meta has ads and pages. Minor gaps exist (e.g., individual campaign get, detailed GA4 event data), but the surface is comprehensive enough for most marketing tasks.