# ScrapeField (remote · scrapefield.com)

Google Maps, LinkedIn, Instagram, TikTok and X data as tools. Demo mode needs no key.

- Trust score: 66/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-18

## Components

- remote · `scrapefield.com`: 66/100 (this document), [markdown](https://verifymcp.io/servers/com-scrapefield-scrapefield/scrapefield.md), [page](https://verifymcp.io/servers/com-scrapefield-scrapefield/scrapefield)

## Channel facts

- Endpoint: `https://scrapefield.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-18.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 47 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 66/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 9432 tokens (~200/item across 47 items; 47 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 20/100
  - Stability observed for 6 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 47 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 48 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the ScrapeField MCP server?

ScrapeField is a hosted endpoint at https://scrapefield.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-scrapefield-scrapefield 'https://scrapefield.com/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "com-scrapefield-scrapefield": {
      "url": "https://scrapefield.com/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-scrapefield-scrapefield": {
      "type": "http",
      "url": "https://scrapefield.com/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-scrapefield-scrapefield]
url = "https://scrapefield.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-scrapefield-scrapefield": {
      "type": "remote",
      "url": "https://scrapefield.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-scrapefield-scrapefield --url 'https://scrapefield.com/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-scrapefield-scrapefield:
    url: "https://scrapefield.com/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "com-scrapefield-scrapefield": {
      "Transport": "http",
      "Url": "https://scrapefield.com/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-scrapefield-scrapefield -t streamable-http -u 'https://scrapefield.com/mcp'
```

### Other

```json
{
  "mcpServers": {
    "com-scrapefield-scrapefield": {
      "type": "http",
      "url": "https://scrapefield.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-17 (score 66, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-15 (score 65, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-13 (score 64, +1)

- [security] Tool “search_linkedin_people” rewrote its description, which is the text the model reads
- [functional improvement] Stability: unverified → 0.03

### 2026-10-12 (score 63)

First indexed and scored.

## MCP tools (47)

### `search_places` (~311 tokens)

Search Google Maps for businesses and places

Find businesses and places on Google Maps by a text query, optionally around a point. Each result is the full listing: place_id, name, categories, formatted_address, location, rating and user_ratings_total, phone, website, opening_hours and business_status — named as in Google's Places API. Use this to build a list of businesses in an area; use google-maps/place when you already have a place_id. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `country` (string): Two-letter country code to bias results, e.g. `us`.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `language` (string): Two-letter language code for localised text, e.g. `en`, `de`.
- `lat` (number): Latitude of the point to search around.
- `limit` (integer): At most this many results, 1–20. A page can hold fewer while `next_cursor` is set: read until it is null.
- `lng` (number): Longitude of the point to search around.
- `query` (string, required): What to search for, e.g. "coffee shops in Brooklyn" or "dentist".
- `radius_m` (integer): Search radius in metres around lat/lng.

### `get_place` (~241 tokens)

Get one Google Maps place in full

Fetch one Google Maps listing in full: name, categories, formatted_address, location, rating, user_ratings_total, rating_distribution, price_level, phone numbers, website, opening_hours, the About tab and business_status. popular_times is in the object, and null where the source does not give it. Accepts a Google place_id — from a search, the Places API or anywhere else — or a Google Maps URL. Give exactly one of `place_id` or `url`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `language` (string): Two-letter language code for localised text, e.g. `en`, `de`.
- `place_id` (string): Google's place ID, e.g. from a search result or the Places API.
- `url` (string): The full URL of the place on Google Maps, which carries its id. A short maps.app.goo.gl link does not, so open it and copy the address it leads to.

### `get_place_reviews` (~258 tokens)

Get the reviews of a Google Maps place

Fetch Google reviews for one place: rating, text, language, publish_time, the author (with their Local Guide badge and review count), photos and the owner_response where there is one. The first page has up to 8 reviews, and each page after it up to 20. Use this for review monitoring and sentiment work. Give exactly one of `place_id` or `url`. Costs 6 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–20. A page can hold fewer while `next_cursor` is set: read until it is null.
- `place_id` (string): Google's place ID.
- `sort` (string): Order of the reviews.
- `url` (string): The full URL of the place on Google Maps, which carries its id. A short maps.app.goo.gl link does not, so open it and copy the address it leads to.

### `get_place_photos` (~221 tokens)

Get the photos of a Google Maps place

Fetch the photos on one place's listing, as URLs on Google's CDN; we do not rehost images. Dimensions and uploader are in the object, and null where the source does not give them. Give exactly one of `place_id` or `url`. Costs 4 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–20. A page can hold fewer while `next_cursor` is set: read until it is null.
- `place_id` (string): Google's place ID.
- `url` (string): The full URL of the place on Google Maps, which carries its id. A short maps.app.goo.gl link does not, so open it and copy the address it leads to.

### `get_place_posts` (~189 tokens)

Get an owner's posts on a Google Maps place

Fetch the updates the owner posted on one place's listing, newest first: the text, the day, an image and where it links, such as an offer or an event. Use this to watch what a competitor announces. Give exactly one of `place_id` or `url`. Costs 4 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `place_id` (string): Google's place ID.
- `url` (string): The full URL of the place on Google Maps, which carries its id. A short maps.app.goo.gl link does not, so open it and copy the address it leads to.

### `get_linkedin_profile` (~307 tokens)

Get a LinkedIn profile

Fetch a LinkedIn profile: full_name, headline, about, location, follower_count, connection_count, current_company, experience, education and skills. With `detail=with_email`, also look for their work email, each address checked with its mail server. Use this to enrich a person from their profile URL. Give exactly one of `url` or `vanity_name`. Costs 11 credits (7 for `detail=main`, 33 for `detail=with_email`), cached or not; a failed call is refunded.

Input parameters:

- `detail` (string): `main` is the profile as LinkedIn first shows it, without opening a section: up to 5 positions, 2 schools and 2 skills, for less. `with_email` is the whole profile and a search for their work email,…
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string): The public profile URL, e.g. `https://www.linkedin.com/in/someone`. A member-id URL (`/in/ACoAA…` or `/in/ACwAA…`), as reactions and Sales Navigator give, works too.
- `vanity_name` (string): The part after `/in/` in the public URL, e.g. `someone`. A member id (`ACoAA…`) works too.

### `get_linkedin_company` (~154 tokens)

Get a LinkedIn company page

Fetch a LinkedIn company page: name, tagline, description, website, industry, company_size, employees_on_linkedin, headquarters, company_type, founded, specialties and follower_count. Use this to enrich a company from its LinkedIn URL. Give exactly one of `url` or `vanity_name`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string): The company page URL.
- `vanity_name` (string): The part after `/company/` in the URL, e.g. `acme-inc`.

### `get_linkedin_employee_stats` (~186 tokens)

Count a company's people on LinkedIn

Fetch the counts on a company's People tab: where its people live, what they do, where they studied, what they are skilled at, each as a list of names and member counts. Use this to size a team, or to see where a company hires. Give exactly one of `url` or `vanity_name` or `company_id`. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `company_id` (string): LinkedIn's numeric id for the company: `company_id` in linkedin/company. The fastest of the three.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string): The company page URL.
- `vanity_name` (string): The part after `/company/` in the URL.

### `get_linkedin_company_people` (~203 tokens)

Get the people at a company, from LinkedIn

Fetch the people who list a company as their employer, 25 a page from Sales Navigator, which hides no one: each person's name, location and profile, and their current roles, each with its title, employer and `company_id`, and start month. The same object, and price, as linkedin/people with `source=sales_navigator`. Takes the company's numeric id, `company_id` in linkedin/company. Use this to map a company's team or to find who to contact. Costs 170 credits, cached or not; a failed call is refunded.

Input parameters:

- `company_id` (string, required): LinkedIn's numeric id for the company: `company_id` in linkedin/company.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.

### `search_linkedin_people` (~454 tokens)

Search people on LinkedIn

Find people by name, title, company, school or place. With `source=public` (the default), LinkedIn's own people search: it finds people well by name, but hides many other results as "LinkedIn Member", and those are left out. With `source=sales_navigator`, Sales Navigator's lead search: every match, with each person's current roles, at a higher price. 10 a page, or 25 with Sales Navigator. A page takes about 3 seconds, or about 5 with Sales Navigator, and now and then up to 25. Give at least one of `query`, `first_name`, `last_name`, `title`, `current_company`, `past_company`, `school` or `location`. Use linkedin/profile on a result for the whole profile. Costs 7 credits (170 for `source=sales_navigator`), cached or not; a failed call is refunded.

Input parameters:

- `current_company` (string): Where they work now: a company page URL or `company_id`. Several, comma-separated.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `first_name` (string): Their first name, as their profile gives it.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `last_name` (string): Their last name, as their profile gives it.
- `location` (string): A place name, e.g. "Berlin" or "Germany".
- `past_company` (string): Where they worked before, as `current_company`.
- `query` (string): Words to search for, as in LinkedIn's search box.
- `school` (string): Where they studied: a school page URL or its id. Several, comma-separated.
- `source` (string): `public` is LinkedIn's people search; `sales_navigator` is Sales Navigator's lead search, which hides no one and gives current roles, at a higher price.
- `title` (string): Words in their current title, e.g. "head of data".

### `search_linkedin_services` (~179 tokens)

Find people who offer services on LinkedIn

Find people who list a service on their profile, by what they offer and where: "web design" in "California". LinkedIn hides no one in this search, so it finds people that `linkedin/people` hides. Each result is a person, with their headline and place, 10 a page. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `location` (string): A place name, e.g. "California".
- `query` (string, required): The service, e.g. "web design" or "bookkeeping".

### `search_linkedin_companies` (~224 tokens)

Search companies on LinkedIn

Find companies by name or keywords, place and size, up to 50 a page. Each result has the company's id, page, industry, place and followers; linkedin/company gives the whole page, and linkedin/employees its people. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `company_size` (string): Only companies of these sizes, as LinkedIn bands them: `1-10`, `11-50`, `51-200`, `201-500`, `501-1000`, `1001-5000`, `5001-10000`, `10001+`. Several, comma-separated.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `location` (string): A place name, e.g. "Berlin".
- `query` (string, required): Words in the company's name.

### `get_linkedin_posts` (~306 tokens)

Get or search LinkedIn posts

Fetch recent posts by one person or company, or with `query` every public post with those words: text, images, video, document or article, and published_at. A person's posts also carry reaction_count (with the breakdown by kind), comment_count and repost_count; a company's carry the text and the date, with the counts null, at a much lower price. For the counts on one of them, call linkedin/post. Give exactly one of `url` or `company_url` or `query`. Costs 7 credits (3 with `company_url`), cached or not; a failed call is refunded.

Input parameters:

- `company_url` (string): A company page URL. Up to 7 pages of 10.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–100. A page can hold fewer while `next_cursor` is set: read until it is null.
- `posted_within` (string): Only posts from the last day, week or month.
- `query` (string): Words in the post: every public post that has them, newest first.
- `url` (string): A person's public profile URL. Their latest posts, on one page.

### `get_linkedin_post` (~200 tokens)

Get one LinkedIn post

Fetch one post by its URL: its text, images, author, published_at, reaction_count and comment_count. repost_count and the reactions by kind are null: the source gives the total only. Use linkedin/comments for its comments and linkedin/reactions for who reacted. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string, required): The post's URL: `https://www.linkedin.com/posts/…-activity-<id>-…`, or `https://www.linkedin.com/feed/update/urn:li:activity:<id>`. A link by the share's id works too: `urn:li:ugcPost:<id>`, `urn:li:…

### `get_linkedin_post_comments` (~227 tokens)

Get the comments on a LinkedIn post

Fetch the comments on one post, up to 100 a page: each comment's text, author (name, headline, profile), published_at, like_count, reply_count and its own `url`, which opens the post at that comment. With `comment_url`, the replies to one comment. Use this to see who engages with a post and what they say. Give exactly one of `url` or `comment_url`. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `comment_url` (string): A comment's URL, as LinkedIn's "Copy link to comment" gives it: the replies to that comment.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `sort` (string): Most relevant first, or newest first.
- `url` (string): The post's URL, as for linkedin/post.

### `get_linkedin_post_reactions` (~211 tokens)

Get who reacted to a LinkedIn post

Fetch who reacted to one post, up to 100 a page: each person's or company page's name, headline and link, and which reaction. With `comment_url`, who reacted to one comment. LinkedIn lists people who react by member id, so `actor.url` is usually a member-id link (`/in/ACoAA…`) with `vanity_name` null; linkedin/profile takes it. Give exactly one of `url` or `comment_url`. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `comment_url` (string): A comment's URL: who reacted to that comment.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string): The post's URL, as for linkedin/post.

### `get_linkedin_activity` (~317 tokens)

Get a person's LinkedIn comments and reactions

Fetch what one person did recently on other people's posts: with `type=comments`, the comments they wrote and when; with `type=reactions`, the posts they reacted to and how. Each item carries the post, with its author and counts, when they did it, and for a comment its own `comment_url`, which opens the post at that comment. The newest first, up to 100 a page, with `next_cursor` for older ones. Use this for sales signals: who a prospect engages with, and on what. Give exactly one of `url` or `vanity_name`. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `posted_within` (string): Only comments from the last day, week or month. With `type=comments` only.
- `type` (string): Their comments, or their reactions.
- `url` (string): The person's public profile URL. A member-id link (`/in/ACoAA…` or `/in/ACwAA…`), as reactions and Sales Navigator give, works too.
- `vanity_name` (string): The part after `/in/` in their public URL. A member id (`ACoAA…`) works too.

### `search_linkedin_jobs` (~340 tokens)

Search LinkedIn job postings

Search LinkedIn job postings by keyword and location, with LinkedIn's own filters. Returns each posting's title, company, location, listed_at, URL, and workplace_type and easy_apply where the list shows them. employment_type, seniority_level, salary and description are null: linkedin/job gives them. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `company_id` (string): Only one company's roles: `company_id` in linkedin/company.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `easy_apply` (boolean): Only roles that take applications on LinkedIn.
- `employment_type` (string): Only roles of this kind.
- `experience_level` (string): Only roles at this level, as LinkedIn's filter names them.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–25. A page can hold fewer while `next_cursor` is set: read until it is null.
- `location` (string): Place name, e.g. "Berlin" or "United States".
- `posted_within` (string): Only roles posted in the last day, week or month.
- `query` (string, required): Job title or keywords, e.g. "backend engineer".
- `sort` (string): Most relevant first, or newest first.
- `workplace_type` (string): Only roles of this kind, as LinkedIn's filter names them.

### `get_linkedin_job` (~202 tokens)

Get one LinkedIn job posting in full

Fetch one LinkedIn job posting by its id or URL: title, company, location, employment_type, seniority_level, salary where the posting shows one, and the full description — the fields linkedin/jobs leaves null, and workplace_type, listed_at and easy_apply where the posting shows them. Use it on the job_id of a search result. Give exactly one of `id` or `url`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): LinkedIn's numeric id for the posting: `job_id` in a search result, and the number at the end of `/jobs/view/…`.
- `url` (string): The posting's URL, e.g. `https://www.linkedin.com/jobs/view/4468618386/`.

### `search_linkedin_ads` (~335 tokens)

Search LinkedIn's Ad Library

Search the ads LinkedIn shows in its public Ad Library, by advertiser, by words in the ad or by company id, optionally by country and date: each ad's advertiser, format, headline, text, image or video, call to action, where it leads, when it ran, its impressions range and its targeting, about 25 a page. Use this to watch what a competitor advertises. Give exactly one of `advertiser` or `company_id` or `query`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `advertiser` (string): The advertiser's name, as the library searches it. It matches loosely: a person whose name contains it can appear.
- `company_id` (string): LinkedIn's numeric id for the company, `company_id` in linkedin/company: that company's ads only.
- `countries` (string): Only ads shown in these countries: two-letter codes, comma-separated, e.g. `US,GB`.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `end_date` (string): Only ads shown on or before this day, `YYYY-MM-DD`, before today. With `start_date`.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `query` (string): Words in the ad.
- `start_date` (string): Only ads shown on or after this day, `YYYY-MM-DD`, within the last year. With `end_date`.

### `get_linkedin_ad` (~148 tokens)

Get one ad from LinkedIn's Ad Library

