edge Get Edge
Docs API
API

Edge API

Edge finds the best expert skill for the task your agent is about to do, and loads it for that task.

Every endpoint is free: $0 per call. No key, no account.

JSON API

Two calls, JSON in and JSON out: find the skill for a task, then load its instructions. Base URL https://getedge.cc/api/v1.

EndpointWhat it does
POST /find_skillRanks public agent skills for the task and returns only security-reviewed ones.
POST /use_skillReturns one skill's full instructions for this task. Nothing is installed.
GET /openapi.jsonOpenAPI 3.1 schema for both, getedge.cc/api/v1/openapi.json.

Auth

  • None needed. Send Content-Type: application/json and a JSON body.
  • Optional Edge key: Authorization: Bearer edge_.... Get one at getedge.cc/pricing (no card). It links calls to the key's activity and ratings. The key is never logged; a wrong key runs as anonymous.

find_skill

FieldTypeWhat it is
querystring, requiredThe task in plain words, 3 to 500 characters.
keywordsstring2 to 8 words a skill for this would be named with.
limitinteger1 to 5 skills, default 5.
curl -s https://getedge.cc/api/v1/find_skill \
  -H 'Content-Type: application/json' \
  -d '{"query":"write a postgres migration that adds an index without locking the table",
       "keywords":"postgres migration","limit":3}'
{
  "request_id": "ead4trhe",
  "skills": [
    {
      "source": "impertio-studio/postgresql-claude-skill-package",
      "skill": "postgres-impl-zero-downtime-migrations",
      "description": "Use when altering a table on a live production database, adding index...",
      "fit_score": 0.99,
      "recommended": true,
      "security_state": "reviewed",
      "installs": 7,
      "url": "https://raw.githubusercontent.com/impertio-studio/postgresql-claude-skill-package/70c61aa.../skills/source/postgres-impl/postgres-impl-zero-downtime-migrations/SKILL.md"
    },
    {
      "source": "affaan-m/ecc",
      "skill": "database-migrations",
      "description": "Safe, reversible database migration patterns: forward-only production...",
      "fit_score": 0.99,
      "recommended": false,
      "security_state": "reviewed",
      "installs": 5700,
      "url": "https://raw.githubusercontent.com/affaan-m/ecc/d3b8a3e.../skills/database-migrations/SKILL.md"
    },
    "..."
  ],
  "recommendation": {
    "strength": "pick",
    "source": "impertio-studio/postgresql-claude-skill-package",
    "skill": "postgres-impl-zero-downtime-migrations",
    "text": "Load impertio-studio/postgresql-claude-skill-package@postgres-impl-zero-downtime-migrations first with use_skill and this request_id, then apply it. The others are alternatives."
  }
}

Takes 3 to 15 seconds. fit_score is Edge's fit check for this task (0 to 1). recommendation.strength is pick (load the named skill first), shortlist (load one only if it clearly fits), none or routine (no specialist skill needed). Keep request_id, source and skill for use_skill.

use_skill

FieldTypeWhat it is
sourcestringRepository from find_skill, owner/repo.
skillstring, requiredSkill name from find_skill.
request_idstringFrom find_skill.
versionstringOptional: a scanned version to pin.
curl -s https://getedge.cc/api/v1/use_skill \
  -H 'Content-Type: application/json' \
  -d '{"source":"impertio-studio/postgresql-claude-skill-package",
       "skill":"postgres-impl-zero-downtime-migrations","request_id":"ead4trhe"}'
{
  "source": "impertio-studio/postgresql-claude-skill-package",
  "skill": "postgres-impl-zero-downtime-migrations",
  "security_state": "reviewed",
  "request_id": "ead4trhe",
  "instructions": "---\nname: postgres-impl-zero-downtime-migrations\ndescription: >\n  Use when altering a table on a live production databas..."
}

instructions is the full SKILL.md and its supporting files (35,600 characters here). Give it to your agent as instructions for this task.

Errors and limits

Errors are JSON, {"error": "..."}, and the message says what to do next.

