Mcp Publication Cadence Tracker

com.mambabuiltPublished by mambabuilt.comv1.3.1Updated Nov 7, 2026

How often a company publishes long-form work, and whether that rate is rising or falling.

VerifiedSTDIODesktop onlyWeb Search & ScrapingData & Analytics

Overview

AI-generated overview

Measures how often a company publishes long-form content and whether that rate is rising or falling, using an Apify actor billed to your account.

What you can do
  • Track publication cadence for one domain or a batch of domains
  • Get post counts for the last 30 days, 90 days and 12 months, plus a monthly average
  • See a trend label (accelerating, steady, declining, dormant, unknown) with percent change, comparing the last 90 days against the prior 275 days
  • Read supporting details such as most recent post date, days since last post, publication URL, formats detected, author count and quotable evidence
  • Tune the crawl with page budgets, time limits, concurrency, cache skipping and an optional per-call spending cap
When to use it
Useful when judging a company's content operation from the outside: sizing editorial output, spotting a publisher speeding up or slowing down, or screening many domains in a batch. It measures output volume, not whether a blog exists, and deliberately rejects release feeds.
Requirements
Runs locally via npx (Node.js) over stdio. Requires an Apify account and an APIFY_TOKEN environment variable. Network access is needed to reach the Apify actor and the target sites. Desktop only; no web-hosted version.
Before you install
Every run consumes Apify credits billed to your own account: a start charge plus a per-domain charge, and domains with no publication section or unreliable dates are still charged. Use max_charge_usd to cap spending. The token is a secret. Counts can be nulled, estimated or partial; check date_source_reliable, counts_are_estimate and partial_result before quoting numbers.

Installation

In SourceWeft

  1. Open Mcp Publication Cadence Tracker in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Publication Cadence Tracker MCP Server

[npm] [MCP] [License: MIT]

[Publication Cadence Tracker MCP server]

MCP server for the Mamba Labs Publishing Frequency Tracker actor on Apify.

Give it a company domain. It tells your agent how much long-form work that company publishes per month, and whether that rate is rising or falling.

Tool

track_publication_cadence

Returns a flat row per domain: posts_last_30d, posts_last_90d, posts_last_12m, avg_posts_per_month, cadence_trend (accelerating, steady, declining, dormant, unknown), trend_pct_change, most_recent_post_date, days_since_last_post, publication_url, formats_detected[], distinct_authors_count, discovery_method, confidence, and an evidence[] array of quotable strings.

Why the trend and not the count

Four pieces a month is unremarkable. Going from four to twelve in six months is a content operation outgrowing its staff. The comparison is stated rather than implied: the last 90 days against the prior 275 days, both normalized to posts per month, with accelerating and declining set at 25 percent either way.

This is editorial output volume, not changelog monitoring. A release feed is detected and rejected rather than counted as published work.

The number it refuses to give you

Publication dates come from the post pages, never from sitemap lastmod. Across 100 measured URL pairs, lastmod tracked the page's own dateModified and ran later than datePublished by a median of 151 to 1653 days on four of six sites. A cadence built on it would report a company that refreshed 200 old posts as a company that published 200 posts.

A page field can fail the same way, so it is checked against its own distribution and against the site's feed. When it fails, date_source_reliable comes back false and every count is nulled. Check that field before quoting a number.

Measured on nine live domains: a rate recovered on 5 of 6 publishers, 3 of 3 controls correctly returning nothing. The one miss is the guard refusing a site whose date field tracks edits.

track_publication_cadence

InputTypeNotes
domainstringOne company domain.
domainsstring[]Batch. Takes precedence over domain.
max_pages_to_dateintegerPost pages fetched per domain, default 400. Above this the counts are estimated from an even sample.
domain_time_budget_msintegerHard per-domain wall-clock ceiling, default 75000.
batchSizeintegerConcurrent domains, default 2.
skipCachebooleanIgnore the 3 day result cache.
page_concurrencyinteger1 to 16, default 8. Pages fetched at once within one domain.
max_sitemap_fetchesinteger4 to 40, default 18. Cap on sitemap files fetched per domain.
request_timeout_msinteger3000 to 20000, default 9000. Per HTTP request timeout.
max_charge_usdnumberOptional spending cap for this call, in USD. The actor stops before any charge that would take the run past this amount and keeps every row already charged.

