The Profound Agency
REMOTE · THEPROFOUND.AGENCY
Search, price and order press placements across 1,600+ publications. Free AI-visibility audits too.
Available components
Last scanned (6 hours ago)
Scores higher than 69% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Marketing and SEO
Recent critical change
Authorization (1 Nov 2026). See the changelog before you install this server.
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security57
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (submit_article_draft). See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability67
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 4710 tokens (~196/item across 24 items; 24 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage98
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 93% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 24 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 25 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 1 Nov 26 +1
- Authorization: unverified → fail ▼ critical
- HSTS header: unverified → fail ▼ security
- Injection markers: unverified → pass ▲ security
- Stability: unverified → pass ▲ security
- TLS certificate: unverified → pass ▲ security
- Transport: fail → pass ▲ security
- Endpoint reachability: unreachable → reachable ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- 31 Oct 26 0
- Endpoint reachability: reachable → unreachable ▼ security
- Authorization: fail → unverified ▼ security
- HSTS header: fail → unverified ▼ security
- Stability: 0.93 → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- TLS certificate: pass → unverified ▼ security
- Transport: pass → fail ▼ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- First check of Schema quality: unverified functional
- 30 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 26 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.
- 23 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.
- 21 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.
- 19 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://theprofound.agency/api/mcp/
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=theprofound.agency | CN=YE1,O=Let's Encrypt,C=US | 2 Nov 2026 | 31 Jan 2027 | ECDSA 256 | ECDSA-SHA384 | 5ab77ba8fe9eac4b09b2748cca3baca466d |
| SANs: theprofound.agency, www.theprofound.agency | ||||||
| CN=YE1,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 5ddd70dd31f801c85c186a7a04b80afe |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of theprofound.agency. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| agency. | present | 52379 | 8 | Verified |
| theprofound.agency. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| content-security-policy | upgrade-insecure-requests |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://theprofound.agency/api/mcp/ | Verified | 200 | |
| http (plaintext) | http://theprofound.agency/api/mcp/ | HTTPS enforced | 301 | https://theprofound.agency/api/mcp/ |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
ask Ask the site a question ~103
A question in plain words, answered from theprofound.agency with source URLs: publication prices, whether a category can advertise on a channel, the fee, refund terms, definitions, channel requirements, and anything the FAQs, glossary, channel pages or articles cover. Answers are quoted or read from live data, never generated; answer is null when the site does not cover it.
| Name | Type | Req | Description |
|---|---|---|---|
| question | string | yes | The question, e.g. "How much does USA Today cost?" |
No output schema declared.
No examples provided.
can_i_advertise Check advertising restrictions ~172
Whether a restricted category — alcohol, cannabis/CBD, tobacco, casinos, firearms, supplements, political, housing, loans, crypto and the rest — can run on a channel, and with what limits (age gates, restricted targeting, pre-approval). Give a channel slug from list_channels to check one, or leave it out to see every channel; add a two-letter state for state-level rules. Policy changes without notice, so treat the answer as guidance to confirm with the team.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | yes | What is being advertised, e.g. "CBD", "casino", "real estate". |
| channel | string | – | A channel slug from list_channels, e.g. "meta". |
| state | string | – | US state as a two-letter code, e.g. "NJ". |
No output schema declared.
No examples provided.
check_order_status Check order status ~99
Payment and fulfilment state for an order you created. Requires the billing email the order was placed with, which is what stops anyone reading anyone else's order. Returns paid: false plus the payment link while it is still awaiting payment. An order that was never paid and has been swept will report as not found.
| Name | Type | Req | Description |
|---|---|---|---|
| string | yes | The billing email on that order. | |
| orderId | integer | yes | The orderId returned by create_order. |
No output schema declared.
No examples provided.
compare_placements Compare placements ~98
Two to four publications side by side: price, Domain Authority and Rating, monthly traffic, link type, turnaround, region, disclosure, indexing, categories, genres, accepted niches and their prices, and labels, with which is cheapest, fastest, highest in authority and most visited. Use ids from search_placements. Figures only — which is better depends on what the client wants.
| Name | Type | Req | Description |
|---|---|---|---|
| ids | array | yes | Placement ids from search_placements. |
No output schema declared.
No examples provided.
create_booking_link Create a booking link ~128
The agency's booking URL for a 30-minute meeting, returned with the human's name and email as separate fields. Give the human the URL and ask them to enter the name and email on the booking page — the meeting does not exist until they confirm it there. Never present a meeting as booked on the strength of this link alone, and never put the name or email into the URL yourself.
| Name | Type | Req | Description |
|---|---|---|---|
| string | yes | The human's email, to show them alongside the booking link. | |
| name | string | yes | The human's full name, to show them alongside the booking link. |
No output schema declared.
No examples provided.
create_order Create order ~203
Open a pending order for a client and return a payment link. IMPORTANT: this does not pay for anything. The order stays unpaid until a human opens the returned payUrl and pays on the store's checkout. Give the link to the client or to someone at your agency — you cannot complete payment yourself, and you must not tell the client the placement is bought until check_order_status reports paid: true. Confirm the placements and the total with a human before calling this. No account or API key is required, but an unpaid order is deleted automatically after 72 hours, so send the link promptly.
| Name | Type | Req | Description |
|---|---|---|---|
| clientReference | string | – | Your own reference for this client or campaign. |
| contact | object | yes | – |
| items | array | yes | – |
| notes | string | – | Anything the editorial team should know. |
| placedBy | string | – | Who you are — your agency or product name. Recorded as an unverified claim, purely so we can tell orders apart. |
No output schema declared.
No examples provided.
create_text_link Prepare a text message to the agency ~162
A text message to the agency's number, (908) 448-4001, prepared for the human to send from their own phone: returns the message and an sms: link that opens their messaging app with it filled in. Nothing is sent until the human taps send, so show them the message first and never send it for them without their go-ahead. For a scheduled call, create_booking_link is better; use this for a quick question or to ask for a call back.
| Name | Type | Req | Description |
|---|---|---|---|
| company | string | – | Their business, if they want it in the text. |
| message | string | yes | What they want to say or ask, in their words. |
| name | string | yes | The human's name, as it should appear in the text. |
No output schema declared.
No examples provided.
get_availability Check meeting availability ~104
Real open slots from the agency's appointment calendar: 30-minute meetings on weekdays, booked in the agency's timezone. Returns each slot's start, end and a readable label. A slot is not a booking — hand the human a link from create_booking_link so they confirm it.
| Name | Type | Req | Description |
|---|---|---|---|
| daysAhead | integer | – | How many days out to look. Default 7, max 30. |
| durationMinutes | integer | – | Meeting length in minutes. Default 30. |
No output schema declared.
No examples provided.
get_catalog_changes Catalogue changes ~200
What each weekly catalogue sync changed: publications added and removed, and price changes, newest first. Filter by a date (only newer syncs), a maximum price, one or more categories, a minimum Domain Authority, additions only, or price drops only — so an agent can watch for new outlets or cheaper placements without re-reading the whole catalogue.
| Name | Type | Req | Description |
|---|---|---|---|
| categories | array | – | Only publications in any of these categories. |
| category | string | – | Only publications in a category, e.g. "Crypto". |
| maxPrice | number | – | Only publications at or under this price, in USD. |
| minDomainAuthority | number | – | Only publications at or above this Moz Domain Authority. |
| newOnly | boolean | – | Only additions — the weekly "what's new" watch. |
| priceDropsOnly | boolean | – | Only price reductions. |
| since | string | – | ISO date; only syncs after it. Use the newest date you have seen. |
No output schema declared.
No examples provided.
get_channel Get advertising channel detail ~102
The full detail for one paid media product: what it is, where the ads run, the creative formats, the targeting that can be layered on, and caveats — the limits and prerequisites a buyer should know before submitting a brief. Also lists the capabilities it delivers. Priced per campaign, so no price is returned; submit_campaign_brief gets a quote.
| Name | Type | Req | Description |
|---|---|---|---|
| slug | string | yes | Channel slug from list_channels, e.g. "geo-targeted-mobile". |
No output schema declared.
No examples provided.
get_client_order See where a client's article is ~140
For a paid order: each publication on it, with its own stage, what we need next, the content the client sent, the latest outline or draft we wrote, and a sample of the publication's writing. Each publication is worked through separately. Needs the client's private order link, which only they have; a wrong or revoked link reads like a missing order.
| Name | Type | Req | Description |
|---|---|---|---|
| orderLink | string | yes | The client's private order link (https://theprofound.agency/order/<id>/#t=…), or just the token after #t=. It is the "Open your order page" button in the order confirmation email sent when the order… |
No output schema declared.
No examples provided.
get_placement Get placement detail ~201
Full detail for one publication by its id (the slug from search_placements), including price, price with the 3.5% checkout processing fee, authority scores, estimated monthly traffic (monthlyTraffic), turnaround, disclosure policy, link type (linkAttributes: "dofollow" or "nofollow" as recorded, "unspecified" where the catalog has no record; dofollowVariantId points to a separate dofollow package for the same outlet), genres (what the outlet covers), niches (restricted subjects it accepts) with nichePricing where an article in one is priced differently, labels (e.g. Staff, Press Release, 6 Month Lifespan), whether it can be ordered now (available), the outlet's logo, and an example article where one is published. A field the catalog has no value for is left out: unknown, not "no".
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Placement id, e.g. "hood-critic". |
No output schema declared.
No examples provided.
list_capabilities List capabilities ~58
The outcomes we can deliver — geo-fencing, website retargeting, visit tracking, identity resolution and so on — each in plain language with the products that provide it. Use this to translate what a client wants into what to ask for.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_categories List categories ~45
Every category, genre and restricted niche in the network, each with how many publications carry it. Use them to pick valid values for search_placements' categories, genres and niche filters.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_channels List advertising channels ~68
Every paid media product we run — Meta, Connected TV, geo-targeted mobile, search, audio, out-of-home and the rest — each with a one or two sentence description. The slugs are what submit_campaign_brief takes as channels. Use get_channel for the full detail of one.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
plan_placements Plan placements ~255
Recommend a set of publications for a goal, audience and budget — already quoted, total inside budget including the 3.5% processing fee. Use this when a buyer says what they want to achieve and what they can spend, rather than naming publications. A backlink or SEO goal leaves out nofollow links. The shareUrl opens the store with the planned placements in the cart (none when a niche price applies); the plan recommends, it reserves nothing.
| Name | Type | Req | Description |
|---|---|---|---|
| audience | array | – | Catalog categories or genres, e.g. ["Crypto", "Health"]. |
| budget | number | yes | Maximum spend in USD, including the processing fee. |
| count | integer | – | How many placements to aim for. Default 5. |
| goal | string | – | What the coverage is for, e.g. "seo backlinks", "launch buzz". |
| minDomainAuthority | number | – | Minimum Moz Domain Authority. |
| minMonthlyTraffic | number | – | Minimum estimated monthly visits to the outlet's site. |
| niche | string | – | The restricted subject the article is on, if any: CBD, Crypto, Health, Gambling or Erotic. Priced at the outlet's price for that niche, and refused where the outlet doesn't accept it. |
No output schema declared.
No examples provided.
quick_visibility_check Quick AI visibility check ~104
Five basics of whether AI systems can read a website, checked instantly from its public pages: AI crawlers allowed in robots.txt, an llms.txt, Organization and FAQ structured data, and a title and description. Free, no score, nothing stored. For the full audit — scored out of 100 and reviewed by a person — use request_audit.
| Name | Type | Req | Description |
|---|---|---|---|
| website | string | yes | The site to check. A domain is enough, e.g. "example.com". |
No output schema declared.
No examples provided.
quote_placements Quote placements ~110
Price a set of placements exactly as the store's checkout would, including the 3.5% processing fee. Use this to give a client a total before creating an order. Quoting does not reserve anything. Placements that are not available are refused. An item with a niche is priced at the outlet's price for that niche; where that differs from the standard price there is no shareUrl, since the store's cart charges standard prices.
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | The placements to price. |
No output schema declared.
No examples provided.
request_audit Request a free AI visibility audit ~277
Request a free audit of whether AI systems — ChatGPT, Perplexity, Google's AI Overviews and crawling agents — can reach, read and quote a website. Scored out of 100 across crawler access, structured data, answer readiness, agent files, off-site authority and freshness, from public data only: no logins, no analytics access and nothing installed. Free, and nothing is purchased or committed. Use this when a client wants to know why assistants do not mention them; use submit_campaign_brief when they already want to buy media. A person reviews every audit and replies to the contact email — this tool does not return a score.
| Name | Type | Req | Description |
|---|---|---|---|
| concerns | array | – | What the client is worried about, in their own words — for example that a competitor gets named instead, or that their site is invisible to assistants. |
| contact | object | yes | – |
| notes | string | – | Anything else worth knowing before we look. |
| referredBy | string | – | Who you are — your agent, agency or product. Recorded as an unverified claim. |
| track | string | – | What is being audited: a brand or organisation, a local business with a physical catchment, or an individual and their personal brand. Shapes what we look at. |
| website | string | yes | The site to audit. A domain is enough. |
No output schema declared.
No examples provided.
review_content Approve, or ask for changes to, an outline or draft ~220
The client's decision on one publication's latest outline or draft from get_client_order. Approving an outline starts the draft; approving the draft sends it to our editors for a final read, and cannot be undone. Show the client the full text and get their explicit go-ahead first. Changes can be asked for twice per piece; after that our team works with the client directly.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | – |
| feedback | string | – | With action "changes": what to change, in the client's words. |
| orderLink | string | yes | The client's private order link (https://theprofound.agency/order/<id>/#t=…), or just the token after #t=. It is the "Open your order page" button in the order confirmation email sent when the order… |
| piece | string | yes | – |
| publication | string|number | – | Which publication on the order: its name or publicationId from get_client_order. Needed when the order has more than one; each publication has its own content, outline and draft. |
No output schema declared.
No examples provided.
search_placements Search placements ~527
Search the publisher network for editorial placements. Filter by price, Domain Authority, Domain Rating, monthly traffic, category, genre, region, turnaround, link type (dofollow or nofollow), whether the outlet is Google-indexed or LLM-ready, a restricted niche it accepts, and availability. Returns a page of matches, highest Domain Authority first by default. Each result carries the same fields as get_placement; a search with niche adds nichePrice, the price of an article in that niche.
| Name | Type | Req | Description |
|---|---|---|---|
| available | boolean | – | true for placements that can be ordered now, false for unavailable ones. |
| categories | array | – | Match any of these categories, e.g. ["Crypto", "Health"]. |
| genres | array | – | Match any of these genres, what the outlet covers, e.g. ["Tech", "Finance"]. A word matches either side of a compound genre: "Crypto" matches "Crypto & Web3". list_categories lists them. |
| googleIndexed | boolean | – | Only outlets known to be indexed by Google. |
| limit | integer | – | Results per page, 1-100. Default 20. |
| linkFollow | string | – | Only placements with this linkAttributes value: "dofollow" or "nofollow" as the catalog records the link, "unspecified" where it has no record. Nothing records sponsored or ugc, so those match nothin… |
| llmReady | boolean | – | Only outlets flagged as readable by AI crawlers. |
| maxPrice | number | – | Maximum price in USD. |
| maxTurnaroundDays | number | – | Longest acceptable turnaround, in days. |
| minDomainAuthority | number | – | Minimum Moz Domain Authority (0-100). |
| minDomainRating | number | – | Minimum Ahrefs Domain Rating (0-100). |
| minMonthlyTraffic | number | – | Minimum estimated monthly visits to the outlet's site. Outlets with no traffic figure are left out. |
| minPrice | number | – | Minimum price in USD. |
| niche | string | – | Only outlets that accept articles on this restricted subject: CBD, Crypto, Health, Gambling or Erotic. Results then carry nichePrice, and minPrice, maxPrice and the price sorts use it. |
| offset | integer | – | Result offset, for paging. |
| query | string | – | Free text matched against publication name, domain, categories and genres. |
| region | string | – | Substring match on the outlet's region. |
| sort | string | – | Default da_desc. traffic_desc is most monthly visits first. Missing values sort last. |
No output schema declared.
No examples provided.
submit_article_draft Submit an article draft ~199
File the client's article draft against a paid order. The order id plus the billing email on the order prove ownership — a wrong pairing reads exactly like a missing order. The order must be paid: an unpaid order has bought nothing yet. The draft goes to the editorial team; a human reviews and approves it before anything is published, so never tell the client it is published or scheduled. Confirm the draft text with a human before filing.
| Name | Type | Req | Description |
|---|---|---|---|
| authorName | string | – | Byline, if the client wants one. |
| draft | string | yes | The article text the client wrote. |
| string | yes | The billing email on that order. | |
| orderId | integer | yes | The orderId returned by create_order. |
| referredBy | string | – | Who you are — your agent, agency or product. Recorded as an unverified claim so we can see which agents send work. |
| title | string | – | Working title for the piece. |
No output schema declared.
No examples provided.
submit_campaign_brief Submit a campaign brief ~329
Submit a paid media brief for a client and have the team come back with a quote — impressions, placements and a recommendation. Use this for advertising campaigns (display, video, Connected TV, social, search, audio, out-of-home), which are priced per campaign; use create_order instead for buying a press placement from the publisher catalogue, which has a fixed price. Nothing is purchased or committed here: it opens a conversation, and a human prices it and replies. Pick capabilities when you know the outcome the client wants, products when you know the channels, or both. The response scores the brief's completeness (0-100) and lists the most valuable missing details — the brief is filed regardless, so ask the human for the gaps to get priced faster. Confirm the details with a human before sending.
| Name | Type | Req | Description |
|---|---|---|---|
| budget | string | – | Monthly budget, or a range. |
| capabilities | array | – | Outcomes the client wants, by slug. Use list_capabilities to see them. |
| channels | array | – | Specific product slugs, as returned by search_placements or list_channels. |
| contact | object | yes | – |
| geography | string | – | Where it should run — cities, states, ZIPs or a radius. |
| goal | string | – | What the campaign should achieve. |
| notes | string | – | Anything else the team should know. |
| referredBy | string | – | Who you are — your agent, agency or product. Recorded on the brief as an unverified claim so we can see which agents send work. |
| timing | string | – | When they want to start. |
No output schema declared.
No examples provided.
submit_content Send the client's content for their article ~351
What one publication's article should be built from, the same as the form on the client's order page. Each publication on an order needs its own. Needs at least who they are and what the article should say, or a draft of their own. Only while that publication is waiting for content; sending again replaces the earlier version. We then write an outline for the client to approve. Confirm the content with the client before sending.
| Name | Type | Req | Description |
|---|---|---|---|
| about | string | – | Who the client is, in a few sentences. |
| angle | string | – | Their news, launch, milestone or point of view. |
| draft | string | – | A draft of their own, if they have one. Client-written articles are more likely to be turned down by editors, so expect edits. |
| facts | string | – | Proof points: numbers, results, credentials, awards, a quote from them in their exact words. |
| links | array | – | Up to three links; most publications allow two or three. |
| name | string | – | How the article should name them: a person, a business or a pen name. |
| notes | string | – | Anything else. |
| orderLink | string | yes | The client's private order link (https://theprofound.agency/order/<id>/#t=…), or just the token after #t=. It is the "Open your order page" button in the order confirmation email sent when the order… |
| photo | string | – | A link to a photo. |
| publication | string|number | – | Which publication on the order: its name or publicationId from get_client_order. Needed when the order has more than one; each publication has its own content, outline and draft. |
No output schema declared.
No examples provided.
How do I install the The Profound Agency MCP server?
The Profound Agency is a hosted endpoint at https://theprofound.agency/api/mcp/, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · theprofound.agency
claude mcp add --transport http jfromtheroc-the-profound-agency 'https://theprofound.agency/api/mcp/'
What is the The Profound Agency MCP server?
The Profound Agency is an MCP server listed in the public MCP registry as io.github.Jfromtheroc/the-profound-agency. Search, price and order press placements across 1,600+ publications. Free AI-visibility audits too. This page covers its hosted endpoint (https://theprofound.agency/api/mcp/).
Is the The Profound Agency MCP server safe to use?
The Profound Agency scores 77 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the The Profound Agency MCP server expose?
The Profound Agency exposes 24 tools: search_placements, get_placement, list_categories, quote_placements, plan_placements, and 19 more. Their descriptions and schemas cost roughly 4,255 tokens of context every time the server is loaded.
Does the The Profound Agency MCP server require authentication?
No. We connected to The Profound Agency without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the The Profound Agency MCP server still maintained?
The Profound Agency is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.