protogrid

Search / io.github.2pm-ninja/star-ninja

Star Ninja

R0· no sign-in

Star Ninja reports sky darkness, cloud cover and moonless hours for a night-sky spot you name.

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

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality83good
Trust79of 100
Uptime, 30 days98%
Latency p50659 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "star-ninja": {
      "type": "http",
      "url": "https://stars.2pm.ninja/mcp"
    }
  }
}
claude mcp add --transport http star-ninja https://stars.2pm.ninja/mcp
[mcp_servers.star-ninja]
url = "https://stars.2pm.ninja/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "star-ninja": {
      "type": "remote",
      "url": "https://stars.2pm.ninja/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "star-ninja": {
      "type": "http",
      "url": "https://stars.2pm.ninja/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=star-ninja&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vc3RhcnMuMnBtLm5pbmphL21jcCJ9"
}
{
  "servers": {
    "star-ninja": {
      "type": "http",
      "url": "https://stars.2pm.ninja/mcp"
    }
  }
}
{
  "mcpServers": {
    "star-ninja": {
      "httpUrl": "https://stars.2pm.ninja/mcp"
    }
  }
}
extensions:
  "star-ninja":
    enabled: true
    name: "star-ninja"
    type: streamable_http
    uri: "https://stars.2pm.ninja/mcp"
    timeout: 300

Quality 83 / 100good

protocol100 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • pass
    protocol.list_ttltool list is cacheable (ttlMs 3600000)
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.annotations1 of 1 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: inspect_observing_spot (destructiveHint, idempotentHint, openWorldHint)
  • pass
    tools.token_costabout 401 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability50 · weight 15
  • pass
    stability.changes1 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

1 tools, about 401 tokens to load them all · tool set b1250a21968c · tools last changed 2026-10-03 · checked 2026-10-20 08:26 UTC

Tool changes

  • inspect_observing_spotchangedtitle, description, input schema, annotationsmeaning changed
    before

    Inspect your spot from your start and optionally select a returned night.

    after · 7% of words in common

    Checks stargazing conditions at one spot over the coming nights. Returns the spot's darkness band from light-pollution data, its straight-line distance from a start point with a rough drive time, and a map link. For each night: the cloud forecast, when full darkness starts and ends (some nights have none), the moonless hours, and how much of the Moon is lit. Use it when someone asks where or when they can see stars, to check a place they name or compare several. Both the start and the spot must be given as coordinates. It does not find, rank or recommend spots, or check access or safety.

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

no-repository
provenance45
liveness99
freshness100
hygiene80

+website +reachable +uptime-98% +updated-8d-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://stars.2pm.ninja/mcp streamable-httpnoneyes98%659 ms2026-07-282026-10-20

Tools (1)

inspect_observing_spotread-onlyChecks stargazing conditions at one spot over the coming nights. Returns the spot's darkness band from light-pollution data, its straight-line distance from a start point with a rough drive time, and a map link. For each night: the cloud forecast, when full darkness starts and ends (some nights have none), the moonless hours, and how much of the Moon is lit. Use it when someone asks where or when they can see stars, to check a place they name or compare several. Both the start and the spot must be given as coordinates. It does not find, rank or recommend spots, or check access or safety.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.2pm-ninja/star-ninja",
  "title": "Star Ninja",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://stars.2pm.ninja/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.5.0",
  "websiteUrl": "https://stars.2pm.ninja/mcp-server/",
  "description": "Star Ninja reports sky darkness, cloud cover and moonless hours for a night-sky spot you name."
}