Free DV360 MCP: No-Code Setup

  • Free forever plan: unlimited connected accounts, up to 30 days of history (15 days in AI chats) and 100 automation credits a month.
  • Google sign-in, no Cloud project: no OAuth client, no API scopes and no report queue to manage.
  • Programmatic answers: pacing, viewability, reach and frequency, video and fees by insertion order and line item.
  • Safe by default: new campaigns start paused, and every change waits for your approval.
Try free

What is a DV360 MCP server?

A DV360 MCP server lets an AI assistant like Claude or ChatGPT reach your DV360 data through the Model Context Protocol (MCP). You ask in plain language, and the assistant calls the Display & Video 360 API for partners, campaigns, insertion orders, line items and reports.

  • Quick setup: paste https://mcp.portermetrics.com/mcp into Claude, ChatGPT or Cursor and sign in with your Porter account. Full steps
  • Works in: Claude, ChatGPT, Claude Code, Cursor, VS Code and Codex
  • Data: pacing, viewability, reach and frequency, video and fees by insertion order and line item
  • Changes: campaigns, insertion orders, line items and creatives, each after your approval
  • Price: free plan, paid plans from $15 per account a month
  • Official DV360 server: none from Google as of November 2026
Use cases

DV360 MCP use cases

Porter connects Google Display & Video 360 (DV360) to Claude, ChatGPT and other AI clients through one MCP server. Ask which line items are under-pacing, which exchanges sell unviewable impressions or what fees add to an insertion order, and the answer comes from your advertisers.

Reports

Pacing and delivery

  • Delivery: Impressions, Clicks, Click Rate (CTR) and Media Cost (Advertiser Currency) by insertion order, line item or creative.
  • Every level: Advertiser, Campaign, Insertion Order and Line Item as columns in one question.

Supply and viewability

  • Viewability: Active View: % Viewable Impressions and Active View: Viewable Impressions by exchange and inventory source.
  • Price of supply: Media Cost eCPM (Advertiser Currency) next to viewability, so a cheap CPM can’t hide unseen impressions.
  • Invalid traffic: Invalid Impressions by line item or exchange.

Reach, video and fees

  • Reach and frequency: Unique Reach: Impression Reach and Unique Reach: Average Impression Frequency by insertion order.
  • Video: TrueView: Views, Complete Views (Video) and Completion Rate (Video) across YouTube and open-web line items.
  • Fees: Media Cost, Data Fees, Platform Fee and Total Media Cost side by side per insertion order.

Every metric and dimension Porter reads is in the DV360 fields list.

Campaign management

  • Look before you change: list campaigns, insertion orders, line items, creatives and partners first.

DV360 next to Google Ads and GA4

  • Programmatic next to search: DV360 Media Cost next to Google Ads Cost by week, through the Google Ads MCP.
  • Display to site visits: DV360 clicks by campaign next to GA4 sessions by session campaign, through the Google Analytics 4 MCP.
  • Every advertiser: each advertiser your Google login reaches, with Advertiser as a column.

Reports

  • Live dashboards: one hosted link that stays current, with nothing to export from Bid Manager.

Audits

  • Pacing: Line Item Pacing Percentage next to Line Item Budget and Billable Cost (Advertiser Currency), line item by line item.
  • Weekly summary: which line items under-delivered, which supply wasted spend and what to pause, written in the chat.

Management

  • Conversions: Post-Click Conversions, Post-View Conversions and Total Conversions from Floodlight.
  • Build from a brief: create a paused campaign, then its insertion orders and line items, with every setting shown before you approve.
  • Pause and activate: pause or turn on campaigns, insertion orders and line items, or rename them.
  • Scheduled delivery: a dashboard emailed to you or a client on the day and hour you pick.

Example answer

Demo data, from a fictional advertiser. Prompt: “Show my insertion orders this month with Total Media Cost (Advertiser Currency), pacing, Active View: % Viewable Impressions and Impressions, with eCPM.”

