The Profound Agency

MCP server for AI agentsWork with the publisher network directly.

A Model Context Protocol server over 1,600+ publications. Search them, price them, open an order, or ask for a paid media quote — without scraping a single page. No key, no account, no approval.

An agent cannot buy anything here. Ordering returns a link a human opens.

Connect

Endpoint
https://theprofound.agency/api/mcp/
Transport
Streamable HTTP, stateless
Authentication
None

In ChatGPT, the same server is at https://theprofound.agency/api/mcp/chatgpt/, as listed in ChatGPT's app directory. It has seventeen of the tools: it searches, compares, quotes and plans, but leaves out ordering, order status, campaign briefs and the client article tools, because ChatGPT's directory doesn't allow selling services or linking to checkout. Everywhere else, use the endpoint above.

Add it to an MCP client:

{
  "mcpServers": {
    "profound-agency": {
      "type": "http",
      "url": "https://theprofound.agency/api/mcp/"
    }
  }
}

The 24 tools

Two of them change something. Neither of those two can spend money.

search_placements

Read only

Search the publisher network

Filter by price, Domain Authority, Domain Rating, category, region, turnaround, Google indexing, AI-crawler readiness, link type and availability. Returns a page of matches, highest Domain Authority first by default.

get_placement

Read only

Full detail for one publication

Price, and price with the 3.5% checkout fee. Authority scores, turnaround, region, disclosure policy, link type, whether it can be ordered now, the outlet's logo and an example article where one is published. Takes the id returned by search — the same slug as the publication's page URL.

list_categories

Read only

Every category, with counts

The valid values for the category filter, and how many publications carry each one.

list_capabilities

Read only

What we can deliver, in plain language

Geo-fencing, website retargeting, visit tracking, identity resolution and the rest — each described without jargon, with the products that provide it. Use it to turn what a client wants into what to ask for.

list_channels

Read only

Every advertising channel we run

Meta, Connected TV, geo-targeted mobile, search, audio, out-of-home and the rest, each in a sentence or two. The slugs are what submit_campaign_brief takes.

get_channel

Read only

One channel in full

Where the ads run, the creative formats, the targeting that can be layered on, and the caveats — the limits and prerequisites to know before sending a brief. Priced per campaign, so no price.

can_i_advertise

Read only

Whether a restricted category can run on a channel

Alcohol, cannabis and CBD, tobacco, casinos, firearms, supplements, political, housing, loans, crypto and the rest, per channel and with state-level rules: allowed, allowed with limits, case by case, or not allowed, and why. Guidance to confirm with the team, since platform policy changes.

compare_placements

Read only

Two to four publications side by side

Price, Domain Authority and Rating, turnaround, region, disclosure and indexing in one table, with which is cheapest, fastest and highest in authority. Figures only; which is better depends on the client.

quick_visibility_check

Read only

An instant check of five AI-visibility basics

For any website: AI crawlers allowed in robots.txt, an llms.txt, Organization and FAQ structured data, and a title and description. Free and instant, with no score; the full scored audit is request_audit.

get_catalog_changes

Read only

What the weekly syncs added, removed and repriced

Newest first, filterable by date, maximum price, one or more categories, minimum Domain Authority, additions only or price drops only — a way to watch for new outlets or cheaper placements without re-reading the catalogue. Also published as /catalog-changes.json.

ask

Read only

Ask the site a question in plain words

Answered from theprofound.agency with source URLs — prices, restrictions, fee, refunds, definitions, channel requirements, FAQs and articles. Quoted or read from live data, never generated. Also JSON at /api/ask/?q=; people use /ask/.

get_availability

Read only

Real open meeting slots

Thirty-minute meetings on weekdays from the agency's actual appointment calendar, in the agency's timezone. A slot is not a booking — it only becomes one when the human confirms it.

create_booking_link

Read only

A link to book the meeting

The booking page URL, returned with the human's name and email as separate fields. The human opens it, enters their details, picks a time and confirms; the meeting does not exist until they do. Details never go in the URL, so they stay out of logs and referrers.

create_text_link

Read only

A text message to the agency, ready to send

Returns the message and an sms: link to (908) 448-4001 that opens the human's own messaging app with it filled in. Nothing is sent until they tap send; show them the message first. For a quick question or a call back — for a scheduled call, use create_booking_link.

quote_placements

Read only

Price a set of placements

Exactly as the store's checkout would, including the 3.5% processing fee. Quoting reserves nothing and commits nobody. Also returns a shareUrl that opens the store with the quoted placements in the cart.