Fetch one ad in full by its id or URL: what linkedin/ads gives, and where it was seen, country by country, with its targeting. Give exactly one of `id` or `url`. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): The Ad Library's id for the ad: `id` in linkedin/ads.
- `url` (string): The ad's page in the Ad Library: `https://www.linkedin.com/ad-library/detail/<id>`.

### `get_linkedin_group` (~141 tokens)

Get one LinkedIn group

Fetch one group: its name, members, description, rules, when it was made and whether its posts are public. Its posts, by `group_url` on linkedin/posts, are not available yet. Give exactly one of `url` or `id`. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): The number in the group's URL.
- `url` (string): The group's URL: `https://www.linkedin.com/groups/<id>/`.

### `search_linkedin_groups` (~110 tokens)

Search LinkedIn groups

Find groups by keywords: each one's name, URL, members and summary, 10 a page. Costs 7 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `query` (string, required): Words to search for.

### `get_instagram_profile` (~148 tokens)

Get an Instagram profile

Fetch an Instagram account: username, name, biography, bio_links, followers_count, follows_count, media_count, is_verified, is_private, is_business_account, category and the business contact buttons — named as in Instagram's Graph API. Use this for creator discovery and audience sizing. Give exactly one of `username` or `url`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string): The profile URL.
- `username` (string): The username. A leading @ is fine.

### `get_instagram_posts` (~198 tokens)

Get recent posts from an Instagram profile

Fetch recent posts and Reels by one Instagram account: shortcode, permalink, media_type, caption, timestamp, media_url, carousel children, like_count, comments_count, view_count, hashtags, mentions and the paid-partnership label. Give exactly one of `username` or `url`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–24. A page can hold fewer while `next_cursor` is set: read until it is null.
- `url` (string): The profile URL.
- `username` (string): The username. A leading @ is fine.

### `get_instagram_post` (~134 tokens)

Get one Instagram post

Fetch one Instagram post or Reel by its URL or shortcode: caption, media, username, timestamp, like_count, comments_count and view_count. Give exactly one of `url` or `shortcode`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `shortcode` (string): The shortcode from the URL, e.g. `C1a2B3c4D5e`.
- `url` (string): The post URL.

### `get_instagram_comments` (~180 tokens)

Get the comments on an Instagram post

Fetch comments on one Instagram post: username, text, timestamp, like_count, reply_count and parent_id for replies. Use this for social listening and campaign verification. Give exactly one of `url` or `shortcode`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–50. A page can hold fewer while `next_cursor` is set: read until it is null.
- `shortcode` (string): The post shortcode.
- `url` (string): The post URL.

### `get_instagram_hashtag` (~150 tokens)

Get recent posts for an Instagram hashtag

Fetch recent posts carrying one hashtag, each a full post. Use this for trend and campaign monitoring. Costs 64 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–24. A page can hold fewer while `next_cursor` is set: read until it is null.
- `tag` (string, required): The hashtag, without the leading #.

### `search_instagram_accounts` (~177 tokens)

Search Instagram accounts

Find Instagram accounts by a keyword: each account's username, name and link, the most relevant first, one page. The search answers from a search index, so it gives no counts: call `instagram/profile` with a username for the whole account. Use this to find creators and brands when you do not have a username. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–50. A page can hold fewer while `next_cursor` is set: read until it is null.
- `query` (string, required): Words to search for, e.g. "sourdough bakery".

### `get_tiktok_profile` (~141 tokens)

Get a TikTok profile

Fetch a TikTok account: username, display_name, bio_description, bio_url, is_verified, follower_count, following_count, likes_count and video_count — named as in TikTok's own APIs. Use this for creator discovery and audience sizing. Give exactly one of `username` or `url`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string): The profile URL.
- `username` (string): The username. A leading @ is fine.

### `get_tiktok_followers` (~184 tokens)

Get a TikTok account's followers or following

Fetch an account's followers, newest first, or with `type=following` the accounts it follows: each a profile with its follower and video counts, about 50 a page. Use this to see who an audience is, or who a creator watches. Give exactly one of `username` or `url`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `type` (string): Who follows the account, or whom it follows.
- `url` (string): The profile URL.
- `username` (string): The username. A leading @ is fine.

### `get_tiktok_videos` (~194 tokens)

Get recent videos from a TikTok profile

