Explain a GitHub issue or pull request at 100, 200, and 300 level.

Apache-2.0Auto-check passedDevelopment

Install Explainer

skills CLI
$ npx skills add agentic-community/mcp-gateway-registry --skill explainer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install agentic-community/mcp-gateway-registry explainer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/agentic-community/mcp-gateway-registry.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/explainer .claude/skills/explainer && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
explainer
GitHub stars
962
Token cost
~3.8k tokens
SKILL.md length
1,761 words
Files
2 (incl. assets)
Skills in repo
17
Repo updated
First seen
Licence
Apache-2.0

At a glance

Explain a GitHub issue or pull request at 100, 200, and 300 level.

  • Works in 7 steps: gather → verify before you explain → write the three levels → …
  • Asked to explain
  • SKILL.md covers Inputs, Step 1: gather, Step 2: verify before you… and Step 3: write the three levels, plus 5 more sections
  • Calls gh, python3 and git; reaches github.com

What it does

Explainer is an agent skill from agentic-community/mcp-gateway-registry. Explain a GitHub issue or pull request at 100, 200, and 300 level. Verifies every claim against the code, then writes a markdown and a self-contained HTML version into .scratchpad/issue-NNNN/ or .scratchpad/pr-NNNN/ and opens it for preview. Starts no server; offers a command for anyone who wants one. Use when asked to explain, write up, or produce an explainer for an issue or PR.

Its SKILL.md is about 3.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including assets.

It sits in Development, covering Pull requests. It works with GitHub. The repository describes itself as: Enterprise-ready MCP Gateway & Registry that centralizes AI development tools with secure OAuth authentication, dynamic tool discovery, and unified access for both autonomous AI… The licence is Apache-2.0.

When your agent uses it

  • Asked to explain
  • Produce an explainer for an issue

Example prompts

  • “/explainer”

Requirements

  • Python 3

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. gather
  2. verify before you explain
  3. write the three levels
  4. the markdown file
  5. the HTML file
  6. validate the HTML
  7. hand over, and offer the server as an option

What it can do on your machine

Read from SKILL.md and the folder at commit ec3a197. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • python3
    • git
    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Explainer loads about 3.8k tokens when it runs. Until then it costs about 98 tokens; SKILL.md has 1,761 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~98
When it runs · the whole SKILL.md, loaded when a task matches
~3.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from agentic-community/mcp-gateway-registry at commit ec3a197, republished under its Apache-2.0 licence (© agentic-community). 1,761 words, ~3,830 tokens.

Download SKILL.mdSave it as .claude/skills/explainer/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
explainer
description
Explain a GitHub issue or pull request at 100, 200, and 300 level. Verifies every claim against the code, then writes a markdown and a self-contained HTML version into .scratchpad/issue-NNNN/ or .scratchpad/pr-NNNN/ and opens it for preview. Starts no server; offers a command for anyone who wants one. Use when asked to explain, write up, or produce an explainer for an issue or PR.
license
Apache-2.0
metadata.author
mcp-gateway-registry
metadata.version
1.1

Explainer Skill

Turn a GitHub issue or pull request into an explainer a colleague can read at whatever depth they need. Three levels, one document: 100 for anyone, 200 for how it works, 300 for the code.

Apply the writing skill to every word of prose. Invoke it, then run its revision pass before you write the file. No emojis and no em-dashes anywhere, per the repo rules.

Inputs

Accept any of these and resolve to a number plus a kind:

  • A full URL: https://github.com/agentic-community/mcp-gateway-registry/issues/1832
  • A PR URL: .../pull/1711
  • A bare reference: #1832, 1832, owner/repo#1832

A URL containing /pull/ is a PR. Everything else needs a check, because gh issue view succeeds on PRs too. Run gh pr view <n> --json number and treat a clean exit as a PR.

Write output to .scratchpad/issue-NNNN/ or .scratchpad/pr-NNNN/. Create it with mkdir -p. .scratchpad/ is gitignored, so nothing you write here can be committed.

Step 1: gather

For an issue:

bash
gh issue view <n> --json number,title,state,labels,author,createdAt,body,comments

For a PR, get the discussion and the diff:

bash
gh pr view <n> --json number,title,state,author,createdAt,body,comments,files,additions,deletions,baseRefName,headRefName
gh pr diff <n>

Record the commit you verified against, and use it to pin every code link:

bash
git rev-parse --short HEAD

