MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

Hovercode

Claim this listing

com.hovercode/mcp

hovercode.comVerified

Create and manage QR codes, short links, landing pages, and forms in your Hovercode workspace.

Developer ToolsIs Hovercode down?Alternatives

15 of 22 checks passed

  • Handshake
  • Tools listed
  • Updated recently

Responded

The server completed its last measured handshake. This is an observation, not a guarantee.

Connect to server
Median latency
290 ms
Uptime, 30 days
Not measured
Last checked

Measurement details

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 265 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-06-18, serverInfo.name hovercode.

  • Pass
    Lists tools

    tools/list returned 36 tools.

  • Pass
    Current protocol

    Negotiated 2025-06-18. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 290 ms over 2 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 313 ms over 2 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    2 of 2 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Pass
    Stable tool list

    No tool was removed and no required parameter was added in the last 30 days.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Pass
    Parameters documented

    233 of 247 parameters have a description (94%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-09-14T18:52:19.658347Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Tools

  • build_page

    Build a rich, on-brand landing page from an ordered list of typed blocks, publish it, and return its live URL + its own QR code (`qr_id`; style it with the QR design args here, restyle later with update_qr_code — don't create another). This is the 'make me a page for X' tool — e.g. an event, product, restaurant, link-in-bio, or a scan-to-enter sweepstakes. Each block is {type, content}; call list_block_types first to see every type and its content shape. Blocks render in order in a centered column; a 'header' block (name/bio/photo) is the profile.

    Measured

  • create_folder

    Create a folder to organise QR codes, optionally nested under a parent. Creating a folder that already exists (same name, same parent) returns the existing one, so it's safe to call repeatedly.

    Measured

  • create_form

    Create a form, define its fields, brand it, publish it, and return a shareable short link + QR in one step. Use for 'make me a form to collect X, give me a link and QR to share it'. The result's `share_url` is the public link and `qr_id` is the form's own dynamic QR code (image included) — never call create_qr_code or create_short_link for a form's link; pass QR design args (primary_color, eye_style, frame, logo_url, …) here to style that code in the same call. Supports on-brand styling (theme/colors/logo), a `redirect_url` after submit, conditional logic (`show_when` on a field) and branching endings (`outcomes`), and a custom domain/slug. Publishing mints a dynamic short link and QR — always dynamic, no static option, since a form has to resolve somewhere live. Notifications are a separate, paid, verified-member setting. To change a form later, use update_form.

    Measured

  • create_page

    Create a published micro landing page (link-in-bio style) with a title and a list of links, and return its live URL (`share_url`) + its own QR code (`qr_id`; style it with the QR design args here; don't create another). Use this for 'make me a page with these links and a QR to share it'. The page is a dynamic destination you can keep; it counts toward the workspace's page limit.

    Measured

  • create_pdf_qr

    Create a dynamic QR code and short link for a PDF (menus, flyers, tickets). Host the PDF by passing `pdf_url` (a link Hovercode fetches) or `pdf_base64` (the file's base64 bytes). Returns a shareable short link plus a rendered QR. Because it's dynamic you can later swap the PDF without reprinting the code — always dynamic, no static option here. Counts toward the same workspace dynamic-code limit as create_qr_code (list_workspaces' `dynamic_qr_limit`); past that limit this call returns an error.

    Measured

  • create_qr_code

    Create a Hovercode QR code and return its details plus a rendered PNG. `dynamic: true` makes the destination changeable later and tracks scans; `dynamic: false` (the default, 'static') encodes the destination directly into the code image — it can never be retargeted or tracked, and this choice can't be changed after creation. If the request doesn't make the choice clear, ask the user whether it should be trackable and editable later, or fixed permanently once printed. Dynamic codes count toward the workspace's dynamic-code limit (list_workspaces' `dynamic_qr_used`/`dynamic_qr_limit`); past that limit this call returns an error. Supports full design control (colors, pattern, eye style, frames with captions, logo). Not for Hovercode forms, pages, or short links: those already have their own QR code (returned as `qr_id` / `id`) — use download_qr or update_qr_code with that id instead.

    Measured

  • create_qr_codes_bulk

    Create many QR codes at once from a list — e.g. 'make codes for these 20 product URLs in our brand colors'. All codes share the design/options you pass (colors, pattern, frame, dynamic, template). Returns the created codes and any per-item errors. Max 100 per call.

    Measured

  • create_short_link

    Create a tracked short link for a URL. It comes with its own QR code (same id; use download_qr). Supports a custom slug and a custom domain. The destination can be changed later with update_short_link, and clicks are tracked. Never shorten a link that is already a Hovercode short link, form link, or page link — those are already tracked and already have a QR code.

    Measured

  • delete_folder

    Delete a folder. The codes in it (and in its subfolders) are NOT deleted — they become unfiled — and its subfolders move up to its parent.

    Measured

  • delete_page

    Delete a landing page. Its live URL stops serving and it leaves the workspace's page list. Use for 'delete that page' / 'remove the landing page'.

    Measured

  • delete_qr_code

    Delete a QR code. Dynamic codes stop redirecting after deletion.

    Measured

  • delete_short_link

    Delete a short link. It stops redirecting after deletion.

    Measured

  • download_qr

    Get downloadable, print-ready image links for a QR code — a high-resolution PNG and a vector SVG (best for print/large sizes). Returns URLs you can share or save.

    Measured

  • get_analytics

    Scan analytics over a period: totals, unique scanners, scans-by-day, and top countries/cities/OS/browsers. Pass a QR code `id` for one code, or omit it for the whole workspace (which also returns the top codes). Use this to answer 'how did my codes do this month and where were people scanning?'.

    Measured

  • get_form

    Get one form's details: status, response count, share link, and QR.

    Measured

  • get_form_responses

    List a form's submissions (newest first) so you can read or summarize them — e.g. 'summarize this week's feedback' or 'any complaints in the responses?'. Email and phone answers are hidden unless `include_contact_details` is set.

    Measured

  • get_page

    Get one landing page's details: status, live URL, QR, and its blocks (each block's id + type) so you can edit it with update_page.

    Measured

  • get_qr_activity

    List recent scan events for a dynamic QR code (time, location, device). Use this to answer questions like where or when a code was scanned.

    Measured

  • get_qr_code

    Get one QR code's details and scan analytics (total and unique scans), plus a rendered PNG.

    Measured

  • get_short_link

    Get one short link's details, destination, click counts, and QR.

    Measured

  • get_short_link_activity

    List recent click events for a short link (time, location, device).

    Measured

  • list_block_types

    List the page BLOCK TYPES available to build_page, each with its content JSON Schema. Call this first when composing a rich page so you know the vocabulary (header, link, text, image, button, video, gallery, faq, countdown, socials, divider, form, …).

    Measured

  • list_folders

    List the workspace's folders with their full path, code count, id and slug. Use a folder's id or slug with create_qr_code / update_qr_code (`folder`) to file codes, or with list_qr_codes to filter.

    Measured

  • list_forms

    List the forms in a workspace, newest first. Optional `query` searches by title.

    Measured

  • list_pages

    List the landing pages in a workspace, newest first.

    Measured

  • list_qr_codes

    List QR codes in a workspace, newest first. Optional `query` searches destination, name, and tags. `folder` narrows to one folder, `include_tags` adds each code's tags (its folder is always shown), and `include_scans` adds scan counts — use it instead of calling get_analytics once per code.

    Measured

  • list_short_links

    List short links in a workspace, newest first. Optional `query` searches URL, name, and slug.

    Measured

  • list_tags

    List the workspace's tags (title + id). Tags are attached with create_qr_code (`tags`) or update_qr_code (`add_tags` / `remove_tags`), and list_qr_codes searches by tag.

    Measured

  • list_templates

    List the workspace's saved QR design templates. Pass a template id to create_qr_code to reuse its branding.

    Measured

  • list_workspaces

    List the workspaces this account can access, with their ids; the current (default) one is marked. Tools default to the current workspace, so you only need `workspace` to target a different one.

    Measured

  • set_workspace

    Switch the current (default) workspace by id or name. New codes, forms, and pages are created in the current workspace unless a tool is given an explicit `workspace`.

    Measured

  • update_folder

    Rename a folder and/or move it under another folder. `parent` 'none' moves it to the top level. Codes inside keep their filing.

    Measured

  • update_form

    Change an existing form without recreating it: edit its fields, settings (redirect, thank-you, title), or branding (theme/colors/logo), or close/reopen it. If you pass `fields`, provide the COMPLETE desired list — include each existing field's `id` (from get_form) to keep it; omit a field to remove it; leave `id` off a new field. If the form is already published, edits are re-published so they go live.

    Measured

  • update_page

    Change an existing landing page without recreating it: edit its blocks, title, description, colors, or alignment, and publish/unpublish it. Use for 'fix the typo on my page', 'add a section', or 'take the page down'. If you pass `blocks`, provide the COMPLETE desired list (same {type, content} shape as build_page; include each block's `id` from get_page to keep it, omit to remove) — leaving `blocks` off keeps the existing blocks untouched. If the page is already published, edits are re-published so they go live; pass publish:false to take it offline.

    Measured

  • update_qr_code

    Update a QR code in place — the same code keeps working, so it's safe for already-printed codes. Changing `qr_data` retargets a DYNAMIC code's destination. Design fields (colors, pattern, eye style, frame, logo) restyle the code WITHOUT replacing it. Also supports renaming, toggling location tracking, moving it into a folder (`folder`, or 'none' to unfile), and adding/removing tags. Returns the re-rendered QR so you can preview the result. Any combination works in one call. Only include a design field when you actually intend to change it: every one you pass is applied exactly as given, even a color identical to what you set at creation — there's no way to tell 'leave this as-is' from 'set this back to what it already was'. In particular, someone may have since edited the design directly (a widget's own Edit panel can change eye/frame color, pattern, or frame without that edit ever appearing in this conversation) — resending a color or style you remember from an earlier turn will silently overwrite it. If you're not sure the design still matches what you last set, call get_qr_code first rather than restoring from memory.

    Measured

  • update_short_link

    Update a short link. Changing `link` retargets it — the short URL keeps working, it just points somewhere new. Also supports renaming and toggling location tracking.

    Measured

Probe history

  • ok265 ms36 tools
  • ok315 ms36 tools

Status and uptime

Add badge to your README

The image links back to this page. It shows checks passed, or uptime, and the colour follows the latest status. Responses are cached for 5 to 15 minutes.

MCP Heartbeat badge

Markdown

[![MCP Heartbeat](https://mcpheartbeat.com/badge/com.hovercode/mcp.svg)](https://mcpheartbeat.com/s/com.hovercode/mcp)

HTML

<a href="https://mcpheartbeat.com/s/com.hovercode/mcp"><img alt="MCP Heartbeat" src="https://mcpheartbeat.com/badge/com.hovercode/mcp.svg"></a>

Uptime markdown

[![MCP Heartbeat uptime](https://mcpheartbeat.com/badge/com.hovercode/mcp.svg?kind=uptime)](https://mcpheartbeat.com/s/com.hovercode/mcp)

Served from https://mcpheartbeat.com.

Related servers

All alternatives

Same function and industry, ranked by checks passed then median latency.

Connect to this server

Claude Code

claude mcp add --transport http hovercode https://hovercode.com/mcp/

Cursor .cursor/mcp.json

{
  "mcpServers": {
    "hovercode": {
      "url": "https://hovercode.com/mcp/"
    }
  }
}

VS Code .vscode/mcp.json

{
  "servers": {
    "hovercode": {
      "type": "http",
      "url": "https://hovercode.com/mcp/"
    }
  }
}