Skip to content

Keelage

by keelage · remote · local (npm) · no sign-in to list tools · v0.4.0 · published by GitHub user keelage

Token intelligence for Robinhood Chain: onchain and social data on any token, timestamped.

Final · 1Changes · 7

8 tools: 1 do something that can't be undone and 7 change things.

Scanned Oct 21, 2026

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

claude mcp add --transport http keelage https://mcp.keelage.ai/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The description contains a 42-character base64 string.

    Matched text

    description: "...ain (chain 4663) to 0xaE313a57B2CE1cbd31bB82C90ced3CFaC0862bA1; the sending wallet..."

    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.

8 tools

Can't be undone 1Claude Code: ask
  • keelage_payPrepaid credit for priced calls on the hosted server.1 finding

    Why it is in this group

    • The name "keelage_pay" says "pay": a word that usually means money moves, which cannot be taken back.

    Findings

    • Warn

      The description contains a 42-character base64 string.

      Matched text

      description: "...ain (chain 4663) to 0xaE313a57B2CE1cbd31bB82C90ced3CFaC0862bA1; the sending wallet..."

      What this check looks for
    Description, as the server wrote it
    Prepaid credit for priced calls on the hosted server. With tx: the hash of a USDG transfer on Robinhood Chain (chain 4663) to 0xaE313a57B2CE1cbd31bB82C90ced3CFaC0862bA1; the sending wallet is credited once with the amount. Without tx: the credit of the wallet named by the wallet argument or your X-Wallet header. Free, never counted. The local server has no payments.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: true
    • idempotentHint: true
Changes things 7Claude Code: ask
  • keelage_holdersTop wallets for one token with pools, contracts and burn addresses labeled, top-10 share excluding pools and contracts, burn share, and the share held by EIP-7702 smart accounts (h…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Top wallets for one token with pools, contracts and burn addresses labeled, top-10 share excluding pools and contracts, burn share, and the share held by EIP-7702 smart accounts (how the Robinhood app wallet reads).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
    • idempotentHint: true
  • keelage_recordThe track record behind the verdicts, cut every day from Keelage's own ledger: every Robinhood Chain pass with its 24-hour, 7-day and 30-day outcome, and every token-day since each…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The track record behind the verdicts, cut every day from Keelage's own ledger: every Robinhood Chain pass with its 24-hour, 7-day and 30-day outcome, and every token-day since each token's first pool, re-cut daily on the hosted server into tables by horizon, band, tier, mcap, pool, age, dayOne, claim, jev, xPosts, xTone, kind, repeat, path, derived, lines, ledger, universe, tokenDays, launcher, projectType, regime, sized, holderGrowth, worst, best, signals, one table at a time (table) or all at once, with the day-by-day series (history). table "signals" is the register of research triggers (conditions that held up in later data, ranked, each with its n, dates and the field it is measured against), with its own history. No dated studies: the rules ship with their origin and are tested on the live tables. Research, not advice.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • idempotentHint: true
  • keelage_scanOne Robinhood Chain token at the three moments, read from the chain now.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    One Robinhood Chain token at the three moments, read from the chain now. The code pass (clean code, not clean, unread): verified source, launcher template, owner privileges, transfer-tax code, honeypot flags. The activity pass (passes, fails, not judged): the code again plus sells clearing, the pool not drained, the deployer share, the holder concentration tier. The size (sized $X, not sized): a share of the pool by tier when the entry test clears, with the one reason when not. verdict.moments carries the three with their reasons; verdict.key keeps the 0.3 word (ELIGIBLE, NOT_ELIGIBLE, FAIL, UNVERIFIED), mapped in verdict.keys. Computed under a named, dated ruleset (the optional ruleset argument) and marked beta; the facts are measured and timestamped. Jev probabilities as context when TYPESAFE_API_KEY is set. signals: the research triggers this scan crosses right now (hosted server; conditions that held up in later data, each with its n and dates), evaluated on the scan's own facts and never written; the verdict and the size do not change for a trigger. Research only, not financial advice.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
    • idempotentHint: true
  • keelage_templateWhich launcher template a contract came from (Pons, LaunchToken, Doppler, UERC20, tokenized stock, or unregistered), with the template verdict, the ABI privileges and the transfer-…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Which launcher template a contract came from (Pons, LaunchToken, Doppler, UERC20, tokenized stock, or unregistered), with the template verdict, the ABI privileges and the transfer-tax identifier count read from verified source.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
    • idempotentHint: true
  • keelage_todayWhat Keelage read today on Robinhood Chain, as the Today page shows it: this hour's and today's code passes (clean code / not clean / unread, with the reasons), today's activity pa…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    What Keelage read today on Robinhood Chain, as the Today page shows it: this hour's and today's code passes (clean code / not clean / unread, with the reasons), today's activity passes (passes, with the tier and whether each was sized), today's sized passes, and the watch lines that fired on passed tokens (volume, momentum, price, the 10 largest wallets, original holders), plus signals: the research triggers crossed in the last 24 hours, on the rows they belong to. One moment (moment) or all four. Free, never counted. Hosted server only: the local server has no store and says so.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • idempotentHint: true
  • keelage_tokenEverything Keelage holds on one Robinhood Chain token, as the token page shows it: the launch (creator, factory, template, block and time), today's price, cap, pool, volume and hol…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Everything Keelage holds on one Robinhood Chain token, as the token page shows it: the launch (creator, factory, template, block and time), today's price, cap, pool, volume and holders, the structural verdict the scan last recorded, every alert raised on it with its 24-hour, 7-day and 30-day outcome, the hourly price series, what X showed by day, a dated log of what changed, and signals: the research triggers the token crossed, dated. Free, never counted. Hosted server only: the local server has no store and says so.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • idempotentHint: true
  • keelage_xWhat X is saying about one Robinhood Chain token in the last 24 hours: posts and accounts, how much is a repeated template, which large profiles posted and whether they meant this …No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    What X is saying about one Robinhood Chain token in the last 24 hours: posts and accounts, how much is a repeated template, which large profiles posted and whether they meant this chain's token, views, and a one-line read of the narrative. Context only, never part of the verdict; a scan does not read X. Cached 6 hours per token.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
    • idempotentHint: 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 0.4.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http keelage https://mcp.keelage.ai/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": [],
    "ask": [
      "mcp__keelage__keelage_scan",
      "mcp__keelage__keelage_holders",
      "mcp__keelage__keelage_x",
      "mcp__keelage__keelage_template",
      "mcp__keelage__keelage_record",
      "mcp__keelage__keelage_token",
      "mcp__keelage__keelage_today",
      "mcp__keelage__keelage_pay"
    ],
    "deny": []
  }
}

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 keelage. Review it before you use it.