protogrid

Search / io.github.phanosh/host-html

host-html

R1· needs a key

Publish AI-generated HTML as a shareable link, and update it in place at the same URL.

v0.2.1 · active · repository · website · descriptor JSON · versions

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

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "host-html": {
      "type": "http",
      "url": "https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${hh_api_key}"
      }
    }
  }
}
claude mcp add --transport http host-html https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp --header "Authorization: Bearer ${hh_api_key}"
[mcp_servers.host-html]
url = "https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp"
bearer_token_env_var = "hh_api_key"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "host-html": {
      "type": "remote",
      "url": "https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer {env:hh_api_key}"
      }
    }
  }
}
{
  "mcpServers": {
    "host-html": {
      "type": "http",
      "url": "https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${hh_api_key}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=host-html&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vc3VpZmdzdnRjYnJhd3pkaHl1aGsuc3VwYWJhc2UuY28vZnVuY3Rpb25zL3YxL21jcCIsImhlYWRlcnMiOnsiQXV0aG9yaXphdGlvbiI6IkJlYXJlciAke2hoX2FwaV9rZXl9In19"
}
{
  "servers": {
    "host-html": {
      "type": "http",
      "url": "https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${hh_api_key}"
      }
    }
  }
}
{
  "mcpServers": {
    "host-html": {
      "httpUrl": "https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${hh_api_key}"
      }
    }
  }
}
extensions:
  "host-html":
    enabled: true
    name: "host-html"
    type: streamable_http
    uri: "https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp"
    headers:
      "Authorization": "Bearer ${hh_api_key}"
    timeout: 300

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

Quality 73 / 100new

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 hygiene75 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • fail
    tools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: publish_html (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); update_page (readOnlyHint, 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
  • pass
    tools.hidden_textno hidden text in tool names, descriptions, schemas or annotations
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pull, stability.new_linkstool history recorded for 3 of the 7 days needed
dependencies67 · weight 15
  • fail
    deps.known_vulns1 advisory to act on (malicious, or rated high or critical with a fix available): GHSA-mrhx-c7xc-m3w5 in [email protected] (direct, fixed in 4.6.6)
  • pass
    deps.mcp_sdk_version@modelcontextprotocol/sdk 1.32.2, no known advisory
  • pass
    deps.resolvable[email protected] resolved: 99 packages

2 tools, about 401 tokens to load them all · tool set 5f61b192b012 · checked 2026-11-14 07:03 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

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-4d-ago

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

Dependencies

[email protected] npm98 dependencies, resolved · MCP SDK @modelcontextprotocol/sdk 1.32.2 · advisories checked 2026-11-13

advisoryseveritypackagefixed in
GHSA-mrhx-c7xc-m3w5Zod can exhaust memory while validating oversized constrained collectionshigh[email protected]directfixed in 4.6.6

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp streamable-httpapi_key ${hh_api_key}yes100%263 ms2025-06-182026-11-14
packageregistryversionruntimesecrets
host-html-mcpnpm0.2.0–HOSTHTML_API_KEY

Tools (2)

publish_htmlPublish a self-contained HTML document and get back a public URL. Use this whenever the user wants to share, send, or host HTML you produced — a report, dashboard, deck, prototype or one-page site — instead of leaving it as a file they cannot open. The HTML must be self-contained: inline the CSS and JS, or reference them by absolute URL.
update_pageReplace the HTML of a page you already published, keeping the SAME link. Use this for every revision — a fix, a new draft, refreshed numbers — instead of publishing a new page, so a link the user already shared keeps working. Only pages owned by the same account can be updated.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.phanosh/host-html",
  "title": "host-html",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
  "remotes": [
    {
      "url": "https://suifgsvtcbrawzdhyuhk.supabase.co/functions/v1/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "Authorization",
          "value": "Bearer {hh_api_key}",
          "isSecret": true,
          "variables": {
            "hh_api_key": {
              "format": "string",
              "isSecret": true,
              "isRequired": true,
              "description": "Personal API key (hh_...) from host-html.com → Account → API keys"
            }
          },
          "isRequired": true,
          "description": "Your personal host-html API key (hh_...) from host-html.com → Account → API keys, as a Bearer token"
        }
      ]
    }
  ],
  "version": "0.2.1",
  "packages": [
    {
      "version": "0.2.0",
      "transport": {
        "type": "stdio"
      },
      "identifier": "host-html-mcp",
      "registryType": "npm",
      "environmentVariables": [
        {
          "name": "HOSTHTML_API_KEY",
          "format": "string",
          "isSecret": true,
          "isRequired": true,
          "description": "Personal API key (hh_...) from host-html.com → Account → API keys"
        }
      ]
    }
  ],
  "repository": {
    "url": "https://github.com/phanosh/host-html",
    "source": "github"
  },
  "websiteUrl": "https://host-html.com/api",
  "description": "Publish AI-generated HTML as a shareable link, and update it in place at the same URL."
}