Google Search Console integration for Model Context Protocol (MCP)
Build a media list of journalists who recently wrote about given topics or beats. Give topics (1 to 20; quotes for an exact phrase) and optionally since_days, country, outlets_include, outlets_exclude, min_articles, and max_journalists. The actor reads recent Google News articles through the Mamba Labs News and Media Mention Monitor, reads each article page's byline, and returns one row per journa
A call is made on an account: it counts against an allowance and the publisher sees it, which is why this one asks who you are first.
What it does
Build a press list from bylines. Find journalists who recently wrote about your topics, with name, outlet, author page, article count, and the latest article as proof. Runs on your own Apify token. No key resale.
Quickstart
# 1 — sign in once: npx mcprush@latest login
# it asks for a key from mcprush.com/dashboard#access
# 2 — install
npx mcprush@latest add mambalabs/journalist-and-media-list-builder-mcp
# 3 — ask your agent for something these tools do
# find_journalists
Windows PowerShell says 'running scripts is disabled on this system'? Run Set-ExecutionPolicy -Scope CurrentUser RemoteSigned once, or type npx.cmd instead of npx (codex.cmd, gemini.cmd, grok.cmd likewise). PowerShell 7 needs neither.
Journalist and Media List Builder costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine — this server runs on infrastructure we host behind our gateway, and what you install is the connection to it.
Claude Code has its own MCP command, and the key rides on it as a header — the gateway refuses a call that carries none. Claude Code reads MCPRUSH_KEY each time it connects, so the key stays out of its config: export your key from Access in your shell profile (macOS, Linux), or run setx MCPRUSH_KEY <your key> and open a new terminal (Windows). Or let npx mcprush@latest add mambalabs/journalist-and-media-list-builder-mcp write the entry with the key for you; --scope user makes it available in every project. The first connection after a quiet spell starts the server, which takes up to a minute: if your client says it failed to connect, reconnect after that (/mcp in Claude Code).
claude mcp add --transport http --scope user mcp-journalist-media-list-builder https://mcprush.com/gw/mcp-journalist-media-list-builder/mcp --header 'Authorization: Bearer ${MCPRUSH_KEY}'Reconnect, or start a new session, and the tools appear in the model’s tool list.
It reaches a system of yours, so it needs your own credential rather than the publisher’s: APIFY_TOKEN — Your Apify API token. Runs are billed to your own Apify account.. You set it after installing; the value is sealed here and handed to the server when it starts.
One config entry pointing at the gateway. The server itself runs on infrastructure we host, so nothing from this listing executes on your machine.
1 tool, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Build a media list of journalists who recently wrote about given topics or beats. Give topics (1 to 20; quotes for an exact phrase) and optionally since_days, country, outlets_include, outlets_exclude, min_articles, and max_journalists. The actor reads recent Google News articles through the Mamba Labs News and Media Mention Monitor, reads each article page's byline, and returns one row per journa
| Parameter | Type | Required | Notes |
|---|---|---|---|
| topics | array | yes | 1 to 20 topics or beats, for example "sales automation" or fintech funding. |
| since_days | string | no | Days of articles to read, 1 to 90. Default 30. |
| country | string | no | Google News country edition. Default US. |
| language | string | no | Language code of the edition, for example en or de. Default en. |
| outlets_include | array | no | Only these outlet domains, for example techcrunch.com. |
| outlets_exclude | array | no | Outlet domains never to return. |
| include_press_releases | string | no | false (default) leaves out press release wires. |
| min_articles | string | no | Least matching articles per journalist, 1 to 20. Default 1. |
| max_articles_per_topic | string | no | Newest articles read per topic, 1 to 100. Default 30. |
| max_journalists | string | no | Most journalist rows, 1 to 500. Default 50. |
| max_charge_usd | string | no | Optional cap on the whole run in USD, the news run included. |
- Every tool, no call limit, and mcprush charges nothing
- A buyer key from your dashboard — the gateway refuses a call without one
- Answers through our gateway, so every call is in your log
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Journalist and Media List Builder or to call it, and its free tier carries no monthly call limit.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
| Term | Level | What it prices | Points |
|---|---|---|---|
| capability-exposure | moderate | capability blast radius (moderate) — client exposure if the model is manipulated | −3 |
| verification-discount | repo | publisher verification (public source) — no provenance, but the source is public and inspectable | −1 |
| coverage-honesty | source | inspection depth (source) — how much of the target the scan could see | −0 |
What the scan could actually read
A grade is only as meaningful as its coverage, so the scanner publishes its own depth before it publishes its result.
Tools were statically extracted from the published source (1 recovered), not enumerated from a running server. Tool-poisoning, Unicode-smuggling, capability and toxic-flow analysis ran on this inferred surface, but a mis-parsed registration could be missed or mis-attributed, so tool-derived findings are capped below “confirmed”. To grade the real runtime surface, scan the running server: --command "npx -y <package>".
Capability — what it could do if the model were manipulated
Tags derived from each tool’s schema and the implementation, not from what the tool calls itself. moderate is the level these add up to.
| Tool | Capability tags | Why the tag was assigned |
|---|---|---|
| find_journalists | untrusted-inputexternal-sink | untrusted-input: declares openWorldHint: true (interacts with entities outside the server); external-sink: handler sends an HTTP POST (fetch(https://api.apify.com/v2/acts/${actorPath}/runs?timeout=${ACTOR_RUN_TIMEOUT_SECS}) at build/index.js:80 |
Toxic-flow graph
The lethal trifecta, checked as a graph rather than as a checklist: untrusted input, a sensitive source and an external sink have to meet before there is a path worth worrying about.
Supply chain and provenance
This is the first scan of this surface here, so there is nothing yet to compare it against.
Every result on this tab comes from one deterministic pass over the published package — offline, rule by rule, and auditable line by line above. Same methodology version, same bytes, same score.
Release history
The gateway serves every install the publisher’s current release, so a release cannot be pinned or rolled back to here yet. The history below is for reading; the current release on file is 0.1.0.
- The version this listing went live with, after review.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Journalist and Media List Builder can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.