Wraps the Pulse social metrics API so Claude can fetch views, likes, comments, and follower counts from YouTube, TikTok, Instagram, X, Bluesky, and Mastodon without any API key. You get five tools: single and batch post metrics, historical growth curves, and profile stats. Handles short links, returns clean JSON, and fails gracefully when posts are deleted or login-walled instead of returning zeros. Useful when you need to compare performance across platforms, track a post's trajectory over time, or pull engagement numbers into a spreadsheet or report without opening browser tabs.
MCP server for Pulse — a free, agent-first social-post metrics API. Give any MCP client (Claude Desktop, Cursor, …) the numbers behind any public post: hand it a URL, get back views, likes, comments, and the publish date as clean JSON. No signup, no API key.
{ "mcpServers": { "pulse": { "command": "npx", "args": ["-y", "pulse-mcp"] } } }
That's it — drop it in your MCP config and your agent has five new tools.
| Tool | Input | Output |
|---|---|---|
metrics | one post URL (short links like vm.tiktok.com/t.co OK) | { platform, views, likes, comments, shares, quotes, bookmarks, publishedAt, title, author, thumbnail } |
metrics_batch | many URLs (mixed post + profile URLs welcome) | the same, one per URL (partial failures don't fail the batch) |
history | one post or profile URL (+ optional since for the delta) | the recorded growth curve — { count, points } (posts: { t, views, likes, comments }, profiles: { t, followers, posts }), a snapshot per fresh fetch |
profile | one profile URL | account-level metrics — { handle, name, followers, following, posts, verified, avatar } (YouTube, TikTok, Instagram, X, Bluesky, Mastodon) |
profile_batch | many profile URLs (max 50) | same as profile, one per URL — order preserved; partial failures don't fail the batch. Compare follower counts across a list of creators. |
Example — ask your agent "how did this video do?" with a link, and it gets:
{
"platform": "youtube",
"views": 1781088936,
"likes": 19147197,
"comments": null,
"publishedAt": "2009-10-25T06:57:33.000Z",
"title": "Rick Astley - Never Gonna Give You Up (Official Video)"
}
| Platform | Returns | Notes |
|---|---|---|
| YouTube | views, likes | |
| X / Twitter | views, likes, comments, shares (retweets), quotes, bookmarks | views via X's own guest API (tweets since ~Dec 2022) |
| TikTok | views, likes, comments, shares | |
| Bluesky | likes, comments, shares (reposts), quotes | public AppView API; Bluesky has no view counts |
| Mastodon | likes, boosts, replies | per-instance public REST API (major instances) |
| views, likes, comments | public posts via the guest API | |
| Threads | post metrics need a login | post metrics → login_required; profile metrics (followers/verified) work via /profile |
| — (posts need login) | post metrics → login_required; profiles also login-walled |
It reads each platform's own public pages from a residential IP, so it sees what a browser
sees — and it's honest about the edges: a deleted/private post comes back content_unavailable,
a login-walled one login_required, never a silent row of zeros.
PULSE_API_URL — override the backend (defaults to https://pulse.walls.sh).Built in public as Wall #002 of walls.sh. Docs: https://pulse.walls.sh/docs ·
machine-readable: /llms.txt · OpenAPI.
MIT.
io.github.ericm1018/skillfm-llm-cost-optimizer-openai-anthropic-usage
io.github.mikerawsonnz/llm-orchestration-agent
io.github.mikerawsonnz/authenticated-llm-agent
labforgedev/copilot-memory-mcp
csoai-org/agent-prompt-injection-firewall-mcp
io.github.mikerawsonnz/authenticated-multi-llm-agent