Insertion OrderTotal Media CostPacing% ViewableImpressionseCPM
IO · Prospecting Q4$18,420.0096.4%71.0%4,120,000$4.47
IO · Retargeting$6,240.00118.2%64.0%1,180,000$5.29
IO · CTV Awareness$22,800.0082.5%93.0%1,650,000$13.82
IO · YouTube Reach$9,850.00101.7%88.0%2,240,000$4.40

Retargeting is 18% over pace and CTV is under, so Claude proposes moving budget between the two insertion orders, waiting for your approval.

Reference

DV360 MCP server reference

One server, every advertiser: Porter connects DV360 to the AI clients, fields and workflows programmatic teams already use. The same Porter server URL works in Claude, ChatGPT and any MCP client that supports remote servers. Porter runs reports and changes through Google’s Display & Video 360 API, so Claude reads what DV360 reports right now.

DV360 fields

Account objects: partners · advertisers · campaigns · insertion orders · line items · creatives

Setup: Advertiser · Campaign · Insertion Order · Line Item · Line Item Type · Line Item Status · Line Item Budget · Creative · Creative Type · Creative Size

Supply: Exchange · Inventory Source · Line Item Pacing Percentage · Budget Segment Pacing Percentage

DV360 metrics

Delivery: Impressions · Clicks · Click Rate (CTR) · Invalid Impressions

Cost: Media Cost (Advertiser Currency) · Media Cost eCPM (Advertiser Currency) · Billable Cost (Advertiser Currency) · Data Fees (Advertiser Currency) · Platform Fee (Advertiser Currency) · Total Media Cost (Advertiser Currency) · Total Media Cost eCPM (Advertiser Currency)

Viewability: Active View: Measurable Impressions · Active View: Viewable Impressions · Active View: % Viewable Impressions · Active View: % Visible 10 Seconds

Reach: Unique Reach: Impression Reach · Unique Reach: Total Reach · Unique Reach: Average Impression Frequency

Video: TrueView: Views · TrueView: View Rate · Complete Views (Video) · Completion Rate (Video) · Video Media Cost eCPCV (Advertiser Currency) · Engagements (YouTube)

Conversions: Post-Click Conversions · Post-View Conversions · Total Conversions

Porter has 812 ready-made DV360 fields, 534 metrics and 278 dimensions. Each one is in the full DV360 field reference.

Dimensions and segments

Account: Advertiser · Campaign · Insertion Order · Line Item · Creative

YouTube: YouTube Ad Group · YouTube Ad · YouTube Ad Format · Placement (All YouTube Channels)

Time: Date · Week · Month

Actions

Reads: list partners · list campaigns · list insertion orders · list line items · list creatives · get report results

Changes you approve: create, rename, pause, activate or delete campaigns, insertion orders and line items

Other destinations

The same DV360 connection also sends data to Data Studio (formerly Looker Studio), BigQuery and Google Sheets, at no extra cost.

Google’s DV360 data availability table sets the rules every DV360 report follows. Most data goes back 24 months, DV360 can still update a day for up to 31 days, keyword data stays 60 days and hour reports cover up to 31 days.

Security and trust

Safety and security

Porter’s DV360 MCP signs in with Google, creates new campaigns paused and asks before anything changes in your advertisers. Reporting runs apart from changes, so a pacing question never edits a line item. An AI client working through Porter touches only the campaigns, insertion orders and line items you approve.

Reporting first

Ask about pacing, viewability and fees without writing anything back to DV360. Reports run apart from changes, so a spend question never edits a campaign.

Paused by default

Porter creates campaigns paused, and Claude shows every setting before it calls the create. Nothing serves until you approve it or turn it on in DV360.

Every change approved

Pausing, activating or renaming a campaign, insertion order or line item shows up in the chat first. Claude waits for your yes before it calls DV360.

Deletes are permanent

Deleting a campaign, insertion order or line item can’t be undone. Claude names it and asks first, so pause rather than delete when you might want it back.

Google’s write limits, respected

Google allows 150 write requests a minute per advertiser, per DV360 API limits. A bulk pause is a list of single changes, and each one waits for your approval.

Revoke access anytime

Disconnect DV360 in Porter, or remove Porter from your Google account permissions, and access ends. Your DV360 user roles stay as they are.