What it actually measures

Not whether a company has a blog. How much it published, when, and whether the rate moved.

Finding the blog is most of the work, and it is where a naive version fails. The blog often lives on a different host from the apex and the apex sitemap never mentions it (blog.hubspot.com). A homepage sometimes advertises only a changelog feed while linking to the real blog repeatedly (about.gitlab.com). Paths are often locale prefixed, so /en-uk/ and /bg-bg/ fragment the archive into forty pieces. All three are handled, and publication_url reports a locale-prefixed section as https://example.com/*/knowledge/.

Three fields to read before you trust a number. date_source_reliable false means the site's date field tracks edits rather than publication and every count has been nulled. counts_are_estimate true means the archive was larger than the page budget and the counts come from a scaled even sample, so two runs can differ by a few posts. partial_result true means the wall-clock budget stopped the crawl and the numbers are lower bounds.

Pricing

You pay per event on Apify, billed to your own Apify account. Prices from the live pricing record, read 2026-10-16:

EventPrice per event (USD)Fires when
actor-start$0.00005Charged once when the run starts.
domain-analyzed$0.004 on the Free plan, down to $0.0034 on higher Apify plansCharged once per domain analyzed. Domains with no publication section, and domains whose date field turns out to track edits rather than publication, still count as analyzed and are charged.

The actor's Apify page carries the current prices. Running this server consumes Apify credits.

Setup

json
{  "mcpServers": {    "mamba-publication-cadence-tracker": {      "command": "npx",      "args": ["-y", "@mambalabsdev/mcp-publication-cadence-tracker"],      "env": { "APIFY_TOKEN": "your-apify-token" }    }  }}

Get a token at console.apify.com/account/integrations. Read-only; consumes Apify credits per domain analyzed.

Also available

This tool is also exposed by the GTM Suite umbrella server, alongside the rest of the Mamba Labs GTM actors, if you would rather run one server than many.

Built by Mamba Labs.

Source: README.md at commit 2837769

Tools

1

track_publication_cadence

Track Publication Cadence

Given a company domain, measure how much long-form work that company publishes and whether the rate is rising or falling. Returns post counts for the last 30 days, 90 days and 12 months, a monthly average, and a cadence_trend of accelerating, steady, declining, dormant or unknown, plus the percent change behind it. The trend compares the last 90 days against the prior 275 days, both normalized to posts per month. Also returns the blog URL, the format mix (blog posts, guides, reports, case studies, whitepapers, podcasts, videos, press releases, research), the number of distinct bylines, and how the post list was discovered. This measures EDITORIAL output volume, not product changelogs: a release feed is detected and rejected rather than counted. Publication dates are read from the post pages themselves, because sitemap lastmod was measured to be a modification date that runs later than publication by a median of 151 to 1653 days. When a site's date field turns out to track edits rather than publication, date_source_reliable comes back false and every count is nulled rather than reported wrong, so check that field before quoting a number. Counts are a census when the archive fits the page budget and a scaled even sample otherwise, flagged by counts_are_estimate. Public sitemaps, feeds and pages only. Returns flat Clay-ready JSON. Reads public data and writes nothing; requires an APIFY_TOKEN and consumes Apify credits per domain analyzed.

ParametersdomaindomainsbatchSizeskipCachemax_charge_usdpage_concurrencymax_pages_to_daterequest_timeout_msmax_sitemap_fetchesdomain_time_budget_ms

Version history

5
  1. v1.3.1LatestNov 5, 2026
  2. v1.3.0Oct 16, 2026
  3. v1.2.1Oct 6, 2026
  4. v1.2.0Oct 6, 2026
  5. v1.1.1Sep 16, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts