HEY Research Lab

Evidence-backed Robinhood Chain research: builders, ships, contracts, changes, market context.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
91%
Calidad de los nombres
91%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~4,532Tokens (definiciones de herramientas)
~2.6 KBTamaño de respuesta típico
Impacto significativo en la atención (3.54% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "hey-research": {
      "url": "https://heyresearch.xyz/mcp"
    }
  }
}

Puntos de conexión remotos

https://heyresearch.xyz/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (13)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢find_projects(query, surface, radar, kind, status, ...)

Find Robinhood Chain projects by name, ticker or contract, or browse one of HEY's surfaces. A full 0x address is a contract lookup: is anyone building it, its ships in 30 days, the last one with its source. Surfaces: building-with-token: verified shipping, active or resumed, with a token whose market is live. still-building: verified activity continuing through a market drawdown HEY tracked. under-the-radar: eligible under HEY's Under the Radar rule (status shipping, active or resumed; Build Momentum at least 30; at least 2 meaningful events in the last 30 days, one of them a ship rather than a commit summary; a fresh reading of an active market, not a thin one or only a launch curve, for the project's own token) and a positive Discovery Gap — market-attention percentile below the build percentile; a positive gap alone is not enough, and it does not bound attention itself. shipping-now: status SHIPPING. most-active: shipping, active or resumed, by Build Momentum. new-builders: recorded in the last 7 days. back-from-dormancy: status RESUMED, narrowed to verified builders native to the chain (status=RESUMED gives every resumed project). utility, memes: by kind. shipping-in-silence: eligible under the Under the Radar rule AND below the 40th market-attention percentile. accelerating: more meaningful events in 30 days than in the 30 before. builder-radar: the Builder Radar, ranked by verified development, on-chain use and research, never price. shipping-in-silence and accelerating take no other argument (at most 100 rows); builder-radar takes query, radar, limit and offset. Not a ranking by price: a market sort is context, and rows without the figure follow in activity order.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120,
      "description": "Name, ticker or contract (or its start)."
    },
    "surface": {
      "type": "string",
      "enum": [
        "building-with-token",
        "still-building",
        "under-the-radar",
        "shipping-now",
        "most-active",
        "new-builders",
        "back-from-dormancy",
        "utility",
        "memes",
        "shipping-in-silence",
        "accelerating",
        "builder-radar"
      ]
    },
    "radar": {
      "type": "string",
      "enum": [
        "all",
        "pons",
        "virtuals",
        "other-launch",
        "no-token",
        "new",
        "established",
        "most-improved",
        "development",
        "onchain",
        "resumed"
      ],
      "description": "With surface=builder-radar: a Radar view."
    },
    "kind": {
      "type": "string",
      "enum": [
        "UTILITY",
        "MEME",
        "HYBRID",
        "INFRASTRUCTURE",
        "RWA",
        "APPLICATION",
        "OTHER"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "SHIPPING",
        "ACTIVE",
        "QUIET",
        "DORMANT",
        "RESUMED",
        "UNKNOWN"
      ],
      "description": "Activity status."
    },
    "narrative": {
      "type": "string",
      "maxLength": 80,
      "description": "Narrative slug, e.g. \"ai-agents\"."
    },
    "launchpad": {
      "type": "string",
      "maxLength": 40,
      "description": "e.g. \"pons\", \"virtuals\"."
    },
    "has": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "token",
          "x",
          "marketCap",
          "launchpad",
          "liveMarket",
          "verifiedToken",
          "trading",
          "github"
        ]
      },
      "description": "Facts every row must carry."
    },
    "stage": {
      "type": "string",
      "enum": [
        "curve",
        "graduated",
        "dex"
      ],
      "description": "Token launch stage."
    },
    "minLiquidity": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "USD; unknown is excluded, never zero."
    },
    "maxMarketCap": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "USD, on the card's valuation reading."
    },
    "minMarketCap": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "minVolume": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "24h volume, USD."
    },
    "age": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month",
        "older"
      ],
      "description": "Since the first pool opened."
    },
    "deployed": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month",
        "older"
      ],
      "description": "Since the contract was deployed."
    },
    "sort": {
      "type": "string",
      "enum": [
        "activity",
        "shipped",
        "marketCap",
        "newest",
        "liquidity",
        "volume24h"
      ],
      "description": "Default activity; shipped = newest ship first."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 48,
      "description": "Default 24."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "description": "The offset a previous answer gave."
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢get_project_snapshot(slug)

One project in one read: identity, build status and Build Momentum, market context with its kind or why it is withheld, on-chain use, 7-day product usage (distinct caller addresses per day — addresses, not people), verification, HoodLock locks, latest changes, freshness and what HEY does not know. Context blocks, never building: paid promotion (presence and dates), DefiLlama protocol economics (measured, not tracked or unread), developer footprint (counts only where measured).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "A project slug, e.g. \"agentos\"."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢get_changes(project, contract, domain, type, since, ...)

The canonical change ledger for Robinhood Chain or one project: releases, ships, status moves, contract deployments and upgrades, verification, sources, scheduled unlocks — one event per change, with its own time and precision, when HEY first knew, and its evidence. Browse newest first; to follow along pass after=c1.0 (or a kept cursor) and keep each answer's cursor. A retraction means HEY no longer makes that claim. Facts, never causes.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "project": {
      "type": "string",
      "maxLength": 120,
      "description": "A project slug."
    },
    "contract": {
      "type": "string",
      "pattern": "^\\d{1,10}:0x[0-9a-fA-F]{40}$",
      "description": "<chainId>:<address>."
    },
    "domain": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "build",
          "contract",
          "market",
          "token",
          "research",
          "lock",
          "market_integrity"
        ]
      }
    },
    "type": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "build.release",
          "build.code_activity",
          "build.ship",
          "build.status_changed",
          "build.dormant",
          "build.resumed",
          "build.accelerating",
          "build.slowing",
          "contract.deployed",
          "contract.followup_deployed",
          "contract.implementation_changed",
          "contract.source_verified",
          "contract.source_unverified",
          "contract.interface_changed",
          "contract.usage_changed",
          "contract.method_first_observed",
          "contract.method_resumed",
          "market.status_changed",
          "market.liquidity_moved",
          "market.volume_spike",
          "market.distribution_changed",
          "token.launch_stage_changed",
          "token.verification_changed",
          "research.published",
          "research.builder_verified",
          "research.owner_verified",
          "research.source_added",
          "research.source_unavailable",
          "research.source_restored",
          "research.source_changed",
          "research.narrative_assigned",
          "lock.unlock_due",
          "lock.observed",
          "lock.withdrawn",
          "market_integrity.event"
        ]
      }
    },
    "since": {
      "type": "string",
      "maxLength": 40,
      "description": "ISO date: events whose own time is at or after it (events with no source time are left out)."
    },
    "until": {
      "type": "string",
      "maxLength": 40
    },
    "detectedSince": {
      "type": "string",
      "maxLength": 40,
      "description": "ISO instant: start a sync at the first event HEY recorded at or after it."
    },
    "after": {
      "type": "string",
      "maxLength": 64,
      "description": "Sync forward from this cursor (c1.0 is the start)."
    },
    "before": {
      "type": "string",
      "maxLength": 64,
      "description": "Browse older than this cursor."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Default 30."
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢get_project_timeline(slug, lens, limit, before)

One project's research timeline: builds, releases, code, contract deploys, upgrades and interface changes, token verification, locks and scheduled unlocks, each with how precisely HEY knows its time. Lenses: everything, build, code, onchain, market, locks. Paged with the before cursor each answer gives.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "A project slug, e.g. \"agentos\"."
    },
    "lens": {
      "type": "string",
      "enum": [
        "everything",
        "build",
        "code",
        "onchain",
        "market",
        "locks"
      ]
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Default 30."
    },
    "before": {
      "type": "string",
      "maxLength": 400,
      "description": "The cursor the previous answer gave."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢explain_fact(slug, fact, source)

Why HEY publishes a fact about one project: the value, FACT, DERIVED or UNKNOWN, the canonical rule and version, the winning source and why, the inputs, the lineage from source to public value, and the evidence ids. Omit fact to list what can be explained; source.counted takes a source id.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "A project slug, e.g. \"agentos\"."
    },
    "fact": {
      "type": "string",
      "enum": [
        "market.valuation",
        "market.status",
        "activity.status",
        "build.momentum",
        "discovery_gap",
        "still_building",
        "research.level",
        "token.verification",
        "source.counted",
        "market_integrity.state"
      ]
    },
    "source": {
      "type": "string",
      "maxLength": 80,
      "description": "With fact=source.counted: the source id."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢get_evidence(id)

Open one published record by its typed id — ship:, signal:, abi:, impl:, lock:, source:, claim:, state:, method:, sourcechange:, security: — as a receipt: what it claims, its source URL, when it happened at what precision, when HEY knew, how it is backed. Ids come from the other tools. A withdrawn record says so.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[a-z_]+:[A-Za-z0-9:._-]{1,200}$",
      "description": "A typed evidence id, e.g. \"ship:2ac87a66-…\"."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢get_token_market(slug, days, include, min_change_pct)

One token's market from HEY's own daily index: the current reading (valuation kind, provider), price, liquidity, volume and trades by day, the lifecycle (deploy, launchpad claim, stage, first trade), pools and depth, supply concentration (shares only, no addresses), contract checks and events by day. include=["moves"] adds each day-on-day valuation move with the building events published before it — a sequence, never a cause. Context, never a recommendation.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "A project slug, e.g. \"agentos\"."
    },
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 400,
      "description": "Days of history; default 30."
    },
    "include": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "moves"
        ]
      }
    },
    "min_change_pct": {
      "type": "integer",
      "minimum": 5,
      "maximum": 500,
      "description": "With moves: smallest move in percent; default 25."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢get_contract(address, chainId, slug)

A contract as a research entity: creation, deployer (the only account named, with a count of other tracked projects' tokens it deployed), verified source and whose code it is (template, bytecode match or its own), Sourcify's answer, proxy and implementation history or the clone's original, interface changes, and 7 days of calls per method (counts; names withheld; an undecoded selector's signature candidate — a guess, never a name). chainId and address, or slug for all of a project's. A proxy HEY did not read is "not read", never "not a proxy".

Esquema de entrada

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "pattern": "^0[xX][a-fA-F0-9]{40}$"
    },
    "chainId": {
      "type": "integer",
      "description": "Default 4663."
    },
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "A project slug, for all of its contracts."
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢project_diff(slug, from, to)