Setup

How to set up the DV360 MCP server

Porter’s DV360 MCP uses one server URL in every AI client, plus a Google sign-in you complete once. Claude takes Porter as a plugin or a custom connector. ChatGPT takes it through the Porter Metrics app or a custom MCP server. Both reach the same DV360 partners and advertisers.

https://mcp.portermetrics.com/mcp

How to install DV360 MCP in Claude

  1. Open claude.ai and go to Settings → Connectors.
  2. Click Add custom connector.
  3. Name it Porter and paste https://mcp.portermetrics.com/mcp.
  4. Click Add, then sign in with your Porter account and approve access.
  5. Connect DV360 when Porter asks: sign in with the Google account that has your DV360 user role.
  6. Ask a DV360 question, like “Show Impressions, Clicks and Media Cost (Advertiser Currency) by Insertion Order for the last 7 days.”

On Team and Enterprise plans, an owner adds the connector first. Anthropic’s custom connector guide covers the same steps. The Claude-specific setup and use cases live on the DV360 connector for Claude page.

Watch the Claude setup demo

How to install DV360 MCP in ChatGPT

ChatGPT has two routes to the same data. The Porter Metrics app in ChatGPT’s app directory works on any plan with apps. The Porter MCP gets every new tool the day Porter ships it, on Business, Enterprise and Edu workspaces.

Porter Metrics app: in ChatGPT, open Apps, search “Porter Metrics”, click Connect and sign in with your Porter account, then connect DV360: sign in with the Google account that has your DV360 user role.

Porter MCP:

  1. Open ChatGPT on the web and go to Plugins.
  2. Click +, then Add custom MCP server.
  3. Name it Porter and paste https://mcp.portermetrics.com/mcp under Connection.
  4. Choose OAuth, tick “I understand and want to continue” and click Create as a plugin.
  5. Sign in with your Porter account.

Pro accounts can add it with read access only, per OpenAI’s custom MCP server guide.

The DV360 connector for ChatGPT page covers the ChatGPT side in full.

Watch the ChatGPT setup demo

How to install DV360 MCP in Claude Code, Cursor, VS Code and Codex

Pick your coding agent. Each one uses the same server URL and a Google sign-in, so no API key or credentials file sits in a config.

  1. Add Porter’s plugin in Claude Code. It installs the Porter connector and Porter’s skill in one step.
    /plugin marketplace add portermetrics/porter /plugin install porter-metrics@portermetrics
  2. Ask for your data. The first time, your browser opens: sign in with the Google account you use in Porter.
  3. No plugins? Add the server directly instead:
    claude mcp add --transport http porter https://mcp.portermetrics.com/mcp
  4. Check: /mcp shows porter as connected. Ask: “Which DV360 accounts can you see?”
  1. Open Cursor Settings → Tools & Integrations and click New MCP Server. Cursor opens mcp.json.
  2. Paste this and save.
    { "mcpServers": { "porter": { "url": "https://mcp.portermetrics.com/mcp" } } }
  3. Click Connect next to porter and sign in with the Google account you use in Porter.
  4. Check: porter shows a green dot in Tools & Integrations. Open an Agent chat. Ask: “Which DV360 accounts can you see?”
  1. Open the Command Palette (Ctrl/Cmd+Shift+P) and run MCP: Add Server → HTTP.
  2. Paste https://mcp.portermetrics.com/mcp, name it porter and choose Global. Or add it to .vscode/mcp.json:
    { "servers": { "porter": { "type": "http", "url": "https://mcp.portermetrics.com/mcp" } } }
  3. Allow the sign-in prompt and sign in with the Google account you use in Porter.
  4. Check: open Copilot Chat in Agent mode; Porter’s tools appear under the tools icon. Ask: “Which DV360 accounts can you see?”
  1. Add Porter from your terminal.
    codex mcp add porter --url https://mcp.portermetrics.com/mcp
  2. Sign in. Your browser opens: sign in with the Google account you use in Porter.
    codex mcp login porter
  3. Check: codex mcp list shows porter as logged in. Start codex. Ask: “Which DV360 accounts can you see?”