Step 2: verify before you explain

This step is what separates a useful explainer from a paraphrase. Do not restate the author's claims. Check them.

For every factual claim in the issue or PR body:

  1. Open the file it names and confirm the symbol, line, and behavior still exist.
  2. Confirm the mechanism really works the way the author says. Read the dependency's own source when the claim is about library behavior, rather than trusting recollection.
  3. Look for the claim's siblings. A bug in one call site usually has more; grep the pattern repo-wide and count them.
  4. Note where the report is right, and note where it has drifted. Code moves, and an issue filed against an older release often describes something that has since changed. Say so, with the current line reference.
  5. Look for the trap in the obvious fix. If the naive patch would introduce a different bug or a security regression, that belongs in the explainer, usually as a callout in the 300 section.

Carry only verified claims into the document. If something matters but you could not confirm it, say that plainly in the open-questions section rather than smoothing it over.

Step 3: write the three levels

Same content in both files, written once as markdown and then ported to HTML. Levels are cumulative depth, not three summaries of the same thing.

100, what and why. Anyone technical can follow it without knowing this codebase. What breaks or what the change does, who it affects, why it is worth attention. No line numbers and no code blocks. Roughly 150 to 250 words.

200, how it works. The mechanism and where it lives. Name the components and files, include one diagram, give the sequence of what happens. File references are fine; save line-level detail for 300. Roughly 400 to 600 words.

300, deep dive. The code. Line-pinned references, short excerpts of the lines that matter, the traps, the blast radius, what a fix has to preserve, the test surface, and open questions. As long as it needs to be.

End with open questions for the author when the report left anything ambiguous. Three or four at most, each one answerable.

Step 4: the markdown file

Write explainer.md in the output directory. Use ## for the three level headings so the structure survives a plain markdown reader.

