Skip to content

docs: README β€” list all 47 tools + honest about aggregation limits (v1.0.3)#3

Merged
OussemaFr merged 1 commit into
mainfrom
fix/readme-v1.0.3-full-tool-list-and-honest-limitations
Jun 29, 2026
Merged

docs: README β€” list all 47 tools + honest about aggregation limits (v1.0.3)#3
OussemaFr merged 1 commit into
mainfrom
fix/readme-v1.0.3-full-tool-list-and-honest-limitations

Conversation

@OussemaFr

Copy link
Copy Markdown
Member

Why

Operator tested v1.0.2 on Claude Desktop (it works). While testing, they hit the "Compare engagement rates between Nike, Adidas, and Puma over the last month" example from this README β€” and noticed the API can only deliver that via multi-call orchestration. Two real gaps in the README:

  1. Stale tool list β€” README listed 12 Facebook tools and said "More platforms coming soon: Instagram, TikTok, YouTube, Twitter". But Instagram is fully implemented (16 tools), and the Facebook surface also includes Search (5), Ads Library (5), Marketplace (7), and Media (1). 35 tools were undocumented in the README despite being implemented.
  2. Aggregation overpromise β€” "Compare engagement rates over the last month" sounds like a single tool call. It isn't. Claude can answer it by chaining facebook_get_page_posts calls with pagination + per-post aggregation math, but on a busy page that hits the LLM's tool-call budget.

What's in this PR

Available Tools (47 tools across 8 categories)

Category Tools
Facebook β€” Pages 5
Facebook β€” Groups 5
Facebook β€” Posts 6
Facebook β€” Search 5
Facebook β€” Ads Library 5
Facebook β€” Marketplace 7
Facebook β€” Media 1
Instagram β€” Profile 6
Instagram β€” Posts + Reels 4
Instagram β€” Discovery 3
Total 47

Each tool has a one-line description. Pricing-affecting params (e.g. exact_followers_count charging 5 credits) flagged in their tool entry.

Honest "Coming soon" footer

TikTok / X (Twitter) / LinkedIn / YouTube β€” matches the actual platform roadmap (project_platform_roadmap.md in memory).

Usage examples β€” split by call shape

Old section mixed cheap-single-call ("Monitor Nike's page") with hard-multi-call ("Compare engagement over the last month") without flagging the difference. New section splits into:

  • Single-call patterns (fast, cheap) β€” credit cost noted per example
  • Multi-call patterns β€” explicit about Claude orchestrating N calls + the cost implication

New "What this MCP server does NOT do" section

Four real limitations, named honestly:

Query shape Why it's hard
"Engagement rate over the last 30 days" for a page Paginated fetch + per-post aggregation β€” hits the LLM tool-call budget on busy pages
"Compare engagement rates between Brand A, B, C over the last month" Same problem, 3Γ—
Historical archive older than what Facebook itself serves We surface what Facebook makes publicly visible
Server-side time-series (daily / weekly metrics) Roadmap item: engagement-stats endpoint with built-in aggregation

Closes with: "If your use case maps to one of these patterns and you want the aggregation pre-computed, contact support β€” we're prioritizing the aggregation endpoint based on customer demand."

Version bump 1.0.2 β†’ 1.0.3

The npm-displayed README updates only on publish, so bumping ensures the new README reaches existing npm-discovered customers next time they look up the package.

Out of scope

This is README + package.json only β€” no code changes. The actual aggregation endpoint (when prioritized based on customer demand) is a follow-up that lives in the main repo's api-scraping service, not here.

Operator publish step after merge

cd backend/mcp-server  # local checkout
git checkout main && git pull
npm publish
git tag v1.0.3 && git push origin v1.0.3

The MCP Registry auto-syncs from npm via the mcpName field within ~24h.

…1.0.3)

Operator confirmed v1.0.2 works on Claude Desktop. While testing, they
hit the "Compare engagement rates between Nike, Adidas, Puma over the
last month" example from the README β€” which the README promised but
the API can only deliver via multi-call orchestration (Claude calls
page_posts N times, then aggregates).

Three changes to make the README honest about what the tool surface
actually delivers:

## 1. List all 47 tools, not just 12

Old "Available Tools" section listed Facebook Pages (4) + Groups (3)
+ Posts (5) = 12 tools, plus "More platforms coming soon: Instagram,
TikTok, YouTube, Twitter". But Instagram is fully implemented (16
tools), and Facebook surface includes Search (5), Ads Library (5),
Marketplace (7), and Media (1) β€” none of which were in the README.

New section lists all 47 tools across 8 categories with one-line
descriptions, plus a 4-platform "Coming soon" footer (TikTok, X,
LinkedIn, YouTube).

## 2. Usage examples β€” single-call vs multi-call

Old examples mixed cheap-single-call ("Monitor Nike's page") with
hard-multi-call ("Compare engagement over the last month") without
flagging the difference. The latter requires Claude to chain 6-30+
tool calls, blowing through the LLM tool-call budget on busy pages.

New section splits examples into:
- Single-call patterns (fast, cheap) with credit cost noted per call
- Multi-call patterns (Claude orchestrates, slower + more expensive)

## 3. New "What this MCP server does NOT do" section

Honest disclosure of the four real limitations:
- No server-side aggregation endpoints β€” engagement-over-time math
  is LLM-orchestrated, doesn't scale to "last month on a busy page"
- No historical archive beyond what Facebook itself surfaces
- limit caps (3-9 posts per call, 30 comments) push pagination to
  the LLM
- No server-side time-series β€” flagged as future roadmap item:
  `/facebook/pages/engagement-stats?from=...&to=...` with built-in
  aggregation

CTA at the end: customers who want pre-computed aggregation can
contact support to prioritize the endpoint.

## Version bump 1.0.2 β†’ 1.0.3

npm-displayed README updates only on publish, so bumping ensures the
new README reaches existing npm-discovered customers.

## What this PR does NOT do

This is README + package.json only. The actual aggregation endpoint
(when prioritized) is a follow-up that lives in api-scraping +
shared-service, not here. This PR just makes the documentation match
reality.
@OussemaFr OussemaFr merged commit a194715 into main Jun 29, 2026
@OussemaFr OussemaFr deleted the fix/readme-v1.0.3-full-tool-list-and-honest-limitations branch June 29, 2026 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant