protogrid

Search / io.github.bahdanhal/stackhal

Stackhal

R0· no sign-in

Outside-in DNS, email security, SEO, GEO and app-link checks plus developer utilities.

v1.2.0 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality89good
Trust97of 100
Uptime, 30 days100%
Latency p50645 ms

Connect

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

Quality 89 / 100good

protocol88 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • warn
    protocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every use
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.annotations13 of 13 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: trace_dns_delegation (destructiveHint, idempotentHint); analyze_geo_readiness (destructiveHint, idempotentHint); inspect_apple_pkpass (destructiveHint, idempotentHint); …
  • pass
    tools.token_costabout 2,191 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changes2 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

13 tools, about 2,191 tokens to load them all · tool set ae90e223209e · tools last changed 2026-10-05 · checked 2026-10-19 11:27 UTC

Tool changes

  • validate_app_linkschangeddescription
    before

    Inspect and validate Apple App Site Association (apple-app-site-association) and Android Digital Asset Links (assetlinks.json) files, HTTPS hosting rules, and test URL path routing.

    after · 70% of words in common

    Inspect and validate Apple App Site Association (apple-app-site-association) and Android Digital Asset Links (assetlinks.json) files, HTTPS hosting rules, and test URL path routing, and compare the origin AASA with the copy on Apple's CDN.

  • diagnose_cors_policychangedinput schema

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

provenance90
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +website +reachable +uptime-100% +updated-15d-ago

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://stackhal.com/mcp streamable-httpnoneyes100%645 ms2026-07-282026-10-19

Tools (13)

analyze_geo_readinessread-onlyAnalyze Generative Engine Optimization (GEO) signals and AI crawler readiness for a web page (schema, citations, provenance, answer structure, llms.txt, AI bot robots rules).
audit_website_seoread-onlyRun a deterministic technical SEO audit for a public website URL. Checks canonicals, title tags, headings, robots.txt, sitemaps, redirects, crawl traps, and indexability.
calculate_cidr_overlapread-onlyAnalyze IPv4/IPv6 CIDR subnets for range collisions, full containment, 2D bit-tree matrix partition, and available free subnet allocation.
diagnose_cors_policyread-onlyAnalyze CORS HTTP request and response headers for wildcard/credential security violations, missing Vary: Origin, preflight OPTIONS handling, and header exposure.
generate_apple_pkpass_specread-onlyGenerate a production-ready, fully compliant Apple Wallet pass.json specification based on pass type, metadata, colors, barcode, and field values.
generate_favicon_suiteread-onlyGenerate modern multi-platform favicon bundle (adaptive dark-mode SVG, multi-resolution ICO, Apple Touch Icon, Android PWA icons, webmanifest) and minimal HTML tags from SVG or image input.
inspect_apple_pkpassread-onlyInspect and validate Apple Wallet .pkpass JSON structure (pass.json) or package manifests: checks required keys, pass styles, dates, ISO 8601 timezones, transit types, barcodes, and color contrast.
inspect_domain_securityread-onlyInspect domain email security and deliverability standards: DMARC (BIMI compliance), BIMI DNS & SVG reachability, MTA-STS (RFC 8461), SMTP TLS-RPT (RFC 8460), SPF and MX records.
repair_apple_pkpass_specread-onlyAutomatically repair and sanitize broken Apple Wallet pass.json manifests: fixes missing formatVersion, prefixes passTypeIdentifier, ensures 10-character team ID, normalizes dates to ISO 8601 with timezones, and auto-corrects low contrast.
trace_dns_delegationread-onlyQuery live DNS records and inspect the authoritative nameservers returned for a domain.
transpile_regex_engineread-onlyTranspile and analyze regular expressions across engines (PCRE, Go RE2, JavaScript, Python re, Rust regex) with compatibility checks and ReDoS safety analysis.
transpile_to_caddyfileread-onlyTranspile Nginx (nginx.conf, server blocks) or Apache (.htaccess, VirtualHost) web server configuration to clean, idiomatic Caddyfile with migration advisories.
validate_app_linksread-onlyInspect and validate Apple App Site Association (apple-app-site-association) and Android Digital Asset Links (assetlinks.json) files, HTTPS hosting rules, and test URL path routing, and compare the origin AASA with the copy on Apple's CDN.

Schemas: list_tools.

Similar MCP servers

More from io.github.bahdanhal

Official server.json
{
  "name": "io.github.bahdanhal/stackhal",
  "title": "Stackhal",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://stackhal.com/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.2.0",
  "repository": {
    "url": "https://github.com/bahdanhal/stackhal",
    "source": "github"
  },
  "websiteUrl": "https://stackhal.com/",
  "description": "Outside-in DNS, email security, SEO, GEO and app-link checks plus developer utilities."
}