mcp-scraper 0.3.25 → 0.3.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/api-server.cjs +68 -38
- package/dist/bin/api-server.cjs.map +1 -1
- package/dist/bin/api-server.js +1 -1
- package/dist/bin/mcp-scraper-cli.cjs +1 -1
- package/dist/bin/mcp-scraper-cli.cjs.map +1 -1
- package/dist/bin/mcp-scraper-cli.js +1 -1
- package/dist/bin/mcp-scraper-install.cjs +1 -1
- package/dist/bin/mcp-scraper-install.cjs.map +1 -1
- package/dist/bin/mcp-scraper-install.js +1 -1
- package/dist/bin/mcp-stdio-server.cjs +66 -26
- package/dist/bin/mcp-stdio-server.cjs.map +1 -1
- package/dist/bin/mcp-stdio-server.js +2 -2
- package/dist/{chunk-FE2WC4JR.js → chunk-2GHI2D6Q.js} +67 -27
- package/dist/{chunk-FE2WC4JR.js.map → chunk-2GHI2D6Q.js.map} +1 -1
- package/dist/chunk-MS2UZ6HR.js +7 -0
- package/dist/chunk-MS2UZ6HR.js.map +1 -0
- package/dist/{server-RRCKVBHG.js → server-HIGHKTEV.js} +3 -13
- package/dist/server-HIGHKTEV.js.map +1 -0
- package/docs/spec-server-instructions.md +94 -0
- package/package.json +1 -1
- package/dist/chunk-WPHAMNT7.js +0 -7
- package/dist/chunk-WPHAMNT7.js.map +0 -1
- package/dist/server-RRCKVBHG.js.map +0 -1
|
@@ -5,13 +5,13 @@ import {
|
|
|
5
5
|
exportFanout,
|
|
6
6
|
registerPaaExtractorMcpTools,
|
|
7
7
|
sanitizeOutboundDiagnostics
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-2GHI2D6Q.js";
|
|
9
9
|
import {
|
|
10
10
|
renderInstallTerminal
|
|
11
11
|
} from "../chunk-DOBQN3EY.js";
|
|
12
12
|
import {
|
|
13
13
|
PACKAGE_VERSION
|
|
14
|
-
} from "../chunk-
|
|
14
|
+
} from "../chunk-MS2UZ6HR.js";
|
|
15
15
|
import {
|
|
16
16
|
browserServiceProfileName,
|
|
17
17
|
browserServiceProfileSaveChanges
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
PACKAGE_VERSION
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-MS2UZ6HR.js";
|
|
4
4
|
import {
|
|
5
5
|
browserServiceProfileName,
|
|
6
6
|
browserServiceProfileSaveChanges,
|
|
@@ -92,33 +92,73 @@ function sanitizeHarvestResult(result) {
|
|
|
92
92
|
|
|
93
93
|
// src/mcp/server-instructions.ts
|
|
94
94
|
var SERVER_INSTRUCTIONS = `
|
|
95
|
-
|
|
96
|
-
this routing map, then load its schema before calling.
|
|
95
|
+
# MCP Scraper
|
|
97
96
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
- Google Maps: find places -> maps_search; one place deep-dive + reviews -> maps_place_intel.
|
|
102
|
-
- YouTube: find or list videos -> youtube_harvest; transcribe one video -> youtube_transcribe.
|
|
103
|
-
- Facebook: find ads -> facebook_ad_search; transcribe an ad -> facebook_ad_transcribe; transcribe a
|
|
104
|
-
video -> facebook_video_transcribe; page profile/intel -> facebook_page_intel.
|
|
105
|
-
- Instagram: profile inventory -> instagram_profile_content; one post or reel -> instagram_media_download.
|
|
106
|
-
- Workflows (multi-step): local directory build -> directory_workflow; rank blueprint -> rank_tracker_workflow;
|
|
107
|
-
AI-answer citation fan-out (AEO) -> query_fanout_workflow; deep research -> deep_research_workflow.
|
|
108
|
-
- Anything without a dedicated tool (e.g. Reddit, arbitrary logged-in sites) -> the browser_* agent
|
|
109
|
-
(browser_open, then navigate/read).
|
|
110
|
-
- Logged-in sites (ChatGPT, Claude, Reddit, any account): save the login first -> browser_profile_connect
|
|
111
|
-
(returns an mcpscraper.dev sign-in link for the user; one profile holds MANY logins, call it again with
|
|
112
|
-
the same profile + a new domain to add accounts) -> poll browser_profile_list until AUTHENTICATED ->
|
|
113
|
-
browser_open with that profile. browser_profile_list also shows what a profile is connected to.
|
|
97
|
+
Scrapes and analyzes web, search, maps, social, and site data. **Pick a tool by NAME from the map
|
|
98
|
+
below, then load its schema before calling.** Where a tool needs a value another tool produces, the
|
|
99
|
+
seam is noted so you can chain them.
|
|
114
100
|
|
|
115
|
-
|
|
116
|
-
-
|
|
117
|
-
|
|
118
|
-
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
101
|
+
## Search & research
|
|
102
|
+
- Organic Google results, rankings, local pack -> **search_serp**.
|
|
103
|
+
- Full SERP plus People-Also-Ask and AI-Overview detail -> **harvest_paa**.
|
|
104
|
+
- \`search_serp\` returns \`organicResults[].url\` (often including reddit.com threads) \u2014 feed those into
|
|
105
|
+
\`extract_url\` or \`reddit_thread\`.
|
|
106
|
+
|
|
107
|
+
## Pages & sites
|
|
108
|
+
- One page -> **extract_url** (takes a url).
|
|
109
|
+
- Whole site, crawl + SEO report -> **extract_site** (takes a url).
|
|
110
|
+
- Just the URL list/inventory -> **map_site_urls** (takes a url).
|
|
111
|
+
- \`map_site_urls\` returns urls you can feed straight into \`extract_url\`.
|
|
112
|
+
|
|
113
|
+
## Google Maps
|
|
114
|
+
- Find multiple places/competitors/prospects -> **maps_search** (returns \`results[]\` with name,
|
|
115
|
+
placeUrl, cid).
|
|
116
|
+
- One business deep-dive + reviews -> **maps_place_intel** (takes businessName + location, NOT an id \u2014
|
|
117
|
+
call it directly with a name from a \`maps_search\` result or from the user).
|
|
118
|
+
|
|
119
|
+
## YouTube
|
|
120
|
+
- Find or list videos -> **youtube_harvest** (returns \`videos[].videoId\`).
|
|
121
|
+
- Transcribe one video -> **youtube_transcribe** (takes a videoId from \`youtube_harvest\`, or a url).
|
|
122
|
+
|
|
123
|
+
## Facebook
|
|
124
|
+
- Find advertisers -> **facebook_ad_search** (returns \`advertisers[]\` with pageId, libraryId).
|
|
125
|
+
- One advertiser's ads -> **facebook_page_intel** (takes pageId, libraryId, or query; returns
|
|
126
|
+
\`ads[].videoUrl\`).
|
|
127
|
+
- Transcribe an ad video -> **facebook_ad_transcribe** (takes a videoUrl from \`facebook_page_intel\`).
|
|
128
|
+
- Transcribe an organic reel/video/post -> **facebook_video_transcribe** (takes the Facebook url directly).
|
|
129
|
+
|
|
130
|
+
## Instagram
|
|
131
|
+
- Profile inventory -> **instagram_profile_content** (returns post/reel/tv urls).
|
|
132
|
+
- One post or reel -> **instagram_media_download** (takes a url from \`instagram_profile_content\`, or a
|
|
133
|
+
url the user gives).
|
|
134
|
+
|
|
135
|
+
## Reddit
|
|
136
|
+
- A reddit.com thread/post URL -> **reddit_thread**. Returns the post plus its comment tree and handles
|
|
137
|
+
Reddit's bot wall itself (no login needed). Find threads first with \`search_serp\`.
|
|
138
|
+
|
|
139
|
+
## Other sites & logins (browser agent)
|
|
140
|
+
For an arbitrary site or a logged-in dashboard with no dedicated tool, use the browser_* agent. **First
|
|
141
|
+
decide whether the site needs a login:**
|
|
142
|
+
- **Needs a login** (ChatGPT, Claude, any account) -> save it first: **browser_profile_connect** returns
|
|
143
|
+
an mcpscraper.dev sign-in link for the user; one profile holds MANY logins (call it again with the same
|
|
144
|
+
profile + a new domain to add accounts). Poll **browser_profile_list** until AUTHENTICATED, then
|
|
145
|
+
**browser_open** with that profile.
|
|
146
|
+
- **No login** -> **browser_open**, then navigate/read.
|
|
147
|
+
|
|
148
|
+
## Workflows
|
|
149
|
+
Multi-step orchestrations \u2014 prefer these over hand-chaining primitives when the whole job is one of these:
|
|
150
|
+
- Build a local business directory for a niche across a state/region -> **directory_workflow**.
|
|
151
|
+
- Stand up a rank-tracking blueprint (database + cron + ingestion plan) -> **rank_tracker_workflow**.
|
|
152
|
+
- Find which sources an AI answer cites for a query (AEO) -> **query_fanout_workflow** (open a browser
|
|
153
|
+
session on chatgpt.com or claude.ai FIRST, then run it against that session).
|
|
154
|
+
|
|
155
|
+
## Notes
|
|
156
|
+
- Bulk / full-site crawls: call \`extract_site\` with \`rotateProxies:true\` for blocked or rate-limited
|
|
157
|
+
sites. It returns a saved folder/artifact plus a summary, not the full content inline.
|
|
158
|
+
- Browser sessions and media transcription cost credits and take longer \u2014 prefer the cheapest tool that
|
|
159
|
+
answers the question (plain search/extract before browser agents).
|
|
160
|
+
- Large results are saved to disk or an artifact and returned as a summary plus a path; read the path for
|
|
161
|
+
full detail rather than expecting the whole payload inline.
|
|
122
162
|
`.trim();
|
|
123
163
|
|
|
124
164
|
// src/mcp/paa-mcp-server.ts
|
|
@@ -4411,4 +4451,4 @@ export {
|
|
|
4411
4451
|
HttpMcpToolExecutor,
|
|
4412
4452
|
exportFanout
|
|
4413
4453
|
};
|
|
4414
|
-
//# sourceMappingURL=chunk-
|
|
4454
|
+
//# sourceMappingURL=chunk-2GHI2D6Q.js.map
|