Open with a one-line italic byline. It must carry three links, so a reader landing on the file alone can get to the source, the person, and the code state:

  • The issue or PR, linked by its number: [PR #1831](https://github.com/<owner>/<repo>/pull/1831) or [issue #1832](https://github.com/<owner>/<repo>/issues/1832).
  • The author, linked to their GitHub profile: [AUTHOR_LOGIN](https://github.com/AUTHOR_LOGIN). Use the login from gh, not the display name, since the login is what resolves as a profile URL. Never guess a profile URL for a name you did not get from gh.
  • The commit you verified against, linked to its commit page.

For a PR, also give the size (N added, M deleted, across K files) and name the base state you checked the before-behavior against. For an issue, name the release it was filed against when the reporter stated one.

markdown
*Verified against `main` at [8f2bfacb](https://github.com/OWNER/REPO/commit/8f2bfacb) for the pre-change state, and the PR head at `b7fe89d7`. Source: [PR #1831](https://github.com/OWNER/REPO/pull/1831) by [AUTHOR_LOGIN](https://github.com/AUTHOR_LOGIN). 124 added, 6 deleted, across 2 files.*

Pull the author login and the PR head from the same gh call you already made:

bash
gh pr view <n> --json author,headRefOid -q '.author.login + " " + .headRefOid[0:8]'
gh issue view <n> --json author -q .author.login

Step 5: the HTML file

Copy the template, then fill it in:

bash
cp .claude/skills/explainer/assets/template.html <outdir>/explainer.html

Replace {{TITLE}} (twice, in <title> and <h1>), {{BYLINE}}, {{BODY}}, and {{FOOTER}}.

{{BYLINE}} renders inside a <p class="byline">, so pass HTML, not markdown. It carries the same three links as the markdown byline (issue or PR, author profile, verified commit):

html
Verified against <code>main</code> at <a href="...../commit/8f2bfacb">8f2bfacb</a>. Source:
<a href="...../pull/1831">PR #1831</a> by <a href="https://github.com/AUTHOR_LOGIN">AUTHOR_LOGIN</a>.
``` The template is self-contained by design: all CSS inline, no webfonts, no CDN, no JavaScript. It must render from `file://` with no network. Never add an external reference.

Keep the level structure the template's nav expects:

```html
<h2 id="level-100"><span class="level-badge l100">100</span>What is going on</h2>
<p class="level-intro">One line on who this section is for.</p>

Classes the template provides: .callout with a .callout-label for the one thing a reader must not miss, .level-badge with .l100 / .l200 / .l300, and figure / figcaption for diagrams. Tables are styled already.

Diagrams

Hand-author inline SVG. No Mermaid and no diagram library, because both need a CDN and would break offline rendering. Use the template's SVG classes so the diagram follows light and dark mode: .box for nodes, .flow for normal arrows, .bad plus .bad-text for the failing path, .label for annotations, .mono for code-ish text.

Prefer one diagram that earns its place over three that decorate. A request flow with the broken hop marked, or a before-and-after of a code path, is usually the one worth drawing.

html
<figure>
  <svg viewBox="0 0 640 120" role="img" aria-label="Describe the diagram for screen readers">
    <rect class="box" x="8" y="30" width="150" height="54" rx="6"/>
    <text x="83" y="62" text-anchor="middle">registry pod</text>
    <path class="bad" d="M166 57 H 300" marker-end="url(#arrow-bad)"/>
    <text class="bad-text" x="233" y="46" text-anchor="middle">ConnectTimeout</text>
    <rect class="box" x="308" y="30" width="150" height="54" rx="6"/>
    <text x="383" y="62" text-anchor="middle">upstream</text>
    <defs>
      <marker id="arrow-bad" viewBox="0 0 10 10" refX="9" refY="5"
              markerWidth="6" markerHeight="6" orient="auto-start-reverse">
        <path d="M0 0 L10 5 L0 10 z" fill="currentColor"/>
      </marker>
    </defs>
  </svg>
  <figcaption>Caption that says what the reader should take away.</figcaption>
</figure>

Give every svg a role="img" and an aria-label. Put each marker in a defs block inside the same SVG, since ids must not collide across diagrams on one page.

Pin links to the commit you verified against, never to main, so line numbers stay accurate:

https://github.com/agentic-community/mcp-gateway-registry/blob/<sha>/registry/utils/url_guard.py#L1151-L1155

Reference a path in the repo as a link. Reference a path outside the repo, such as a file in .venv, as plain <code> with no link, and say in the footer that it refers to an installed dependency rather than this repo. State in the footer which commit the line numbers belong to.

Show full SKILL.md (770 more words)Show less

Step 6: validate the HTML

Never hand over HTML you have not parsed. Check structure and self-containment:

bash
python3 - <<'PY'
from html.parser import HTMLParser
VOID = {"meta","br","hr","img","input","link","source","area","base","col","embed","param","track","wbr",
        "path","rect","circle","line","polygon","polyline","ellipse","use","stop"}
class C(HTMLParser):
    def __init__(self): super().__init__(convert_charrefs=True); self.s=[]; self.e=[]
    def handle_startendtag(self,t,a): pass   # a self-closing tag is balanced by definition
    def handle_starttag(self,t,a):
        if t not in VOID: self.s.append((t,self.getpos()[0]))
    def handle_endtag(self,t):
        if t in VOID: return
        if not self.s: self.e.append(f"line {self.getpos()[0]}: stray </{t}>"); return
        top,ln=self.s.pop()
        if top!=t: self.e.append(f"line {self.getpos()[0]}: </{t}> closes <{top}> from line {ln}")
src=open("OUTDIR/explainer.html",encoding="utf-8").read()
c=C(); c.feed(src)
print("errors:", c.e or "none")
print("unclosed:", c.s or "none")
print("external refs:", [w for w in ("src=","@import","cdn.","fonts.googleapis","http-equiv") if w in src] or "none")
print("placeholders left:", [p for p in ("{{TITLE}}","{{BYLINE}}","{{BODY}}","{{FOOTER}}") if p in src] or "none")
print("em-dash:", "\u2014" in src)  # the banned long dash
PY

Fix anything it reports. external refs, placeholders left, and em-dash must all come back clean.

Then run the prose gate on both files. This one is required, not advisory: an explainer is generated prose, so it has no excuse for carrying a tell.

bash
uv run python scripts/prose-scan.py --strict <outdir>/explainer.md <outdir>/explainer.html

--strict exits non-zero on any hit. Fix every hit and run it again until it reports no prose tells found. Rewrite the sentence rather than reaching for a synonym that slips past the regex; the regex is a net for the habit, not the rule itself.

Do not skip this because you already loaded the writing skill. Loading the skill and skipping its revision pass is exactly how a tell reaches the file: the HTML gate above gets run because it is a command, and the prose pass gets skipped because it is advice. That is why this one is a command too.

Step 7: hand over, and offer the server as an option

Do not start a server. The HTML is self-contained, so most readers need nothing running, and starting a process the user did not ask for leaves something listening on their machine that they then have to find and stop.

Open the file in the editor so a preview is one click away:

bash
code -r <outdir>/explainer.html

Then give the reader three ways in, cheapest first. The first two need no command at all:

  1. The Live Preview button in the editor title bar for the focused HTML file.
  2. Right-click the file and Download, then open the local copy. The file has no external references, so this works offline and always.
  3. A local HTTP server, only if they want one. Offer the command; do not run it.
The server command

Offer it as one paste-ready line, rooted at the document's own directory:

bash
python3 -m http.server 8111 --bind 127.0.0.1 --directory /abs/path/to/.scratchpad/pr-NNNN

Then the URL is http://127.0.0.1:8111/explainer.html, or drop the filename for a directory listing.

Four things to get right:

  • Use the absolute path, since the user may paste this from any working directory.
  • Keep --bind 127.0.0.1. Never offer a command that binds 0.0.0.0.
  • Point --directory at the single document's folder, never at .scratchpad/ itself. That folder holds credential files (.hftoken, .oai, .bedrock, .gh-client-id-secret), and http.server serves everything below its root. If several documents need to be reachable at once, copy the generated HTML into a folder of its own and serve that; the files are self-contained, so a copy works.
  • Have the user run it in a VS Code integrated terminal. That is what makes VS Code forward the port so a browser on their laptop can reach it. A server started any other way listens only on the host and gives ERR_CONNECTION_REFUSED.

Say which port you picked and mention nothing is listening until they run it. If a port is already taken the command fails with "Address already in use", so suggest a fresh one rather than reusing a port from an earlier session.

Formatting the handover

Put the URL on its own line as a bare autolink and each command in its own fenced block:

markdown
The explainer is at `.scratchpad/pr-1833/explainer.html`. Open it with the Live Preview
button, or download it and open the copy.

If you want it over HTTP instead, paste this into a VS Code integrated terminal:

```bash
python3 -m http.server 8111 --bind 127.0.0.1 --directory /home/ubuntu/repos/mcp-gateway-registry/.scratchpad/pr-1833
```

Then open:

http://127.0.0.1:8111/explainer.html

Rules that keep those blocks usable:

  • A bare URL on its own line renders as a clickable link in the terminal and in the chat. Do not wrap it in backticks, which kills the link, and do not bury it mid-sentence.
  • One command per fenced block, and nothing else in that fence. The copy button takes the whole fence, so a comment line or a second command makes the paste fail or do something unintended.
  • Never retype a path or port by hand. Use the real output directory.
  • Do not present the URL as if something is already serving it. Say it works once they run the command.

One trap worth repeating if preview misbehaves: pasting a VS Code Live Preview URL into an external browser returns an empty 401 from port 3000, which renders as a blank white page showing the raw URL in the tab title instead of the document title. Live Preview's openPreviewTarget needs to be Embedded Preview. A blank page means the request reached a server and got an empty body; connection refused means it never arrived. Do not confuse the two.

Handover

Report where both files landed and the commit you verified against. Lead your message with one line naming the audience you wrote for, so the user can correct it. Say plainly where the issue or PR was wrong or out of date, and list anything you could not verify.

Do not claim a server is running unless you started one because the user asked.

© agentic-community, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (assets) in .claude/skills/explainer of agentic-community/mcp-gateway-registry.

  • SKILL.md
  • assets/template.html

Open the folder on GitHubat commit ec3a197

Compare with similar skills

Explainer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Explainer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Explainer this skillagentic-community/mcp-gateway-registry962—~3.8kAutomated safety check: PassApache-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Check PRonyx-dot-app/onyx32k2 repos~2.3kAutomated safety check: PassMIT
Contributor-First PR MergeHKUDS/OpenHarness16k1 repos~847Automated safety check: PassMIT
Create Pull Requestcline/cline70k1 repos~1.6kAutomated safety check: PassApache-2.0
Pull Request Title and Body Writeropeninterpreter/openinterpreter69k2 repos~1.1kAutomated safety check: PassApache-2.0

Similar skills

  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Check PR

    onyx-dot-app/onyx

    Checks a GitHub, GitLab, or Perforce (p4) pull request (or merge request, or shelved changelist) for unresolved review comments, failing status checks, and incomplete PR descriptions.

    32k GitHub starsUsed in 2 repos~2.3k tokens
    DevelopmentAuto-check passed
  • Merges external GitHub pull requests while keeping the original author credited, and fixes conflicts after the merge instead of rewriting the contribution.

    16k GitHub starsUsed in 1 repo~847 tokens
    DevelopmentAuto-check passed
  • Opens a GitHub pull request from your current branch with the gh CLI, after reviewing the commits and diff and gathering the details the PR needs.

    70k GitHub starsUsed in 1 repo~1.6k tokens
    DevelopmentAuto-check passed
  • Pull Request Title and Body Writer

    openinterpreter/openinterpreter

    Rewrites the title and body of one or more pull requests with gh, leading with why the change was made, then what changed, and describing only the net result.

    69k GitHub starsUsed in 2 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Official

    Runs a loop on a GitHub pull request: fetch review state, triage comments into actions, implement them and resolve threads, repeating until nothing actionable is left.

    48k GitHub stars~2.2k tokensUpdated yesterday
    DevelopmentAuto-check passed

More from agentic-community/mcp-gateway-registry

All 17 skills in this repo
  • Debug

    agentic-community/mcp-gateway-registry

    Debug issues in the MCP Gateway Registry using first-principles thinking.

    962 GitHub stars~1.8k tokensUpdated yesterday
    Auto-check: notes
  • Infra Sync

    agentic-community/mcp-gateway-registry

    Keep Terraform and CDK infrastructure in sync. An agent skill from agentic-community/mcp-gateway-registry.

    962 GitHub stars~2.7k tokensUpdated yesterday
    Auto-check passed
  • Search Benchmark

    agentic-community/mcp-gateway-registry

    Generate a search quality benchmark for the AI Registry. An agent skill from agentic-community/mcp-gateway-registry.

    962 GitHub stars~1.9k tokensUpdated yesterday
    Auto-check passed
  • Writing

    agentic-community/mcp-gateway-registry

    Write prose people will actually read. An agent skill from agentic-community/mcp-gateway-registry.

    962 GitHub stars~3.5k tokensUpdated yesterday
    Auto-check passed
  • Agentcore Register

    agentic-community/mcp-gateway-registry

    Given an MCP server URL, probe the server via curl to discover its metadata and tools, then generate a markdown file with copy-pasteable content for each field in the Amazon Bedrock AgentCore…

    962 GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Benchmark Report

    agentic-community/mcp-gateway-registry

    Generate a benchmark report from stress test results (registration, API performance, search concurrency).

    962 GitHub stars~590 tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about Explainer

What does Explainer do?

Explain a GitHub issue or pull request at 100, 200, and 300 level. Explainer is an agent skill from agentic-community/mcp-gateway-registry. Explain a GitHub issue or pull request at 100, 200, and 300 level.

When should I use Explainer?

Explainer fits situations like: asked to explain; produce an explainer for an issue.

How do I install Explainer in Claude Code?

Run `npx skills add agentic-community/mcp-gateway-registry --skill explainer -a claude-code`. Or copy the skill folder (.claude/skills/explainer in agentic-community/mcp-gateway-registry) into .claude/skills/explainer in your project. Claude Code loads it when a task matches its description.

How do I install Explainer in Codex?

Run `npx skills add agentic-community/mcp-gateway-registry --skill explainer -a codex`. Or copy the skill folder (.claude/skills/explainer in agentic-community/mcp-gateway-registry) into .agents/skills/explainer in your project. Codex loads it when a task matches its description.

Can I use Explainer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add agentic-community/mcp-gateway-registry --skill explainer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/explainer, .gemini/skills/explainer, .github/skills/explainer and .opencode/skills/explainer in your project.

What does Explainer need to run?

Going by SKILL.md and its folder, Explainer needs the command-line tools its instructions call (gh, python3, git and uv). Our summary lists: Python 3.

Does Explainer access the network?

SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Explainer safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Explainer use?

Explainer is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Explainer use?

About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Explainer?

Skills that share tags, products or a category with Explainer: PR Babysitter (openinterpreter/openinterpreter, 69k stars), Check PR (onyx-dot-app/onyx, 32k stars), Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars) and Create Pull Request (cline/cline, 70k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Explainer?

agentic-community (a GitHub organization) maintains it in agentic-community/mcp-gateway-registry, which has 962 GitHub stars. The repository holds 17 skills in this directory. The repository was last updated on October 6, 2026.

Source: agentic-community/mcp-gateway-registry on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.