Skip to content

MetaMCP — The Missing Memory Layer for Multi‑Agent Ad Ops

LLMs are brilliant at single prompts but forget everything the moment a request ends. MetaMCP (“Memory‑Control Plane”) fixes that by giving agents persistent vector memory, workflow orchestration and policy‑based tool access — all wrapped in a lightweight TypeScript SDK.

Use it as the connective tissue that lets a marketing Orchestrator Agent brief Strategic Planner, Media Buyer and Campaign Optimiser sub‑agents while logging every insight back into a Living Knowledge System.


Key Facts

Spec / CapabilityDetail
Language100 % TypeScript; zero native deps
Core modulesMemoryStore, Workflow, ToolPolicy, EventBus, DevConsole
Storage adapterslibSQL/Turso, Postgres, Pinecone, Redis, DuckDB
Event busOut‑of‑the‑box Upstash Kafka / QStash, but pluggable
State modelVector embeddings + JSON blobs per task run; automatic summarisation
LicencingApache‑2.0 — no vendor lock‑in

How MetaMCP Fits Into an Agent Stack

flowchart TD
  subgraph Edge
    UI[Next.js + Vercel AI SDK] --> Agent[Orchestrator Agent]
  end

  Agent --> MCP[MetaMCP Memory]
  MCP -->|Vector| Turso[(libSQL)]
  MCP -->|Events| Kafka[Upstash Kafka]
  MCP -->|Policy| Tools[Tool Registry]
  MCP -->|Context| Agents[Strategic Planner, Media Buyer, Campaign Optimiser]
  Agents --> Platforms[Google Ads / Meta / DV360 / Amazon]
  1. Context MCPs — MetaMCP stores brand DNA, historical KPIs and playbooks so every sub‑agent starts in context.
  2. Platform MCPs — Direct API calls (Google Ads, Meta, DV360, Amazon) stream fresh metrics into memory on a schedule.
  3. Tools MCPs — Safety layer: only whitelisted functions (e.g., googleAds.updateBid) execute when policy checks pass.
  4. Living Knowledge System — Summaries + embeddings let future tasks query “what worked last Q4?” in milliseconds.

Why It Matters for Every Channel

ChannelMetaMCP unlocksImpact
SearchPersist SERP audits & keyword wins into vector DB; surface during new briefs.Keyword expansion agents avoid duplicate tests; ~30 % faster go‑to‑market.
ProgrammaticStream bid metrics to memory; run nightly workflow to auto‑adjust pacing rules.15‑20 % reduction in wasted spend across DV360 & YouTube.
SocialStore creative fatigue signals & comment sentiment for each ad set.Creative‑rotation agent pre‑emptively swaps ads, boosting CTR +25 %.
E‑commerceLog TACoS, Buy‑Box history, review sentiment per ASIN.Optimiser agent adjusts Amazon bids & price points before rank drops.

Pros & Cons

ProsCons
Open‑source & TS‑nativeEasy drop‑in for Node/Edge runtimes and serverless functions.Still early; limited GUI dashboards (CLI heavy).
Pluggable storage & event busSwap adapters in hours to match existing infra or SaaS (e.g., Postgres → Pinecone).Vector deduplication tuning required at scale.
Policy engine reduces “rogue” tool callsGranular governance + full audit trail builds client trust & compliance readiness.Cold‑starts on serverless ≥ 300 ms without edge cache.
Works offlineKeeps context if LLM provider goes down; enables edge‑only deployments for privacy regions.Must provision DB + Kafka infra (Upstash simplest).

Strategic Take‑Aways

  1. Stateful > Stateless Agents — Persisting context turns copy‑assistants into full‑funnel strategists.
  2. One Vector Store per Brand — Segregate memories; avoid leakage across clients for compliance.
  3. Event‑Driven Optimisation — Hook MetaMCP events into alerting (PagerDuty/Slack) to blend human + AI oversight.
  4. Policy‑First Development — Define who can call what API at what spend tier before writing agent logic.
  5. Benchmark Continuously — Use the DevConsole to run SnitchBench on each workflow release; regressions kill ROAS fast.
🤖 Quick Demo Prompt
{
  "role": "system",
  "content": "You are a Media Buyer Agent. MemoryStore: metaMCP.memory, Tools: googleAds.getStats(campaignId), googleAds.setBid(id, bid), dv360.shiftBudget(id, pct)."
}
{
  "role": "user",
  "content": "Review last week’s PMax campaigns; if ROAS < 2 move 10 % budget to the top 3 branded search ad groups and log rationale."
}

Behind the scenes:

  1. MetaMCP recalls historical ROAS vectors → fetches fresh KPIs.
  2. Workflow decides → calls googleAds.setBid & dv360.shiftBudget.
  3. Writes a summary note into MemoryStore so tomorrow’s run knows the change.

Further Reading

Prepared by Performics Labs — translating frontier compute into marketing advantage.