Skip to content

Hum Internet Availability

by letshum.com · remote · no sign-in to list tools · v1.3.0 · published by com.letshum

Check internet providers, plans, speeds, and known pricing at a specific U.S. street address.

Deletes · 1Changes · 2

4 tools: 1 can delete or cancel things, 2 change things and 1 only read.

Scanned Oct 21, 2026

2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http internet-availability https://mcp.letshum.com/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn1 info
  • The server marks "check_availability" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "start": a word for a change.

    What this check looks for
  • The description is 2,442 characters long, over the 2,000 this check looks for.

    Matched text

    description ends: "...ew before create_order; shopping intent or validation alone is not authorization."

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

4 tools

Deletes or cancels 1Claude Code: deny
  • create_orderOnly after presenting the current review and obtaining authorization for its terms_hash, commit with its validation_token and one stable idempotency_key.No findings

    Why it is in this group

    • The name "create_order" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Only after presenting the current review and obtaining authorization for its terms_hash, commit with its validation_token and one stable idempotency_key. After a lost or uncertain response, call get_order first; do not blindly resubmit.

    Annotations the server declares

    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: false
Changes things 2Claude Code: ask
  • check_availabilityStart with {address}; continue only with a returned candidate_id and requested unit, {lookup_id} to poll, or the current question_set_id and answers.1 finding

    Why it is in this group

    • The description's first verb is "start": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "check_availability" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "start": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Start with {address}; continue only with a returned candidate_id and requested unit, {lookup_id} to poll, or the current question_set_id and answers. FCC findings are area-level evidence. Select only returned executable offer_id values.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
  • validate_orderStart: {"lookup_id":"<returned lookup_id>","offer_id":"<returned offer_id>"}.1 finding

    Why it is in this group

    • The name "validate_order" says "validate": a word for reading.
    • The description's first verb is "start": a word for a change.

    Findings

    • Info

      The description is 2,442 characters long, over the 2,000 this check looks for.

      Matched text

      description ends: "...ew before create_order; shopping intent or validation alone is not authorization."

      What this check looks for
    Description, as the server wrote it
    Start: {"lookup_id":"<returned lookup_id>","offer_id":"<returned offer_id>"}. Poll: {"checkout_id":"<returned checkout_id>"}. Edit: {"checkout_id":"<returned checkout_id>","expected_revision":<current revision>,"details":{<changed fields>}}. Use exactly one shape. Customer, installation, consents and internet_addons belong inside details, never at the root. While checking, wait retry_after_seconds and poll without details. Edits restart validation. On stale expected_revision, retrieve with checkout_id only before editing at the current revision. required_fields defines the contract; field_errors identifies actual missing/invalid fields relative to details. Refreshes the offer and returns an exact review without submitting an order. When preferred installation dates are required, provide both first and second choices using a time_window value allowed by the input schema. Installation type must be self or professional. Record the customer's explicit true or false choices for auto-pay and paperless billing; never enable them silently. Match the customer's equipment preference using returned equipment_options and catalog facts. Customer-owned equipment, included provider equipment and optional paid equipment are different choices. A free provider gateway does not satisfy an own-equipment request. Price or included status alone does not establish ownership. If an offer lacks the requested option, inspect another qualified offer or explain the limitation and ask the customer to choose; never fabricate an option. Send the complete selection in details.internet_addons using returned option_id and quantity values. Omit it to preserve current/default selections; [] declines optional items. Select at most one radio option and retain dependent parents. Ready means technically valid, not necessarily correct for the customer. Compare the entire review with the customer's budget, speed, equipment, billing and installation choices. Resolve mismatches before requesting authorization. Present every returned charge, discount, condition and unknown; do not invent a price adjustment for declined auto-pay or paperless billing. Never repeat the service PIN or full date of birth, even if supplied earlier. Keep capability IDs, terms_hash and validation_token out of customer-facing prose. Obtain explicit authorization for this exact current review before create_order; shopping intent or validation alone is not authorization.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: false
Only reads 1Claude Code: allow
  • get_orderRetrieve recorded fulfillment evidence with checkout_id, especially after a lost or uncertain create_order response.No findings

    Why it is in this group

    • The name "get_order" says "get": a word for reading.
    Description, as the server wrote it
    Retrieve recorded fulfillment evidence with checkout_id, especially after a lost or uncertain create_order response. Public statuses do not prove ISP acceptance or installation confirmation.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.3.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http internet-availability https://mcp.letshum.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__internet-availability__get_order"
    ],
    "ask": [
      "mcp__internet-availability__check_availability",
      "mcp__internet-availability__validate_order"
    ],
    "deny": [
      "mcp__internet-availability__create_order"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as internet-availability. Review it before you use it.