Fetch recent videos by one TikTok account: video_description, create_time, duration, cover_image_url, view_count, like_count, comment_count, share_count, favorites_count, hashtag_names and the sound. Give exactly one of `username` or `url`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–30. A page can hold fewer while `next_cursor` is set: read until it is null.
- `url` (string): The profile URL.
- `username` (string): The username. A leading @ is fine.

### `get_tiktok_video` (~159 tokens)

Get one TikTok video

Fetch one TikTok video by URL or id: video_description, username, create_time, duration, the counts, the sound and whether duets and stitches are allowed. Give exactly one of `url` or `id`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): The numeric video id.
- `url` (string): The video URL, `https://www.tiktok.com/@…/video/…`. A short `vm.tiktok.com` link is not read: open it, and copy the address it leads to.

### `get_tiktok_comments` (~212 tokens)

Get the comments on a TikTok video

Fetch comments on one TikTok video: username, text, create_time, like_count, reply_count and parent_comment_id for replies. Give exactly one of `url` or `id`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): The numeric video id.
- `limit` (integer): At most this many results, 1–50. A page can hold fewer while `next_cursor` is set: read until it is null.
- `url` (string): The video URL, `https://www.tiktok.com/@…/video/…`. A short `vm.tiktok.com` link is not read: open it, and copy the address it leads to.

### `search_tiktok` (~191 tokens)

Search TikTok

Search TikTok by keyword. Returns videos by default; `type=user` returns accounts and `type=hashtag` returns hashtags. Use this for trend research and creator discovery when you do not already have a username. Costs 3 credits (13 for `type=hashtag`), cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `limit` (integer): At most this many results, 1–30. A page can hold fewer while `next_cursor` is set: read until it is null.
- `query` (string, required): What to search for.
- `type` (string): What kind of result to return.

### `get_tiktok_trending` (~116 tokens)

Get the videos trending on TikTok in a country

Fetch the videos TikTok's trending feed shows in one country now, each a full video. One page, which changes from call to call. Use this to see what is spreading. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `region` (string): Two-letter country code, e.g. `US`, `GB`, `DE`.

### `search_tiktok_ads` (~165 tokens)

Search TikTok's Ad Library

Search the ads in TikTok's public Ad Library by keyword: each ad's advertiser, title, industry, when it first and last ran, its video or images, the audience range and impressions, about 12 a page. TikTok's library holds ads shown in Europe. Use this to watch what a brand or a category advertises. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `query` (string, required): A brand, an advertiser or words in the ad.

### `get_x_profile` (~158 tokens)

Get an X profile

Fetch an X account: username, name, description, location, the link in the profile, verified, created_at, and public_metrics (followers_count, following_count, tweet_count and more) — named as in X's own API v2. Use this to size an account or enrich a handle. Give exactly one of `username` or `url`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string): The profile URL, on x.com or twitter.com.
- `username` (string): The username. A leading @ is fine.

### `get_x_posts` (~228 tokens)

Get an X account's or community's posts

Fetch an account's newest posts, about 20 a page with `next_cursor` for older ones; or, with `community_url`, the latest posts in a community, one window. Each post has its text, created_at, public_metrics (likes, reposts, replies, quotes, bookmarks, views), media, hashtags and mentions. Give exactly one of `username` or `url` or `community_url`. Costs 13 credits (3 with `community_url`), cached or not; a failed call is refunded.

Input parameters:

- `community_url` (string): A community's URL, `https://x.com/i/communities/<id>`: its latest posts.
- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `url` (string): The account's profile URL.
- `username` (string): The account's username. A leading @ is fine.

### `get_x_post` (~142 tokens)

Get one post from X

Fetch one post by its URL or id: its text, author, created_at, public_metrics with views, media, hashtags and mentions, and the post it replies to or quotes. Give exactly one of `url` or `id`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): The number after /status/ in its URL.
- `url` (string): The post's URL, `https://x.com/<username>/status/<id>`.

### `get_x_replies` (~153 tokens)

Get the replies to an X post

Fetch the replies to one post, about 30 a page: each is a post, with its author, text, likes and replies, and `referenced_tweets` naming the post it answers. Give exactly one of `url` or `id`. Costs 13 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): The post's id.
- `url` (string): The post's URL.

