protogrid

Search / io.satelo/satelo

Satelo

R0· no sign-in

Websites promote each other: Quality Score checks, partner discovery and article placement.

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

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality74needs work
Trust82of 100
Uptime, 30 days95%
Latency p50545 ms

Connect

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

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

Quality 74 / 100needs work

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-06-18; 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 hygiene86 · 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.annotations11 of 11 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: satelo_about (destructiveHint, idempotentHint); satelo_check_site (destructiveHint, idempotentHint); satelo_signup (destructiveHint, idempotentHint); …
  • pass
    tools.token_costabout 1,827 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability50 · weight 15
  • pass
    stability.changes4 tool changes in 30 days
  • fail
    stability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

11 tools, about 1,827 tokens to load them all · tool set 7e4cd27e87eb · tools last changed 2026-10-19 · checked 2026-10-20 14:21 UTC

Tool changes

  • satelo_add_sitechangeddescription, input schemameaning changed
    before

    Requires API key. Adds a website to the account and returns the connection key and steps (WordPress plugin, or API feed for any site). The site joins the exchange once ownership is verified; its first article (about Satelo) earns satellites.

    after · 38% of words in common

    Requires API key. Adds a website to the account. Methods: "wp" = WordPress plugin (returns the connection key and steps); "ghost" = Ghost, no plugin: pass the owner's Ghost Admin API URL and Admin API key (Ghost Admin → Settings → Integrations → custom integration), Satelo verifies them and the site is active at once; "api" = any other site renders the Satelo feed (static site generators such as Hugo, Astro, Jekyll, Eleventy or Next.js use this). Drupal 10/11 and Joomla 4.4/5 sites use "wp" with platform "drupal" or "joomla": the owner installs the Satelo module (https://satelo.io/downloads/satelo-drupal.zip) or system plugin (https://satelo.io/downloads/satelo-joomla.zip) and pastes the same connection key; both are first releases. The site joins the exchange once ownership is verified; its first article (about Satelo) earns satellites.

  • satelo_place_articlechangeddescription
    before

    Requires API key. Orders publication of an article about my site on a host from satelo_find_hosts (or the best match if host is omitted). The agent writes the article: original, useful to the host's readers, 1,500+ characters, 1–2 natural links to my site. Markup: blank line = paragraph, "## " = subheading, "- " = list, [text](https://url) = link. Spends satellites; refunded if not published.

    after · 91% of words in common

    Requires API key. Orders publication of an article about my site on a host from satelo_find_hosts (or the best match if host is omitted). The agent writes the article: original, useful to the host's readers, 1,500+ characters, 1–2 natural links to my site. Markup: blank line = paragraph, "## " = subheading, "- " = list, [text](https://url) = link. Spends the host's price + 10% Satelo fee in satellites; refunded automatically if not published.

  • satelo_find_hostschangeddescription
    before

    Requires API key. Hosts that can publish an article about one of my active sites: similar Quality Score and niche first, never direct A↔B swaps. Returns price in satellites and my balance.

    after · 76% of words in common

    Requires API key. Hosts that can publish an article about one of my active sites: similar Quality Score and niche first, never direct A↔B swaps. Returns each host's price, the total I pay (price + 10% Satelo fee) in satellites, and my balance.

  • satelo_find_siteschangeddescription
    before

    Lists active sites in the Satelo network that accept partner articles, optionally filtered by niche, language and Quality Score range. Shows each site's article price in satellites.

    after · 75% of words in common

    Lists active sites in the Satelo network that accept partner articles, optionally filtered by niche, language and Quality Score range. Shows each site's article price in satellites (the host receives it in full; a buyer pays price + 10% Satelo fee).

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 82 / 100

no-repository
provenance55
liveness98
freshness100
hygiene80

+dns-namespace +website +reachable +uptime-95% +updated-11d-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://satelo.io/mcp streamable-httpnoneyes95%545 ms2025-06-182026-10-20

Tools (11)

satelo_aboutread-onlyExplains Satelo: websites promote each other with partner articles exchanged in circles (A→B→C→A), an internal currency (satellites ◉), pricing and how an AI agent can enrol a site. Call this first if unsure.
satelo_accountread-onlyRequires API key. Balance in satellites, sites with status/Quality Score/prices, recent incoming and outgoing articles.
satelo_add_siteRequires API key. Adds a website to the account. Methods: "wp" = WordPress plugin (returns the connection key and steps); "ghost" = Ghost, no plugin: pass the owner's Ghost Admin API URL and Admin API key (Ghost Admin → Settings → Integrations → custom integration), Satelo verifies them and the site is active at once; "api" = any other site renders the Satelo feed (static site generators such as Hugo, Astro, Jekyll, Eleventy or Next.js use this). Drupal 10/11 and Joomla 4.4/5 sites use "wp" with platform "drupal" or "joomla": the owner installs the Satelo module (https://satelo.io/downloads/satelo-drupal.zip) or system plugin (https://satelo.io/downloads/satelo-joomla.zip) and pastes the same connection key; both are first releases. The site joins the exchange once ownership is verified; its first article (about Satelo) earns satellites.
satelo_check_siteread-onlyFree Quality Score (0–100) for any domain from open data: popularity, link graphs (Majestic, Common Crawl), domain age, content and technical health. Brand-new sites score 0.
satelo_find_hostsread-onlyRequires API key. Hosts that can publish an article about one of my active sites: similar Quality Score and niche first, never direct A↔B swaps. Returns each host's price, the total I pay (price + 10% Satelo fee) in satellites, and my balance.
satelo_find_sitesread-onlyLists active sites in the Satelo network that accept partner articles, optionally filtered by niche, language and Quality Score range. Shows each site's article price in satellites (the host receives it in full; a buyer pays price + 10% Satelo fee).
satelo_place_articleRequires API key. Orders publication of an article about my site on a host from satelo_find_hosts (or the best match if host is omitted). The agent writes the article: original, useful to the host's readers, 1,500+ characters, 1–2 natural links to my site. Markup: blank line = paragraph, "## " = subheading, "- " = list, [text](https://url) = link. Spends the host's price + 10% Satelo fee in satellites; refunded automatically if not published.
satelo_review_articleRequires API key. For sites with auto-placement off: approve or reject an article waiting for approval (ids come from satelo_account → incoming).
satelo_signupSends a sign-in link to the site owner's email (no password). After signing in they can create an API key for this MCP server in the dashboard. Only use with the owner's own email and consent.
satelo_site_settingsRequires API key. Set auto-placement (publish incoming articles automatically), whether the site accepts articles, niche, language, or the owner's own article price in satellites (null = use Satelo's recommendation).
satelo_verify_siteRequires API key. Checks that the plugin / verification file is in place and activates the site in the exchange.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.satelo/satelo",
  "title": "Satelo",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://satelo.io/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "Authorization",
          "isSecret": true,
          "description": "Optional for public tools. Bearer API key (sk_satelo_…) from https://satelo.io/app/ for account tools."
        }
      ]
    }
  ],
  "version": "1.0.0",
  "websiteUrl": "https://satelo.io/agents/",
  "description": "Websites promote each other: Quality Score checks, partner discovery and article placement."
}