plan_placements

Read only

A quoted placement plan for a goal and budget

Goal, audience and budget in; a recommended set of publications out, already quoted with the total inside budget including the 3.5% fee, plus a shareUrl that opens the store with the plan in the cart. A plan recommends — it reserves nothing until ordered and paid.

create_order

Writes

Open an unpaid order and get a payment link

Creates a real pending order and returns a URL. It does not pay for anything. The order is inert until a human opens that link and pays, and it is deleted automatically if nobody does within 72 hours.

check_order_status

Read only

Payment and fulfilment state

Needs the order id and the billing email it was placed with, which is what stops anyone reading anyone else's order. Do not describe a placement as secured until this reports paid: true.

submit_article_draft

Writes

File a client's article draft on a paid order

The order id plus the billing email on the order prove ownership. Only paid orders accept drafts. The draft goes to the editorial team; a human reviews and approves it before anything is published.

get_client_order

Read only

See where a client's article is

Each publication on the order with its own stage, what we need next, the latest outline or draft, and a sample of the publication's writing. Needs the client's private order link, the "Open your order page" button in their order confirmation email.

submit_content

Writes

Send the client's content for their article

The same as the form on the client's order page, for one publication; each publication on an order needs its own. We then write an outline for the client to approve. Needs the client's private order link. Confirm the content with the client first.

review_content

Writes

Approve, or ask for changes to, an outline or draft

For one publication's outline or draft. Approving the draft sends it to our editors and cannot be undone, so show the client the text and get their go-ahead first. Needs the client's private order link.

submit_campaign_brief

Writes

Ask for a paid media quote

For advertising campaigns — display, video, Connected TV, social, search, audio, out-of-home — which are priced per campaign rather than per placement. It buys nothing: a human prices it and replies. The response scores the brief's completeness and lists the most valuable missing details.

request_audit

Writes

Ask for a free AI visibility audit

Whether assistants can reach, read and quote a site, scored out of 100 across crawler access, structured data, answer readiness, agent files, off-site authority and freshness — from public data only. Free, and it returns no score: a person runs the audit and replies to the contact email.

What an agent may and may not do

May

  • Search, compare and shortlist publications.
  • Price a set of placements exactly as checkout would.
  • Open an unpaid order and hand the link to a person.
  • Submit a campaign brief and wait for a human to reply.
  • Quote our catalogue data, with attribution where possible.

May not

  • Pay for anything. No payment method is reachable through any tool.
  • Tell a client a placement is secured before check_order_status reports paid: true.
  • State guaranteed outcomes. We do not publish guarantees about citations, rankings or traffic.
  • Invent a missing field. Say it is not listed.

If you would rather use REST

The catalogue is also readable over ordinary GET requests, described in an OpenAPI document at /openapi.json. Quoting, ordering and campaign briefs stay on MCP, because that is where the rules about what an agent may do are enforced.

curl "https://theprofound.agency/api/catalog/search/?q=finance&minDomainAuthority=80&limit=5"

Questions

Do I need an API key to use the MCP server?
No. Every tool is open — no key, no account, no approval step. An optional partner key attaches a verified agency name to orders, which is the only thing it does. Ordering cannot spend money, so there is nothing for a key to protect.
Can an AI agent buy a press placement on its own?
No. create_order opens an unpaid order and returns a payment link. No payment method is reachable through any tool, so the agent cannot complete a purchase even if instructed to. A human opens the link and pays. Until check_order_status reports paid: true, nothing is booked.
What happens to an order nobody pays for?
It is deleted automatically after 72 hours. An unpaid order reserves nothing and schedules nothing, so an abandoned one costs the client nothing and leaves no obligation.
What is the MCP endpoint URL?
https://theprofound.agency/api/mcp/ over Streamable HTTP, stateless. The trailing slash matters — the site redirects without it. Posting to https://theprofound.agency/mcp/ reaches the same server.
Is there a REST API instead of MCP?
Yes, for reading. The catalogue is also available over ordinary GET requests described at https://theprofound.agency/openapi.json. Quoting, ordering and campaign briefs are MCP only, because that is where the rules about what an agent may and may not do are enforced.
How current is the catalogue data?
It is resynced from the store at most hourly, and prices are confirmed at checkout. Treat a publication's page as the source of truth at the time of the question.
Can an AI agent book a meeting on its own?
No. get_availability shows real open slots and create_booking_link hands over a booking link, but the meeting does not exist until the human opens that link and confirms it. An agent must never present a meeting as booked on the strength of a link alone.