One project between two dates (YYYY-MM-DD, at most 400 days apart): releases and meaningful ships, status and Build Momentum then and now, valuation and liquidity then and now, and the changes recorded — each from the nearest persisted point with its date and basis. Never a cause.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "A project slug, e.g. \"agentos\"."
    },
    "from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "to": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    }
  },
  "required": [
    "slug",
    "from",
    "to"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢ask_hey(slug, question)

A free-text question about one project (English or Malay). HEY matches it to the parts of its record it is about and answers only from that record, every line tagged FACT, DERIVED or UNKNOWN with its source. It records building only and offers no view on price.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "A project slug, e.g. \"agentos\"."
    },
    "question": {
      "type": "string",
      "minLength": 3,
      "maxLength": 280,
      "description": "The question, in the reader's words."
    }
  },
  "required": [
    "slug",
    "question"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢chain_overview(view, days, week)

Robinhood Chain as a whole. view: days (default; trades, volume, tokens, transactions, launches, ships per day), this-week, weekly-report (an ISO week, or the latest), unlocks (scheduled HoodLock unlocks with proof), build-market (Build Momentum beside market attention). Aggregates only; nobody is named.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "view": {
      "type": "string",
      "enum": [
        "days",
        "this-week",
        "weekly-report",
        "unlocks",
        "build-market"
      ]
    },
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 400,
      "description": "days: 1–400 (default 14); unlocks: 1–365 ahead (default 30)."
    },
    "week": {
      "type": "string",
      "pattern": "^\\d{4}-W\\d{2}$",
      "description": "weekly-report: e.g. 2026-W37."
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}
🟢research_answer(capability, project, projects, address, days, ...)

