protogrid

Search / com.swipeharbor/swipeharbor

SwipeHarbor

R1· needs a key

Ad archive search (NewsBreak, Rumble, YouTube, Meta). Paid SwipeHarbor members only; token required.

v1.0.0 · active · website · descriptor JSON · versions

An agent can connect on its own if it already holds SWIPEHARBOR_TOKEN.Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.
Quality89new
Trust83of 100
Uptime, 30 days100%
Latency p50134 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "swipeharbor": {
      "type": "http",
      "url": "https://swipeharbor.com/mcp",
      "headers": {
        "Authorization": "Bearer ${SWIPEHARBOR_TOKEN}"
      }
    }
  }
}
claude mcp add --transport http swipeharbor https://swipeharbor.com/mcp --header "Authorization: Bearer ${SWIPEHARBOR_TOKEN}"
[mcp_servers.swipeharbor]
url = "https://swipeharbor.com/mcp"
bearer_token_env_var = "SWIPEHARBOR_TOKEN"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "swipeharbor": {
      "type": "remote",
      "url": "https://swipeharbor.com/mcp",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer {env:SWIPEHARBOR_TOKEN}"
      }
    }
  }
}
{
  "mcpServers": {
    "swipeharbor": {
      "type": "http",
      "url": "https://swipeharbor.com/mcp",
      "headers": {
        "Authorization": "Bearer ${SWIPEHARBOR_TOKEN}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=swipeharbor&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vc3dpcGVoYXJib3IuY29tL21jcCIsImhlYWRlcnMiOnsiQXV0aG9yaXphdGlvbiI6IkJlYXJlciAke1NXSVBFSEFSQk9SX1RPS0VOfSJ9fQ%3D%3D"
}
{
  "servers": {
    "swipeharbor": {
      "type": "http",
      "url": "https://swipeharbor.com/mcp",
      "headers": {
        "Authorization": "Bearer ${SWIPEHARBOR_TOKEN}"
      }
    }
  }
}
{
  "mcpServers": {
    "swipeharbor": {
      "httpUrl": "https://swipeharbor.com/mcp",
      "headers": {
        "Authorization": "Bearer ${SWIPEHARBOR_TOKEN}"
      }
    }
  }
}
extensions:
  "swipeharbor":
    enabled: true
    name: "swipeharbor"
    type: streamable_http
    uri: "https://swipeharbor.com/mcp"
    headers:
      "Authorization": "Bearer ${SWIPEHARBOR_TOKEN}"
    timeout: 300

Placeholders to fill from your own secret store: ${SWIPEHARBOR_TOKEN}. The registry never accepts secret values.

Quality 89 / 100new

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations4 of 4 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 747 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pulltool history recorded for 5 of the 7 days needed
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

4 tools, about 747 tokens to load them all · tool set e051e3b39b73 · tools last changed 2026-10-16 · checked 2026-10-20 16:30 UTC

Tool changes

  • compare_adschangedinput schema
  • get_funnelchangedinput schema
  • get_ad_evidencechangedinput schema
  • search_adschangeddescription, input schema
    before

    Search stored NewsBreak/Rumble ads. Results contain at most 12 ads. sort=newest (default) orders by last observation; sort=longest_running orders by recorded observation span in whole days. minDays=7|30|90 keeps ads observed over at least that span. The span is not proof of continuous runtime or spend. Follow nextCursor with the same query, sort and filters.

    after · 67% of words in common

    Search stored NewsBreak/Rumble ads. Results contain at most 12 ads. sort=newest (default) orders by last observation; sort=longest_running orders by recorded observation span in whole days. minDays=7|30|90 keeps ads observed over at least that span. minSightings=2|5|10|25|50|100 requires at least that many stored capture observations, not impressions. Counts and spans do not prove continuous runtime or spend. These filters do not apply to transcript search. Follow nextCursor with the same query, sort and filters.

  • search_adschangeddescription, input schemameaning changed
    before

    Search stored NewsBreak/Rumble ads. Results contain at most 12 ads. Follow nextCursor with the same query and filters.

    after · 37% of words in common

    Search stored NewsBreak/Rumble ads. Results contain at most 12 ads. sort=newest (default) orders by last observation; sort=longest_running orders by recorded observation span in whole days. minDays=7|30|90 keeps ads observed over at least that span. The span is not proof of continuous runtime or spend. Follow nextCursor with the same query, sort and filters.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 83 / 100

no-repository
provenance55
liveness100
freshness100
hygiene80

+dns-namespace +website +reachable +uptime-100% +updated-6d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://swipeharbor.com/mcp streamable-httpapi_key ${SWIPEHARBOR_TOKEN}yes100%134 ms2025-11-252026-10-20

Tools (4)

compare_adsread-onlyReturn recorded evidence for two to four distinct ads for comparison. It does not infer competitor spend or performance.
get_ad_evidenceread-onlyRead one captured ad, its recorded category provenance, text evidence, and device context. Does not fetch advertisers or generate previews.
get_funnelread-onlyRead only the recorded destination path. Unresolved, failed and unvisited steps remain explicit; this tool does not navigate or recover hidden pages.
search_adsread-onlySearch stored NewsBreak/Rumble ads. Results contain at most 12 ads. sort=newest (default) orders by last observation; sort=longest_running orders by recorded observation span in whole days. minDays=7|30|90 keeps ads observed over at least that span. minSightings=2|5|10|25|50|100 requires at least that many stored capture observations, not impressions. Counts and spans do not prove continuous runtime or spend. These filters do not apply to transcript search. Follow nextCursor with the same query, sort and filters.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "com.swipeharbor/swipeharbor",
  "title": "SwipeHarbor",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://swipeharbor.com/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "Authorization",
          "isSecret": true,
          "isRequired": true,
          "description": "Bearer token from your SwipeHarbor account (paid members only), e.g. 'Bearer YOUR_TOKEN'"
        }
      ]
    }
  ],
  "version": "1.0.0",
  "websiteUrl": "https://swipeharbor.com",
  "description": "Ad archive search (NewsBreak, Rumble, YouTube, Meta). Paid SwipeHarbor members only; token required."
}