The same URL works in Windsurf, Cline, Zed and any client that supports remote MCP servers over HTTP.

Add Porter’s skill

Porter’s skill teaches Claude which Porter tools to call for each DV360 task, so answers need fewer retries. In claude.ai, download https://mcp.portermetrics.com/skill.zip and upload it in Settings → Capabilities → Skills. In Claude Code, Porter’s plugin adds it for you, and other agents can run npx skills add portermetrics/porter.

Test the connection

Paste this into a new chat. It only reads data.

Use Porter only. For my DV360 advertisers, show Impressions, Clicks, Click Rate (CTR) and Media Cost (Advertiser Currency) by Insertion Order for the last 7 full days. Say so if an account returns no data.

Is there an official DV360 MCP server URL?

Google hasn’t published a DV360 MCP server as of November 2026. Google ships a Google Ads MCP server and a Google Analytics one, while DV360 has its REST APIs. Use Porter’s URL above for a hosted DV360 server you sign into with Google, next to Google Ads and GA4.

Guides and videos

Porter’s short shows the Claude connection end to end: add Porter, sign in with Google and ask the first question. The steps match the plugin and manual setup above.

Prompts

DV360 MCP prompts

Copy a prompt into Claude or ChatGPT, then change the dates or thresholds to fit your account. Every change waits for your approval.

Reporting prompts

Pacing check

For this month, by Line Item and Line Item Status, show Line Item Budget, Line Item Pacing Percentage, Billable Cost (Advertiser Currency) and Impressions. List active line items below 70% or above 110% pacing, most under-paced first.

Unviewable supply

For the last 30 days, by Exchange and Inventory Source, show Impressions, Active View: % Viewable Impressions and Media Cost eCPM (Advertiser Currency). List sources with at least 50,000 Impressions and under 50% viewable, sorted by Media Cost.

Reach and frequency

For the last 30 days, by Insertion Order, show Impressions, Unique Reach: Impression Reach and Unique Reach: Average Impression Frequency. Flag insertion orders above a frequency of 5.

Creative fatigue

Compare the last 7 days with the previous 7 by Creative and Creative Size: Impressions, Clicks, Click Rate (CTR) and Active View: % Viewable Impressions. Flag creatives whose CTR fell more than 20% while Impressions held.

Video completion

For the last 30 days, by Line Item and Line Item Type, show Impressions, TrueView: Views, Complete Views (Video), Completion Rate (Video), Media Cost (Advertiser Currency) and Video Media Cost eCPCV (Advertiser Currency). Rank video line items by Completion Rate (Video).

Google’s reach and frequency rules keep most reach metrics to 92 days or less, and reach can take up to 3 days to appear. YouTube reports can’t use Total Media Cost, per the Bid Manager release notes, so the video prompt uses Media Cost.

Research and audit prompts

DV360 next to Google Ads

Compare DV360 Media Cost (Advertiser Currency), Impressions and Clicks with Google Ads Cost, Impressions and Clicks by week for the last 8 weeks.

Display to site visits

For the last 30 days, show DV360 Impressions, Clicks and Media Cost (Advertiser Currency) by Campaign, then GA4 Sessions and Engaged sessions by Session campaign. Match the campaigns by name and show cost per engaged session.

Advertiser comparison

Compare every advertiser by Advertiser with Impressions, Media Cost (Advertiser Currency), Active View: % Viewable Impressions and Total Conversions for the last 30 days, worst cost per conversion first.

The research skills blend DV360 with Google Ads and GA4, so connect those sources in Porter first. GA4 matches only where your UTM campaign names match DV360 campaign names.

Management prompts

Pause unviewable line items

In advertiser 1234567, list line items with Active View: % Viewable Impressions below 40% and more than 50,000 Impressions in the last 7 days. Pause them only after I approve the list.

Campaign from a brief

In advertiser 1234567, create a paused campaign ‘Q1 Prospecting’ with one insertion order ‘Q1 Prospecting – Display’ using even pacing. Show me every setting before you create it.

