Skip to content

ReefAPI

by reefapi · remote · no sign-in to list tools · v1.27.2 · published by GitHub user reefapi

One MCP server for 180+ live web-data APIs returning clean JSON from sites that block scrapers.

Changes · 1

5 tools: 1 change things and 4 only read.

Scanned Oct 21, 2026

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

claude mcp add --transport http reefapi https://api.reefapi.com/mcp --header 'Authorization: <your-authorization>'

Tools

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

5 tools

Changes things 1Claude Code: ask
  • call_engineCall a ReefAPI engine action — POST /<engine>/v1/<action> with `params`.No findings

    Why it is in this group

    • The name "call_engine" says "call": a word for a change.
    Description, as the server wrote it
    Call a ReefAPI engine action — POST /<engine>/v1/<action> with `params`. Returns the uniform { ok, data, meta, error } envelope. Get param names from get_engine_schema first. Needs YOUR ReefAPI key. The local server reads REEFAPI_KEY; the hosted server accepts an OAuth access token (connect with OAuth and paste your key once on the consent screen — this is what ChatGPT uses), an `Authorization: Bearer <key>` header, `x-reefapi-key`, or the key in the connection URL (`https://api.reefapi.com/mcp?key=<key>`). Get a key at https://reefapi.com. Failed calls cost no credits.

    Annotations the server declares

    • title: Call a ReefAPI engine
    • readOnlyHint: false
    • openWorldHint: true
Only reads 4Claude Code: allow
  • get_action_schemaFULL detail for ONE engine action: every parameter (type, required, description, allowed_values dropdown, default, example, min/max), what it returns, pricing, and a ready-to-run e…No findings

    Why it is in this group

    • The name "get_action_schema" says "get": a word for reading.
    Description, as the server wrote it
    FULL detail for ONE engine action: every parameter (type, required, description, allowed_values dropdown, default, example, min/max), what it returns, pricing, and a ready-to-run example_params. Call this right before call_engine so you send valid params — invalid enum values are rejected with the allowed list.

    Annotations the server declares

    • title: Action schema
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • get_catalogThe FULL ReefAPI catalog — EVERY engine with its one-line title, grouped by category.No findings

    Why it is in this group

    • The name "get_catalog" says "get": a word for reading.
    Description, as the server wrote it
    The FULL ReefAPI catalog — EVERY engine with its one-line title, grouped by category. This is the whole menu (≈ a few thousand tokens); SCAN IT AND PICK THE BEST ENGINE YOURSELF. You are an LLM, so you match the user's intent semantically — across ANY language, typo, or phrasing — far better than a keyword search can. Use this whenever search_engines didn't surface the right engine (or to be sure you didn't miss a better one). After you pick: get_engine_schema(engine) -> get_action_schema -> call_engine.

    Annotations the server declares

    • title: ReefAPI catalog
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • get_engine_schemaCOMPACT overview of ONE engine: every action with its description, required params and what it returns — but NOT the full param detail (kept lean so a 90-action engine stays token-…No findings

    Why it is in this group

    • The name "get_engine_schema" says "get": a word for reading.
    Description, as the server wrote it
    COMPACT overview of ONE engine: every action with its description, required params and what it returns — but NOT the full param detail (kept lean so a 90-action engine stays token-cheap). Call this after search_engines to pick the right ACTION, then get_action_schema(engine, action) for that action's full params before call_engine.

    Annotations the server declares

    • title: Engine schema
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • search_enginesFind the right ReefAPI engine for a task — pass ENGLISH keywords or a short natural-language use-case ("detect a website's tech stack", "company reviews", "check a package for vuln…No findings

    Why it is in this group

    • The name "search_engines" says "search": a word for reading.
    Description, as the server wrote it
    Find the right ReefAPI engine for a task — pass ENGLISH keywords or a short natural-language use-case ("detect a website's tech stack", "company reviews", "check a package for vulnerabilities", "is this domain available"). The catalog is in English: if the end-user asked in another language, translate their INTENT into English keywords first (you are an LLM — do this inline). Ranks engines by how well the query matches each engine's name/title/category/ACTION descriptions (stem-matched, so plurals/word-forms still hit). Empty query = list all. Returns name/title/category/actions + match score. Call this FIRST, then get_engine_schema(engine) to pick an action. This is a fast keyword pre-filter — if the right engine isn't in the results (or you want to be sure), call get_catalog and pick from the full list YOURSELF (you semantically match any language/phrasing better than keywords).

    Annotations the server declares

    • title: Search ReefAPI engines
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: 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.27.2. Values in angle brackets are yours to fill in.

claude mcp add --transport http reefapi https://api.reefapi.com/mcp --header 'Authorization: <your-authorization>'

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__reefapi__search_engines",
      "mcp__reefapi__get_engine_schema",
      "mcp__reefapi__get_action_schema",
      "mcp__reefapi__get_catalog"
    ],
    "ask": [
      "mcp__reefapi__call_engine"
    ],
    "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 reefapi. Review it before you use it.