### `get_x_retweeters` (~144 tokens)

Get who reposted an X post

Fetch the accounts that reposted one post, about 20 a page, each with its counts and bio. X's API calls this "retweeted by". Give exactly one of `url` or `id`. Costs 13 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): The post's id.
- `url` (string): The post's URL.

### `get_x_followers` (~174 tokens)

Get an X account's followers or following

Fetch an account's followers, about 70 a page, or with `type=following` the accounts it follows: each an account, with its counts and bio. Use this to see who an audience is. Give exactly one of `username` or `url`. Costs 13 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `type` (string): Who follows the account, or whom it follows.
- `url` (string): The profile URL.
- `username` (string): The username. A leading @ is fine.

### `search_x` (~173 tokens)

Search X

Search X as its own search box does, newest first, about 20 a page; X's search operators work inside `query` (`from:nasa`, `since:2026-09-01`, `lang:en`). `type=user` finds accounts instead. Use this to follow a topic, a brand or a campaign. Costs 13 credits, cached or not; a failed call is refunded.

Input parameters:

- `cursor` (string): The `meta.next_cursor` from the previous page. Omit for the first page.
- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `query` (string, required): Words, a phrase, or X's search operators.
- `type` (string): Posts, or accounts.

### `get_x_community` (~137 tokens)

Get an X community

Fetch one community: its name, description, member_count, created_at, join_policy, rules and creator. `x/posts` with `community_url` gives its posts. Give exactly one of `url` or `id`. Costs 3 credits, cached or not; a failed call is refunded.

Input parameters:

- `fresh` (boolean): Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it.
- `id` (string): The number in its URL.
- `url` (string): The community's URL, `https://x.com/i/communities/<id>`.

### `sign_up` (~176 tokens)

Ask for a ScrapeField account for the person you work for

Ask for a ScrapeField API key for the person you work for. We email them a link; they sign in and type the code this returns, and only then is a key made. Show them `user_code` and tell them to check their email. Then call check_sign_up with `id` every few seconds until it is approved: the key comes once, in that answer. Keep `id` secret. An account an agent starts has no free credits: they buy a pack. Use this only when your person asked you to set ScrapeField up.

Input parameters:

- `agent` (string): What you are called, as the person knows you, e.g. "Claude Code". Shown to them in the email.
- `email` (string, required): The email address of the person you work for. The account is theirs.

### `check_sign_up` (~61 tokens)

Check whether the person approved you

\`pending` until the person approves; then `approved`, with `api_key`, once. Use the key as `Authorization: Bearer …` on the API and on this server.

Input parameters:

- `id` (string, required): The `id` sign_up returned.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-scrapefield-scrapefield/scrapefield#diagnostics

## Score history

- 2026-10-18: 66
- 2026-10-17: 66
- 2026-10-16: 65
- 2026-10-15: 65
- 2026-10-14: 64
- 2026-10-13: 64
- 2026-10-12: 63

## Common questions

### What is the ScrapeField MCP server?

ScrapeField is an MCP server listed in the public MCP registry as com.scrapefield/scrapefield. Google Maps, LinkedIn, Instagram, TikTok and X data as tools. Demo mode needs no key. This page covers its hosted endpoint (https://scrapefield.com/mcp).

### Is the ScrapeField MCP server safe to use?

ScrapeField scores 66 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the ScrapeField MCP server expose?

ScrapeField exposes 47 tools: search_places, get_place, get_place_reviews, get_place_photos, get_place_posts, and 42 more. Their descriptions and schemas cost roughly 9,359 tokens of context every time the server is loaded.

### Does the ScrapeField MCP server require authentication?

No. We connected to ScrapeField without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the ScrapeField MCP server still maintained?

ScrapeField is still listed as active in the MCP registry. We last reached this channel on 18 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://scrapefield.com/mcp
- Repository: https://github.com/scrapefield/scrapefield
- Website: https://scrapefield.com/docs/mcp
- Changelog RSS feed: https://verifymcp.io/servers/com-scrapefield-scrapefield/scrapefield.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-scrapefield-scrapefield/scrapefield.json
- HTML version of this page: https://verifymcp.io/servers/com-scrapefield-scrapefield/scrapefield