Add a line item

Under the insertion order ‘Q1 Prospecting – Display’, draft a display line item, show me every setting, and create it only after I approve.

Rename for the naming convention

List the line items in advertiser 1234567 whose names don’t start with the insertion order name, propose new names and rename them after I approve.

Weekly report by email

Build a DV360 dashboard with Media Cost, Impressions, Line Item Pacing Percentage and Active View: % Viewable Impressions by insertion order, and email it to me every Monday at 8 a.m.

The advertiser ID 1234567 is an example; use your own from DV360.

Who this is for

Who this is for

Programmatic teams who report on DV360 next to their other channels get the most from Porter’s MCP. Programmatic traders, agencies, in-house media managers and analysts use it to turn a Bid Manager question into a ranked list, a paused draft or a dashboard in one chat.

Programmatic traders

  • Pacing: the worst pacers ranked before the flight runs out.
  • Supply: exchanges where a cheap CPM hides unviewable impressions.

Your Monday isn’t about one report. It’s about the line items that stopped spending over the weekend.

Agencies

  • Every advertiser: one question across clients, with Advertiser as a column.
  • Client reports: fees and total media cost per insertion order, ready for the invoice call.

In-house media managers

  • Reach: deduplicated reach and frequency per insertion order.
  • Video: YouTube and open-web completion rates in one table.
Comparison

Which DV360 MCP do you need?

“DV360 MCP” names a few different setups, and Google hasn’t published one as of November 2026. Every option builds on Google’s Display & Video 360 and Bid Manager APIs. Porter covers DV360 reporting, paused builds and status changes from one hosted server, and adds Google Ads, GA4, dashboards and scheduled emails.

A self-built server hands your AI Google’s DV360 APIs. Porter’s MCP hands it your programmatic results next to everything else you run.

Both use Google’s APIs with your permission. Here is where they part.

PorterYour own server on Google’s DV360 and Bid Manager APIs
Same job, different reach
ServerHosted by Porter at mcp.portermetrics.com/mcpYou host it on your machine or server
Sign-inGoogle loginA Google Cloud project, OAuth client or service account you manage
Reporting812 named fields, with Porter running the report and waiting for itBid Manager queries you create, run and download
ChangesCreate, rename, pause, activate and delete campaigns, insertion orders and line items, each approvedWhatever you build, targeting and creatives included
QuotasPorter’s to manageYours, per Bid Manager API quotas and DV360 API limits
Works inClaude, ChatGPT, Cursor and any remote MCP clientThe clients you configure it for
PriceIncluded in every Porter plan, the free plan tooFree to build; you maintain it
Only one side
Google Ads and GA4 in the same answerYes, from Porter’s 30+ data sources—
Live dashboards at their own linkYes—
Scheduled reports by emailYes—
Skills: whole DV360 tasks, already writtenYes—

The right column follows Google’s DV360 API docs, API limits and Bid Manager quotas (as of November 2026).

Build your own if you need targeting or creative changes from an agent and have time to maintain it. Porter’s rows under Only one side are what happens when DV360 is one channel among several.

And the third-party DV360 MCPs?

Several rank for this search, and they split three ways.

  • Reporting connectors: they read DV360 data into the chat, often next to other channels.
  • Trafficking tools: they build and edit campaigns, sometimes with targeting, usually with an approval step.
  • Open-source servers: free to download and yours to host. You keep the service account and patch it when Google changes the API.

Porter does reporting and approved changes from one hosted server, starting on the free plan.

Porter vs other hosted DV360 MCPs

Other hosted DV360 MCPs also skip the setup. Porter is built for teams that report on several accounts and channels:

1

Every account at once

One prompt answers for all your DV360 accounts and clients, not one account per setup.

2

DV360 next to 30+ sources

GA4, Google Tag Manager, Google Ads, Meta Ads and Shopify, blended in one answer.

3

Competitor research

Competitor ads, keywords and search results, next to your own DV360 numbers.

4

Reports outside the chat

Live dashboards, scheduled email reports, and the same data in Data Studio, BigQuery and Google Sheets.