HEY's agent contract (AgentIntelligenceResponse v1), Robinhood Chain 4663: research_project; what_changed (1–30 days, project or chain); builder_status (rule, inputs, evidence); verify_project (is a contract the project’s); compare_builders (2–4, no winner); unknowns (every coverage state). Claims FACT/DERIVED/UNKNOWN with freshness and evidence ids; source text is quoted data.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "capability": {
      "type": "string",
      "enum": [
        "research_project",
        "what_changed",
        "builder_status",
        "verify_project",
        "compare_builders",
        "unknowns"
      ]
    },
    "project": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80
    },
    "projects": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 80
      },
      "minItems": 2,
      "maxItems": 4
    },
    "address": {
      "type": "string",
      "pattern": "^0[xX][a-fA-F0-9]{40}$"
    },
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 30
    },
    "types": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[a-z_]+\\.[a-z_]+$"
      },
      "minItems": 1,
      "maxItems": 20
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "building": {
      "type": "string",
      "const": "only"
    }
  },
  "required": [
    "capability"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.agent-intelligence-response"
    },
    "schemaVersion": {
      "type": "string",
      "const": "1"
    },
    "capability": {
      "type": "string",
      "enum": [
        "research_project",
        "what_changed",
        "builder_status",
        "verify_project",
        "compare_builders",
        "unknowns"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "ok",
        "not_found",
        "moved",
        "invalid_request",
        "unavailable"
      ]
    },
    "answer": {
      "type": "object",
      "properties": {
        "text": {
          "type": "string"
        }
      },
      "required": [
        "text"
      ],
      "additionalProperties": true
    },
    "claims": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "FACT",
              "DERIVED",
              "UNKNOWN"
            ]
          }
        },
        "required": [
          "id",
          "status"
        ],
        "additionalProperties": true
      }
    },
    "evidence": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": true
      }
    },
    "data": {
      "anyOf": [
        {
          "type": "object",
          "properties": {},
          "additionalProperties": true
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "schema",
    "schemaVersion",
    "capability",
    "status",
    "answer",
    "claims",
    "evidence",
    "data"
  ],
  "additionalProperties": true
}
🟢market_integrity(slug)

For one project: what happened to its tracked token market — liquidity against the level it held, trading, a pool migration — beside its builder activity, and where the two disagree. It describes the token market, never whether development stopped, and never calls a project a rug or safe.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "A project slug, e.g. \"agentos\"."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hey.mcp-api-answer"
    },
    "api": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "schema",
    "api"
  ],
  "additionalProperties": true
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada13 herramientas