Skip to content

Siftwright web data

by siftwright.com · remote · no sign-in to list tools · v1.0.0 · published by com.siftwright

Web data for agents: YouTube transcripts, screenshots, Google News, WHOIS, jobs, tech stack, more.

Final · 1Changes · 4

9 tools: 1 do something that can't be undone, 4 change things and 4 only read.

Scanned Oct 21, 2026

2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http web-data https://siftwright.com/mcp --header 'Authorization: <your-authorization>'

Findings

Matches of fixed checks, with the text they matched.

2 warn
  • The server marks "website_screenshot" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "website_screenshot" says "screenshot": a word for reading.

    What this check looks for
  • The server marks "app_store_reviews" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "app_store_reviews" says "store": a word for a change.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

9 tools

Can't be undone 1Claude Code: ask
  • website_screenshotCapture a PNG or JPEG screenshot, or render a PDF, of public web pages in a real browser.1 finding

    Why it is in this group

    • The name "website_screenshot" says "screenshot": a word for reading.
    • The description's first verb is "capture": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "website_screenshot" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "website_screenshot" says "screenshot": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Capture a PNG or JPEG screenshot, or render a PDF, of public web pages in a real browser. Returns a signed fileUrl per page that can be downloaded without a key for 7 days. Each page captured counts as one result.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
Changes things 4Claude Code: ask
  • app_store_reviewsGet Apple App Store reviews for apps (by name, numeric ID or URL) in one or more countries, filtered by rating, keywords and date.1 finding

    Why it is in this group

    • The name "app_store_reviews" says "store": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "app_store_reviews" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "app_store_reviews" says "store": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get Apple App Store reviews for apps (by name, numeric ID or URL) in one or more countries, filtered by rating, keywords and date. Every 25 reviews returned count as one result (rounded up per request).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • domain_whoisLook up who a domain is registered with, when it was created, when it expires, its status, nameservers and DNSSEC (from RDAP/WHOIS registries), plus A, MX, SPF and DMARC records, a…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Look up who a domain is registered with, when it was created, when it expires, its status, nameservers and DNSSEC (from RDAP/WHOIS registries), plus A, MX, SPF and DMARC records, and whether it looks available. Every 3 domains with a registry answer count as one result (rounded up per request).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • pqc_scanCheck whether domains use post-quantum TLS key exchange (X25519MLKEM768 / ML-KEM), which groups they prefer, TLS 1.2/1.3 support, certificate algorithms and expiry, and HSTS, with …No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check whether domains use post-quantum TLS key exchange (X25519MLKEM768 / ML-KEM), which groups they prefer, TLS 1.2/1.3 support, certificate algorithms and expiry, and HSTS, with a letter grade. Each host that answers counts as one result.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • tech_stackDetect what a website is built with: CMS, ecommerce platform, frameworks, analytics, ad pixels, hosting, CDN, email and DNS provider, with the evidence for each detection.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Detect what a website is built with: CMS, ecommerce platform, frameworks, analytics, ad pixels, hosting, CDN, email and DNS provider, with the evidence for each detection. Each website that loads counts as one result.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
Only reads 4Claude Code: allow
  • ats_jobsList open jobs from company careers pages on Greenhouse, Lever, Ashby, SmartRecruiters and Recruitee in one schema (title, team, location, remote, salary when published, apply URL)…No findings

    Why it is in this group

    • The description's first verb is "list": a word for reading.
    Description, as the server wrote it
    List open jobs from company careers pages on Greenhouse, Lever, Ashby, SmartRecruiters and Recruitee in one schema (title, team, location, remote, salary when published, apply URL), with title, location, department and recency filters. Every 3 jobs returned count as one result (rounded up per request).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • contact_detailsFind public emails, phone numbers and social profiles (LinkedIn, X/Twitter, Facebook, Instagram, YouTube) on company websites by crawling up to a few pages of each site.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find public emails, phone numbers and social profiles (LinkedIn, X/Twitter, Facebook, Instagram, YouTube) on company websites by crawling up to a few pages of each site. Each website with a successful crawl counts as one result.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • google_newsSearch Google News for a keyword, company or topic and get articles as structured data (title, link, source, published time).No findings

    Why it is in this group

    • The description's first verb is "search": a word for reading.
    Description, as the server wrote it
    Search Google News for a keyword, company or topic and get articles as structured data (title, link, source, published time). Each article returned counts as one result.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • youtube_transcriptGet transcripts (captions) for YouTube videos, Shorts, playlists or channels as plain text and timed segments, with video metadata.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get transcripts (captions) for YouTube videos, Shorts, playlists or channels as plain text and timed segments, with video metadata. Uses the captions YouTube already has; videos without captions return a failed item. Each video whose transcript comes back counts as one result on your Siftwright plan; failures are free.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http web-data https://siftwright.com/mcp --header 'Authorization: <your-authorization>'

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__web-data__youtube_transcript",
      "mcp__web-data__google_news",
      "mcp__web-data__contact_details",
      "mcp__web-data__ats_jobs"
    ],
    "ask": [
      "mcp__web-data__website_screenshot",
      "mcp__web-data__pqc_scan",
      "mcp__web-data__tech_stack",
      "mcp__web-data__app_store_reviews",
      "mcp__web-data__domain_whois"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as web-data. Review it before you use it.