scrapeunblocker-mcp 0.11.0 → 0.12.0
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/index.js +300 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -10,7 +10,7 @@ import { APIError, ScrapeUnblockerClient, errorForStatus } from "scrapeunblocker
|
|
|
10
10
|
import { z } from "zod";
|
|
11
11
|
|
|
12
12
|
// src/plugin-catalog.ts
|
|
13
|
-
var CATEGORIES = ["Travel", "Google", "AI", "Search engines", "E-commerce", "Classifieds & Resale", "Groceries", "Real estate", "Vehicles", "Jobs", "Reviews & Companies", "Local & Maps", "Apps", "Video & Music", "SEO & Ads"];
|
|
13
|
+
var CATEGORIES = ["Travel", "Google", "AI", "Search engines", "E-commerce", "Classifieds & Resale", "Groceries", "Real estate", "Vehicles", "Jobs", "Reviews & Companies", "Local & Maps", "Apps", "Video & Music", "Sports", "SEO & Ads"];
|
|
14
14
|
var PLUGINS = [
|
|
15
15
|
{
|
|
16
16
|
"name": "skyscanner_flights",
|
|
@@ -5653,6 +5653,71 @@ var PLUGINS = [
|
|
|
5653
5653
|
}
|
|
5654
5654
|
]
|
|
5655
5655
|
},
|
|
5656
|
+
{
|
|
5657
|
+
"name": "bodegaaurrera_search",
|
|
5658
|
+
"title": "Scrape Bodega Aurrera (Mexico) product search",
|
|
5659
|
+
"category": "Groceries",
|
|
5660
|
+
"path": "/groceries/bodegaaurrera-search",
|
|
5661
|
+
"fixed": {},
|
|
5662
|
+
"description": "Searches Bodega Aurrera (bodegaaurrera.com.mx, Walmart de Mexico) for `query` and returns `products`, each with `position`, `productId`, `name`, `brand`, `url`, `price` (MXN), `wasPrice` and `savings` (only on a promotion), `unitPrice`, `priceRange`, `rating`, `reviewCount`, `availability` / `availabilityText` / `inStock`, `seller` / `sellerType`, `salesUnit`, `department`, `category` (path), `badges`, `fulfillment` (pickup / delivery labels), `sponsored` and `image`. Also `totalResults`, `storeId` (the store the prices and availability are for: the one the storefront assigns a new visitor - a store or postal code cannot be chosen) and `nextPage`. Sort with `sort` (relevance, price_low, price_high), start at `page` and collect up to `max_results` across pages (about 40 per page, each page billed as one request, see `pagesFetched`). `url` takes a Bodega Aurrera search link instead of `query`. A results page usually takes 1-3 s; a page that has to be rendered in a browser takes 20-60 s.",
|
|
5663
|
+
"params": [
|
|
5664
|
+
{
|
|
5665
|
+
"name": "query",
|
|
5666
|
+
"type": "string",
|
|
5667
|
+
"required": false,
|
|
5668
|
+
"description": "What to search, e.g. 'leche', 'arroz', 'detergente' or 'pa\xF1ales'."
|
|
5669
|
+
},
|
|
5670
|
+
{
|
|
5671
|
+
"name": "sort",
|
|
5672
|
+
"type": "string",
|
|
5673
|
+
"required": false,
|
|
5674
|
+
"description": "Order: relevance, price_low, price_high.",
|
|
5675
|
+
"default": "relevance"
|
|
5676
|
+
},
|
|
5677
|
+
{
|
|
5678
|
+
"name": "page",
|
|
5679
|
+
"type": "integer",
|
|
5680
|
+
"required": false,
|
|
5681
|
+
"description": "1-based results page to start from (1-25).",
|
|
5682
|
+
"default": 1
|
|
5683
|
+
},
|
|
5684
|
+
{
|
|
5685
|
+
"name": "max_results",
|
|
5686
|
+
"type": "integer",
|
|
5687
|
+
"required": false,
|
|
5688
|
+
"description": "Products to collect across pages (1-220); about 44 per page, and each page read is billed as one request.",
|
|
5689
|
+
"default": 44
|
|
5690
|
+
},
|
|
5691
|
+
{
|
|
5692
|
+
"name": "url",
|
|
5693
|
+
"type": "string",
|
|
5694
|
+
"required": false,
|
|
5695
|
+
"description": "Instead of `query`: a Bodega Aurrera search link, e.g. https://www.bodegaaurrera.com.mx/search?q=leche (its sort and page are used)."
|
|
5696
|
+
}
|
|
5697
|
+
]
|
|
5698
|
+
},
|
|
5699
|
+
{
|
|
5700
|
+
"name": "bodegaaurrera_product",
|
|
5701
|
+
"title": "Scrape one Bodega Aurrera (Mexico) product",
|
|
5702
|
+
"category": "Groceries",
|
|
5703
|
+
"path": "/groceries/bodegaaurrera-product",
|
|
5704
|
+
"fixed": {},
|
|
5705
|
+
"description": "Fetches one Bodega Aurrera product (by `product_id` or `url`) and returns it as JSON: `productId`, `name`, `brand`, `url`, `upc`, `model`, `price` (MXN), `wasPrice` / `savings` (only on a promotion), `unitPrice`, `installments`, `availability` / `availabilityText` / `inStock`, `orderLimit`, `orderMinimum`, `salesUnit`, `seller` / `sellerId` / `sellerType`, `rating`, `reviewCount`, `ratingBreakdown` (1-5 stars), `category` (path), `productType`, `shortDescription`, `description`, `ingredients`, `specifications` (name / value), `badges`, `fulfillment` (pickup / delivery messages), `fulfillmentOptions`, `store` (the store the price and availability are for - the one the storefront assigns a new visitor) and `image` / `images`. A call usually takes 1-3 s, or 20-60 s when the page has to be rendered in a browser. Companion to `/groceries/bodegaaurrera-search`.",
|
|
5706
|
+
"params": [
|
|
5707
|
+
{
|
|
5708
|
+
"name": "product_id",
|
|
5709
|
+
"type": "string",
|
|
5710
|
+
"required": false,
|
|
5711
|
+
"description": "Bodega Aurrera item id, e.g. '00750649502153' (the number at the end of an /ip/ link; search results give it as `productId`)."
|
|
5712
|
+
},
|
|
5713
|
+
{
|
|
5714
|
+
"name": "url",
|
|
5715
|
+
"type": "string",
|
|
5716
|
+
"required": false,
|
|
5717
|
+
"description": "Instead of `product_id`: a Bodega Aurrera product link, e.g. https://www.bodegaaurrera.com.mx/ip/leche-great-value-entera-1-l/00750649502153."
|
|
5718
|
+
}
|
|
5719
|
+
]
|
|
5720
|
+
},
|
|
5656
5721
|
{
|
|
5657
5722
|
"name": "zillow_search",
|
|
5658
5723
|
"title": "Scrape Zillow real-estate listings",
|
|
@@ -8155,6 +8220,239 @@ var PLUGINS = [
|
|
|
8155
8220
|
}
|
|
8156
8221
|
]
|
|
8157
8222
|
},
|
|
8223
|
+
{
|
|
8224
|
+
"name": "sofascore_events",
|
|
8225
|
+
"title": "SofaScore matches of a sport on a day, or live now",
|
|
8226
|
+
"category": "Sports",
|
|
8227
|
+
"path": "/sports/sofascore-events",
|
|
8228
|
+
"fixed": {},
|
|
8229
|
+
"description": "Lists a sport's matches from sofascore.com for one day in your time zone (or `live=true` for those in progress), biggest competitions first, as JSON: `id`, `url`, `tournament` (id, name, url, category / country, stage), `season`, `round`, `status` (type notstarted, inprogress, finished, postponed, canceled, with its description such as '2nd half'), `startTime` (ISO, UTC) and `startTimestamp`, `homeTeam` / `awayTeam` (id, name, short name, code, country, url), `homeScore` / `awayScore` (current plus per-period and normal-time scores), `winner`, red cards, seeds and first server (tennis), venue and referee when known. Narrow with `country` (a country or category) or `tournament` (id, link or name), and `status`. Pass a match `id` to `/sports/sofascore-match` for its stats and lineups. Motorsport and cycling are races, not matches, and have no day list.",
|
|
8230
|
+
"params": [
|
|
8231
|
+
{
|
|
8232
|
+
"name": "sport",
|
|
8233
|
+
"type": "string",
|
|
8234
|
+
"required": false,
|
|
8235
|
+
"description": "The sport: football, basketball, tennis, ice-hockey, american-football, baseball, handball, volleyball, cricket, rugby, futsal, table-tennis, esports, darts, snooker, mma, aussie-rules, waterpolo, floorball, bandy, badminton, beach-volley, minifootball, padel, motorsport, cycling (soccer, hockey, nba, nfl and the like are accepted).",
|
|
8236
|
+
"default": "football"
|
|
8237
|
+
},
|
|
8238
|
+
{
|
|
8239
|
+
"name": "date",
|
|
8240
|
+
"type": "string",
|
|
8241
|
+
"required": false,
|
|
8242
|
+
"description": "Day as YYYY-MM-DD, or today / yesterday / tomorrow (in `timezone`). Default today."
|
|
8243
|
+
},
|
|
8244
|
+
{
|
|
8245
|
+
"name": "timezone",
|
|
8246
|
+
"type": "string",
|
|
8247
|
+
"required": false,
|
|
8248
|
+
"description": "Time zone the day is read in: an IANA name ('Europe/London', 'America/New_York') or a UTC offset ('+02:00'). Default UTC."
|
|
8249
|
+
},
|
|
8250
|
+
{
|
|
8251
|
+
"name": "live",
|
|
8252
|
+
"type": "boolean",
|
|
8253
|
+
"required": false,
|
|
8254
|
+
"description": "true for the matches in progress right now (date is then ignored).",
|
|
8255
|
+
"default": false
|
|
8256
|
+
},
|
|
8257
|
+
{
|
|
8258
|
+
"name": "status",
|
|
8259
|
+
"type": "string",
|
|
8260
|
+
"required": false,
|
|
8261
|
+
"description": "Keep only: all, live, upcoming, finished.",
|
|
8262
|
+
"default": "all"
|
|
8263
|
+
},
|
|
8264
|
+
{
|
|
8265
|
+
"name": "country",
|
|
8266
|
+
"type": "string",
|
|
8267
|
+
"required": false,
|
|
8268
|
+
"description": "Only one country or category, by name, slug, ISO code or id: 'england', 'Spain', 'US', and for tennis 'ATP', 'WTA'."
|
|
8269
|
+
},
|
|
8270
|
+
{
|
|
8271
|
+
"name": "tournament",
|
|
8272
|
+
"type": "string",
|
|
8273
|
+
"required": false,
|
|
8274
|
+
"description": "Only one competition: an id, a sofascore.com tournament link or a name such as 'Premier League' or 'NBA'."
|
|
8275
|
+
},
|
|
8276
|
+
{
|
|
8277
|
+
"name": "max_results",
|
|
8278
|
+
"type": "integer",
|
|
8279
|
+
"required": false,
|
|
8280
|
+
"description": "Matches to return (1-500), the biggest competitions first.",
|
|
8281
|
+
"default": 100
|
|
8282
|
+
}
|
|
8283
|
+
]
|
|
8284
|
+
},
|
|
8285
|
+
{
|
|
8286
|
+
"name": "sofascore_match",
|
|
8287
|
+
"title": "One SofaScore match with stats, lineups and incidents",
|
|
8288
|
+
"category": "Sports",
|
|
8289
|
+
"path": "/sports/sofascore-match",
|
|
8290
|
+
"fixed": {},
|
|
8291
|
+
"description": "Fetches one match from sofascore.com: `event` (teams, score by period, status, start time, tournament, season, round, venue, referee) plus the `include` sections: `statistics` (per period and group, e.g. possession, expected goals, shots, with home / away text and numbers), `lineups` (formation, every player with position, shirt number, rating and match statistics, missing players), `incidents` (goals, cards, substitutions, VAR, periods, oldest first), `h2h` (team and manager records plus the last 10 meetings), `odds` (markets with decimal and fractional odds), `momentum`, `pregame_form`, `votes`, `managers`, `best_players` (player of the match and best rated per side), `shotmap` (every shot with xG, xGOT, body part and coordinates), `commentary` and `highlights`. Sections the site does not have for the match (e.g. statistics before kick-off) are named in `unavailable`.",
|
|
8292
|
+
"params": [
|
|
8293
|
+
{
|
|
8294
|
+
"name": "match",
|
|
8295
|
+
"type": "string",
|
|
8296
|
+
"required": true,
|
|
8297
|
+
"description": "The match: its id (e.g. 16363904, from the search or events endpoints) or a sofascore.com match link. A link without '#id:' names the pairing; the match in progress, else the next, else the latest is used."
|
|
8298
|
+
},
|
|
8299
|
+
{
|
|
8300
|
+
"name": "include",
|
|
8301
|
+
"type": "string",
|
|
8302
|
+
"required": false,
|
|
8303
|
+
"description": "Sections to add, comma separated: statistics, lineups, incidents, h2h, odds, momentum, pregame_form, votes, managers, best_players, shotmap, commentary, highlights (or all / none). Default statistics,lineups,incidents.",
|
|
8304
|
+
"join": ","
|
|
8305
|
+
}
|
|
8306
|
+
]
|
|
8307
|
+
},
|
|
8308
|
+
{
|
|
8309
|
+
"name": "sofascore_search",
|
|
8310
|
+
"title": "Search SofaScore teams, players, tournaments and matches",
|
|
8311
|
+
"category": "Sports",
|
|
8312
|
+
"path": "/sports/sofascore-search",
|
|
8313
|
+
"fixed": {},
|
|
8314
|
+
"description": "Searches sofascore.com for `query` and returns the matches as JSON, best first. Each result has `rank` (its place in the list), `type` (team, player, tournament, match, manager, referee or venue), `id`, `name`, `slug`, a sofascore.com `url`, `sport`, `country` and `followers`; a player adds `position`, `jerseyNumber` and its `team`, a tournament its `category`, a match the same fields as `/sports/sofascore-events`. `sport` keeps to one sport, `type` to one kind of result. Feed an `id` to `/sports/sofascore-team`, `-player`, `-tournament` or `-match`.",
|
|
8315
|
+
"params": [
|
|
8316
|
+
{
|
|
8317
|
+
"name": "query",
|
|
8318
|
+
"type": "string",
|
|
8319
|
+
"required": true,
|
|
8320
|
+
"description": "What to look for: a team, player, competition, match, manager, referee or venue name, e.g. 'real madrid', 'sinner', 'premier league', 'arsenal chelsea'."
|
|
8321
|
+
},
|
|
8322
|
+
{
|
|
8323
|
+
"name": "sport",
|
|
8324
|
+
"type": "string",
|
|
8325
|
+
"required": false,
|
|
8326
|
+
"description": "The sport: football, basketball, tennis, ice-hockey, american-football, baseball, handball, volleyball, cricket, rugby, futsal, table-tennis, esports, darts, snooker, mma, aussie-rules, waterpolo, floorball, bandy, badminton, beach-volley, minifootball, padel, motorsport, cycling (soccer, hockey, nba, nfl and the like are accepted). Optional; narrows the search or name lookup to one sport."
|
|
8327
|
+
},
|
|
8328
|
+
{
|
|
8329
|
+
"name": "type",
|
|
8330
|
+
"type": "string",
|
|
8331
|
+
"required": false,
|
|
8332
|
+
"description": "Kind of result: all, teams, players, tournaments, matches, managers, referees, venues (all mixes them, best match first).",
|
|
8333
|
+
"default": "all"
|
|
8334
|
+
},
|
|
8335
|
+
{
|
|
8336
|
+
"name": "page",
|
|
8337
|
+
"type": "integer",
|
|
8338
|
+
"required": false,
|
|
8339
|
+
"description": "1-based results page to start from (1-5); the site serves 20 per page.",
|
|
8340
|
+
"default": 1
|
|
8341
|
+
},
|
|
8342
|
+
{
|
|
8343
|
+
"name": "max_results",
|
|
8344
|
+
"type": "integer",
|
|
8345
|
+
"required": false,
|
|
8346
|
+
"description": "Results to collect across pages (1-100).",
|
|
8347
|
+
"default": 20
|
|
8348
|
+
}
|
|
8349
|
+
]
|
|
8350
|
+
},
|
|
8351
|
+
{
|
|
8352
|
+
"name": "sofascore_team",
|
|
8353
|
+
"title": "A SofaScore team with matches, squad and transfers",
|
|
8354
|
+
"category": "Sports",
|
|
8355
|
+
"path": "/sports/sofascore-team",
|
|
8356
|
+
"fixed": {},
|
|
8357
|
+
"description": "Fetches a team from sofascore.com (tennis players and other individual competitors are teams there too): `team` (name, short name, code, country, category, main tournament, manager, venue with capacity, foundation date, followers, url) plus the `include` sections: `last_matches` (most recent first) and `next_matches` (soonest first) in the events shape, `squad` (players with position, shirt number, birth date, height, foot, country, market value, contract), `tournaments` the team plays and `transfers` (in and out with fee and date). `team` takes an id, a link or a name.",
|
|
8358
|
+
"params": [
|
|
8359
|
+
{
|
|
8360
|
+
"name": "team",
|
|
8361
|
+
"type": "string",
|
|
8362
|
+
"required": true,
|
|
8363
|
+
"description": "The team (or a tennis player, MMA fighter and other individual competitors): its id (e.g. 2829), a sofascore.com team link, or a name such as 'Real Madrid' (best search match)."
|
|
8364
|
+
},
|
|
8365
|
+
{
|
|
8366
|
+
"name": "sport",
|
|
8367
|
+
"type": "string",
|
|
8368
|
+
"required": false,
|
|
8369
|
+
"description": "The sport: football, basketball, tennis, ice-hockey, american-football, baseball, handball, volleyball, cricket, rugby, futsal, table-tennis, esports, darts, snooker, mma, aussie-rules, waterpolo, floorball, bandy, badminton, beach-volley, minifootball, padel, motorsport, cycling (soccer, hockey, nba, nfl and the like are accepted). Optional; narrows the search or name lookup to one sport."
|
|
8370
|
+
},
|
|
8371
|
+
{
|
|
8372
|
+
"name": "include",
|
|
8373
|
+
"type": "string",
|
|
8374
|
+
"required": false,
|
|
8375
|
+
"description": "Sections to add, comma separated: last_matches, next_matches, squad, tournaments, transfers (or all / none). Default last_matches,next_matches.",
|
|
8376
|
+
"join": ","
|
|
8377
|
+
}
|
|
8378
|
+
]
|
|
8379
|
+
},
|
|
8380
|
+
{
|
|
8381
|
+
"name": "sofascore_player",
|
|
8382
|
+
"title": "A SofaScore player with season stats and matches",
|
|
8383
|
+
"category": "Sports",
|
|
8384
|
+
"path": "/sports/sofascore-player",
|
|
8385
|
+
"fixed": {},
|
|
8386
|
+
"description": "Fetches a player from sofascore.com: `player` (name, team, position and detailed positions, shirt number, birth date, height, preferred foot, country, market value, contract end, followers, url) plus the `include` sections: `season_stats` (every statistic SofaScore keeps for one competition and season, e.g. rating, goals, expected goals, assists, passes, duels, saves), `seasons` (each competition with its seasons, to pick `tournament` and `season`), `last_matches` (most recent first, with the player's rating, minutes and goals or assists in each), `transfers`, `attributes` (attacking, technical, tactical, defending, creativity scores) and `national_team` (caps, goals, debut). `player` takes an id, a link or a name.",
|
|
8387
|
+
"params": [
|
|
8388
|
+
{
|
|
8389
|
+
"name": "player",
|
|
8390
|
+
"type": "string",
|
|
8391
|
+
"required": true,
|
|
8392
|
+
"description": "The player: id (e.g. 12994), a sofascore.com player link, or a name such as 'Lionel Messi' (best search match)."
|
|
8393
|
+
},
|
|
8394
|
+
{
|
|
8395
|
+
"name": "sport",
|
|
8396
|
+
"type": "string",
|
|
8397
|
+
"required": false,
|
|
8398
|
+
"description": "The sport: football, basketball, tennis, ice-hockey, american-football, baseball, handball, volleyball, cricket, rugby, futsal, table-tennis, esports, darts, snooker, mma, aussie-rules, waterpolo, floorball, bandy, badminton, beach-volley, minifootball, padel, motorsport, cycling (soccer, hockey, nba, nfl and the like are accepted). Optional; narrows the search or name lookup to one sport."
|
|
8399
|
+
},
|
|
8400
|
+
{
|
|
8401
|
+
"name": "include",
|
|
8402
|
+
"type": "string",
|
|
8403
|
+
"required": false,
|
|
8404
|
+
"description": "Sections to add, comma separated: seasons, season_stats, last_matches, transfers, attributes, national_team (or all / none). Default season_stats,last_matches.",
|
|
8405
|
+
"join": ","
|
|
8406
|
+
},
|
|
8407
|
+
{
|
|
8408
|
+
"name": "tournament",
|
|
8409
|
+
"type": "string",
|
|
8410
|
+
"required": false,
|
|
8411
|
+
"description": "For season_stats: the competition id (see the seasons section). Default the player's first listed competition."
|
|
8412
|
+
},
|
|
8413
|
+
{
|
|
8414
|
+
"name": "season",
|
|
8415
|
+
"type": "string",
|
|
8416
|
+
"required": false,
|
|
8417
|
+
"description": "For season_stats: a season id or its year as SofaScore writes it ('26/27', '2026'). Default the latest."
|
|
8418
|
+
}
|
|
8419
|
+
]
|
|
8420
|
+
},
|
|
8421
|
+
{
|
|
8422
|
+
"name": "sofascore_tournament",
|
|
8423
|
+
"title": "A SofaScore competition with standings and fixtures",
|
|
8424
|
+
"category": "Sports",
|
|
8425
|
+
"path": "/sports/sofascore-tournament",
|
|
8426
|
+
"fixed": {},
|
|
8427
|
+
"description": "Fetches a competition and season from sofascore.com: `tournament` (name, category / country, tier, title holder and record holders, divisions above and below, dates, followers, url) and `season`, plus the `include` sections: `standings` (every table: position, team, played, won, drawn, lost, scored, conceded, difference, points, promotion or relegation note), `rounds`, `last_matches` (most recent first) and `next_matches` (soonest first) in the events shape, `top_players` and `top_teams` (the top 10 in each statistic, e.g. rating, goals, assists, expected goals) and `seasons` (every season with its id). `tournament` takes an id, a link or a name.",
|
|
8428
|
+
"params": [
|
|
8429
|
+
{
|
|
8430
|
+
"name": "tournament",
|
|
8431
|
+
"type": "string",
|
|
8432
|
+
"required": true,
|
|
8433
|
+
"description": "The competition: id (e.g. 17), a sofascore.com tournament link (its '#id:' picks the season), or a name such as 'Premier League' or 'NBA' (best search match)."
|
|
8434
|
+
},
|
|
8435
|
+
{
|
|
8436
|
+
"name": "sport",
|
|
8437
|
+
"type": "string",
|
|
8438
|
+
"required": false,
|
|
8439
|
+
"description": "The sport: football, basketball, tennis, ice-hockey, american-football, baseball, handball, volleyball, cricket, rugby, futsal, table-tennis, esports, darts, snooker, mma, aussie-rules, waterpolo, floorball, bandy, badminton, beach-volley, minifootball, padel, motorsport, cycling (soccer, hockey, nba, nfl and the like are accepted). Optional; narrows the search or name lookup to one sport."
|
|
8440
|
+
},
|
|
8441
|
+
{
|
|
8442
|
+
"name": "season",
|
|
8443
|
+
"type": "string",
|
|
8444
|
+
"required": false,
|
|
8445
|
+
"description": "A season id or its year as SofaScore writes it ('26/27', '2026'). Default the current one."
|
|
8446
|
+
},
|
|
8447
|
+
{
|
|
8448
|
+
"name": "include",
|
|
8449
|
+
"type": "string",
|
|
8450
|
+
"required": false,
|
|
8451
|
+
"description": "Sections to add, comma separated: seasons, standings, rounds, last_matches, next_matches, top_players, top_teams (or all / none). Default standings,last_matches,next_matches.",
|
|
8452
|
+
"join": ","
|
|
8453
|
+
}
|
|
8454
|
+
]
|
|
8455
|
+
},
|
|
8158
8456
|
{
|
|
8159
8457
|
"name": "similarweb_overview",
|
|
8160
8458
|
"title": "Get a website's Similarweb traffic overview",
|
|
@@ -8650,7 +8948,7 @@ ${body}`);
|
|
|
8650
8948
|
}
|
|
8651
8949
|
|
|
8652
8950
|
// src/index.ts
|
|
8653
|
-
var VERSION = "0.
|
|
8951
|
+
var VERSION = "0.12.0";
|
|
8654
8952
|
var DEFAULT_BASE_URL = "https://api.scrapeunblocker.com";
|
|
8655
8953
|
var API_KEY_HEADER = "x-scrapeunblocker-key";
|
|
8656
8954
|
function resolveApiKey() {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "scrapeunblocker-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"mcpName": "com.scrapeunblocker/scrapeunblocker-mcp",
|
|
5
5
|
"description": "Model Context Protocol (MCP) server for ScrapeUnblocker - lets Claude fetch any web page's HTML (or AI-parsed JSON) and run 100+ site plugins that return structured JSON, through the ScrapeUnblocker anti-bot API, using your own API key.",
|
|
6
6
|
"keywords": [
|