5

Changes with approval

Every DV360 change is shown first and waits for your yes.

6

Claude and ChatGPT both covered

A remote MCP URL, plus an approved app in ChatGPT’s app directory.

DV360 MCP pricing

The DV360 MCP is included in every Porter plan, the free-forever plan too. Reporting is billed per connected account.

  • 14-day trial: everything unlimited, no credit card.
  • Free forever: unlimited connected accounts, 30 days of history (15 days in AI chats), 100 automation credits a month.
  • Paid Reporting: from $15 per account a month, or $12.50 billed annually.
  • Unlimited questions: AI chats, queries and dashboards are included. Reads are free; each completed change uses 1 automation credit.
5 accounts
Monthly billing
$40
Annual billing, per month
$33.33
Per account
$8.00

Reporting price for connected accounts, in USD. AI chats, queries and dashboards are unlimited. Annual billing is 10 months for 12.

The more accounts you connect, the lower the price per account. See the full calculator on Porter pricing.

Frequently asked questions

Is there an official DV360 MCP?

Google hasn't published a DV360 MCP server as of November 2026. Google offers the Display & Video 360 and Bid Manager APIs, and every DV360 MCP builds on them. Porter's DV360 MCP runs at https://mcp.portermetrics.com/mcp, signs in with Google and adds approved changes, dashboards and your other channels.

What is the DV360 MCP server URL?

Porter's DV360 MCP server URL is https://mcp.portermetrics.com/mcp. Paste it into Claude, ChatGPT or another AI client as a custom connector, then sign in with the Google account that has your DV360 user role. The same URL also reaches your Google Ads and GA4 accounts in Porter.

Is the DV360 MCP free?

Porter's DV360 MCP is included in every Porter plan, the free-forever plan too. The free plan covers unlimited connected accounts, up to 30 days of history, 15 days in AI chats and 100 automation credits a month. Paid Reporting starts at $12.50 a month per data source account, billed annually, and the 14-day trial needs no card.

What does DV360 stand for?

DV360 stands for Display & Video 360, Google's demand-side platform in the Google Marketing Platform, formerly DoubleClick Bid Manager. Advertisers and agencies use it to buy display, video, audio and connected TV ads programmatically, per Google's DV360 overview.

Can I connect several DV360 advertisers or partners?

Yes. One Google login brings every partner and advertiser that user can reach, and you pick the ones Claude should use. Claude compares them in one answer with Advertiser as a column. Reporting is billed per connected advertiser, and the free plan connects unlimited accounts.

Can Claude change targeting or creatives?

Claude lists creatives and builds, pauses, activates, renames or deletes campaigns, insertion orders and line items. Targeting, audiences, exclusion lists and creative uploads stay in DV360, where you set them as usual. Claude still tells you which line items to retarget, with the numbers behind it.

Troubleshooting

Why don't the numbers match DV360?

Check the dates and the currency first. DV360 can update a day's data for up to 31 days, so recent totals still move. Money totals differ when DV360 shows Advertiser Currency and your question used USD or Partner Currency. Date and Date (UTC) also split days differently when the advertiser isn't on UTC.

Why does Claude ask for an advertiser ID?

Changes in DV360 run at the advertiser level, so Claude needs the advertiser ID before it creates or pauses anything. Copy it from DV360 once, or ask Claude for a report by Advertiser first and use the ID from there.

Why is reach empty, or a question failing?

Reach comes back empty past DV360's reach window or for line items under its minimum volume. A question also fails when it pairs filters and metrics DV360 won't combine. Split it, or test the pair in DV360's report builder, and Claude lines the answers up.

Start free

Connect DV360 to Claude or ChatGPT and run your first pacing check, supply review or paused campaign draft.

Start free: unlimited DV360 advertisers on the free-forever plan, or a 14-day trial with everything unlimited and no card.

  • Programmatic traders: the worst pacers ranked before the flight ends.
  • Agencies: every client's fees per insertion order in one answer.
  • In-house media managers: DV360 next to Google Ads in one table.
  • Analysts: the same fields in chat, Data Studio and BigQuery.