StatusMeaning
400Invalid input.
403The skill failed Edge's security checks, so it will not load.
404Not loadable or not matched. Try another skill from the same search.
409Security review still running. Retry after the Retry-After seconds.
429Too many requests from one address (the same limit as the MCP endpoint). Retry after Retry-After.

From code

JavaScript (Node 18+):

const EDGE = "https://getedge.cc/api/v1";
const headers = { "Content-Type": "application/json" };
if (process.env.EDGE_KEY) headers.Authorization = `Bearer ${process.env.EDGE_KEY}`;
const call = async (path, body) => {
  const res = await fetch(`${EDGE}/${path}`, { method: "POST", headers, body: JSON.stringify(body) });
  const json = await res.json();
  if (!res.ok) throw new Error(json.error);
  return json;
};

const found = await call("find_skill", { query: "write release notes from a git log", keywords: "release notes" });
const pick = found.skills.find(s => s.recommended) ?? found.skills[0];
if (pick) {
  const { instructions } = await call("use_skill", { source: pick.source, skill: pick.skill, request_id: found.request_id });
  // give `instructions` to your agent for this task
}

Python (requests):

import os, requests

EDGE = "https://getedge.cc/api/v1"
headers = {"Authorization": "Bearer " + os.environ["EDGE_KEY"]} if os.environ.get("EDGE_KEY") else {}

def call(path, body):
    res = requests.post(f"{EDGE}/{path}", json=body, headers=headers, timeout=60)
    data = res.json()
    if not res.ok:
        raise RuntimeError(data["error"])
    return data

found = call("find_skill", {"query": "write release notes from a git log", "keywords": "release notes"})
pick = next((s for s in found["skills"] if s["recommended"]), found["skills"][0] if found["skills"] else None)
if pick:
    instructions = call("use_skill", {"source": pick["source"], "skill": pick["skill"],
                                      "request_id": found["request_id"]})["instructions"]

For agents: MCP

Agents that speak MCP connect to the same tools directly. Same ranking, same security gate, also free.

POST https://getedge.cc/mcp: MCP Streamable HTTP (protocol 2025-06-18), JSON-RPC 2.0 in the request body.

HeaderValue
Content-Typeapplication/json
Acceptapplication/json, text/event-stream (both, or the server answers 406)
AuthorizationBearer edge_... (optional)
  • No initialize needed. A single tools/list or tools/call request works on its own. MCP client libraries that send initialize first also work.
  • Response format: server-sent events, one data: {...} line holding the JSON-RPC response. result.content[0].text is plain text written for an agent.

find_skill and use_skill

curl -s https://getedge.cc/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"find_skill",
       "arguments":{"query":"write a postgres migration that adds an index without locking the table",
                    "keywords":"postgres migration"}}}' \
  | sed -n 's/^data: //p' | jq -r '.result.content[0].text'

use_skill takes skill, source and request_id from that answer. After the task, rate_skill reports how the skill did; ratings feed Edge's ranking:

{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"rate_skill",
 "arguments":{"request_id":"t9wbx3ma","outcome":"helped","score":8,
              "reason":"Concurrent index pattern and lock_timeout settings applied as written."}}}

All tools

curl -s https://getedge.cc/mcp -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | sed -n 's/^data: //p' | jq -r '.result.tools[].name'

Returns each tool's name, description and JSON input schema: find_skill, use_skill, rate_skill, scan_skill, report_issue, star_skill, list_starred, my_activity, find_tool, use_tool and more. find_tool and use_tool run live data tools (LinkedIn, Instagram, X and search data), with beta limits: 60 calls per hour anonymous, 600 with a key.

Any MCP client library (TypeScript or Python SDK, Streamable HTTP transport) can point at the same URL.

Edge docs · Updated 1 November 2026 · Privacy notice

Get started in seconds.

Free. No Edge account.

Get Edge

Claude or ChatGPT app

Claude Code or Codex

Have a Pro key?

Claude app, ChatGPT or any agent: add Edge with https://getedge.cc/mcp/pro, then paste your key when the getedge.cc sign-in page asks.

Free · No accountOther agents