OpenAPI to MCP Server
mcp-use/mcp-use
Turns an OpenAPI or Swagger spec into an MCP server with the mcp-use TypeScript SDK, mapping each operation to a tool, wiring auth, testing and deploying.
Reviews pull requests for the Confluent MCP server. An agent skill from confluentinc/mcp-confluent.
$ npx skills add confluentinc/mcp-confluent --skill pr-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install confluentinc/mcp-confluent pr-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/confluentinc/mcp-confluent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/pr-review .claude/skills/pr-review && rm -rf skills-srcUse ~/.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/
Install the "pr-review" agent skill from https://github.com/confluentinc/mcp-confluent/tree/main/.claude/skills/pr-review into .claude/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/confluentinc/mcp-confluent/tree/main/.claude/skills/pr-reviewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add confluentinc/mcp-confluent --skill pr-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install confluentinc/mcp-confluent pr-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/confluentinc/mcp-confluent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/pr-review .agents/skills/pr-review && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "pr-review" agent skill from https://github.com/confluentinc/mcp-confluent/tree/main/.claude/skills/pr-review into .agents/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add confluentinc/mcp-confluent --skill pr-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install confluentinc/mcp-confluent pr-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/confluentinc/mcp-confluent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/pr-review .cursor/skills/pr-review && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "pr-review" agent skill from https://github.com/confluentinc/mcp-confluent/tree/main/.claude/skills/pr-review into .cursor/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/confluentinc/mcp-confluent.git --path .claude/skills/pr-review--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add confluentinc/mcp-confluent --skill pr-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install confluentinc/mcp-confluent pr-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/confluentinc/mcp-confluent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/pr-review .gemini/skills/pr-review && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "pr-review" agent skill from https://github.com/confluentinc/mcp-confluent/tree/main/.claude/skills/pr-review into .gemini/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install confluentinc/mcp-confluent pr-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add confluentinc/mcp-confluent --skill pr-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/confluentinc/mcp-confluent.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/pr-review .github/skills/pr-review && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "pr-review" agent skill from https://github.com/confluentinc/mcp-confluent/tree/main/.claude/skills/pr-review into .github/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add confluentinc/mcp-confluent --skill pr-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install confluentinc/mcp-confluent pr-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/confluentinc/mcp-confluent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/pr-review .opencode/skills/pr-review && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "pr-review" agent skill from https://github.com/confluentinc/mcp-confluent/tree/main/.claude/skills/pr-review into .opencode/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
pr-reviewReviews pull requests for the Confluent MCP server. An agent skill from confluentinc/mcp-confluent.
PR Review is an agent skill from confluentinc/mcp-confluent. Reviews pull requests for the Confluent MCP server. Use when reviewing PRs, doing self-review before sharing with the team, or when the user mentions "review PR", "help with PR", "review changes", "self-review", "review local changes", or "check my PR". Focuses on MCP tool wiring, OpenAPI/type coupling, ESM stubbability, transport security, and project-specific patterns.
Its SKILL.md is about 4.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Pull requests, MCP servers and OpenAPI specifications. It works with OpenAPI, Model Context Protocol and TypeScript. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 76cffd5. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadBashGrepGlobTaskFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghgitpnpmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, git and pnpm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
PR Review loads about 4.6k tokens when it runs. Until then it costs about 96 tokens; SKILL.md has 1,730 words of instructions outside code blocks.
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.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
`config.example.yaml`, `.env.example`, `.env.integration.example` (user-facing configuration)- [ ] No secrets in the diff: `.env`, `.env.integration`, real API keys, real cluster IDsI key or PEM smuggled into a fixture or `.env.integration` exampleallowed-tools: Read, Bash, Grep, Glob, TaskAutomated 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.
The full file from confluentinc/mcp-confluent at commit 76cffd5, republished under its MIT licence (© confluentinc). 1,730 words, ~4,623 tokens.
.claude/skills/pr-review/SKILL.md (or your agent's skills folder).Reviews pull requests for the Confluent MCP (Model Context Protocol) server, focusing on project-specific patterns and the failure modes most likely to slip past TypeScript and lint.
The mode is selected by the invocation context, not by the user. If the user supplies a PR number/URL or asks about someone else's PR, run Formal Review Mode. Otherwise (no PR number, working from a local branch, phrases like "self-review" or "check my PR") run Self-Review Mode. When ambiguous, ask which mode to use.
Use when: the author wants to check their own changes before sharing with the team. Typically used on a draft PR or against local changes before pushing.
Goals:
Use when: a reviewer needs to evaluate a PR from another team member.
Goals:
For local changes (self-review):
# files changed since divergence from main
git diff main --name-only
# overview and full diff
git diff main --stat
git diff mainFor GitHub PRs:
# PR metadata
gh pr view <PR_NUMBER> --json number,title,body,author,baseRefName,headRefName,additions,deletions,changedFiles,state,reviewDecision
# if no PR number is given, try the current branch
gh pr view --json number,title,body,author,baseRefName,headRefName,additions,deletions,changedFiles,state,reviewDecision
# diff
gh pr diff <PR_NUMBER>
# existing reviews and inline comments
gh pr view <PR_NUMBER> --json reviews,comments
# referenced issues
gh issue view <ISSUE_NUMBER> --json body,commentsSKIP these paths entirely (auto-generated or vendored):
dist/** (compiled output)node_modules/**coverage/**src/confluent/openapi-schema.d.ts (generated by pnpm run generate:openapi-types)pnpm-lock.yaml (review only top-level dependency changes via package.json)TEST-result.xmlDO review carefully (small file, big blast radius):
openapi.json (paired with the regenerated .d.ts)package.json (new deps, scripts, engine bumps)config.example.yaml, .env.example, .env.integration.example (user-facing configuration)vitest.config.ts, tsconfig.json, tsconfig.build.json, eslint.config.mjs.semaphore/** (CI configuration)Dockerfile, docker-compose.yml| Category | File patterns | What to check |
|---|---|---|
| Tool handlers | src/confluent/tools/handlers/<domain>/** | Enum entry, registry entry, enabledConnectionIds, Zod schema |
| Tool registry | src/confluent/tools/tool-registry.ts | New handler imported and added to handlers map |
| Tool name enum | src/confluent/tools/tool-name.ts | New enum member with stable string value |
| Connection predicates | src/confluent/tools/connection-predicates.ts | New predicate composes existing service-block checks |
| Domain base classes | src/confluent/tools/handlers/<domain>/*-tool-handler | Domain-wide gating still correct after edits |
| Client managers | src/confluent/{base-,direct-,}client-manager.ts | Client lifecycle, single source of truth per connection |
| Configuration | src/config/**, src/env-schema.ts | Zod schema, YAML interpolation, both config paths covered |
| Transports | src/mcp/transports/** | API-key auth, DNS rebinding protection, port handling |
| OpenAPI surface | openapi.json | Regenerated .d.ts is committed in the same PR |
| Unit tests | **/*.test.ts (excluding *.integration.test.ts) | Vitest patterns, node-deps.ts indirection, no vi.mock |
| Integration tests | **/*.integration.test.ts, tests/harness/** | Credential gating via early-return, tags, startServer |
| CI / release | .semaphore/**, scripts/**, Dockerfile | No skipped checks, no smuggled secrets |
| Docs | README.md, docs/**, CHANGELOG.md, telemetry.md | Accuracy, MCP-tool inventory, user-facing wording |
| Project rules / skills | .claude/rules/**, .claude/skills/** | Frontmatter, path globs, trigger phrases |
IMPORTANT: only review lines that were actually changed in the PR diff. Context lines from the diff are for understanding, not for review. Do not flag pre-existing issues in unchanged code.
A new MCP tool needs all four of:
ToolName enum (src/confluent/tools/tool-name.ts)BaseToolHandler (or a domain subclass like FlinkToolHandler)enabledConnectionIds(runtime) using a predicate from connection-predicates.tsToolHandlerRegistry.handlers (src/confluent/tools/tool-registry.ts)Red flags:
tool-registry.ts change → tool will not be loadedhasKafka for a Schema Registry tool) → tool enables on the wrong
connections and silently no-ops or errorsThe canonical wiring lives in .claude/rules/tool-handlers.md, which auto-loads when files under
src/confluent/tools/**/*.ts are touched.
If openapi.json changed:
src/confluent/openapi-schema.d.ts is regenerated and committed in the same PR.d.ts reflects the spec change (no stale paths or schemas)If openapi-schema.d.ts changed without openapi.json changing, the file was hand-edited - flag
it. The generator is pnpm run generate:openapi-types; the file should never be edited manually.
node-deps.tsESM named imports are read-only from outside the defining module, so vi.spyOn cannot intercept
direct named imports. This project's workaround is src/confluent/node-deps.ts: external I/O
(filesystem, env, network not via openapi-fetch/Kafka clients, third-party constructors) routes
through that namespace, and tests spy on the wrapper.
Red flags in non-test code:
// BAD: direct named import at use site → not stubbable
import { readFile } from "node:fs/promises";
const config = await readFile(path, "utf8");
// GOOD: route through node-deps for stubbability
import { nodeDeps } from "@src/confluent/node-deps.js";
const config = await nodeDeps.readFile(path, "utf8");Red flag in tests: vi.mock(...) calls. The project does not use vi.mock; wrap the dependency
in node-deps.ts and use vi.spyOn(nodeDeps, "readFile") instead. The /vitest skill confirms
the patterns.
any (the project disables noImplicitAny for OpenAPI types, but explicit
any at use sites is still a code smell)openapi-fetch with typed paths from the generated schema, not raw fetch.js extensions (ESM requirement) and @src/* for internal modules@ts-ignore / @ts-expect-error without a comment explaining whyBaseClientManager owns REST and Schema Registry; DirectClientManager
adds Kafka admin/producer/consumer. New client kinds extend, not inflate, these.enabledConnectionIds(runtime) uses an existing predicate where one fitsruntime.connections ad hocFlinkToolHandler) implement enabledConnectionIds once for
the whole domain; per-handler overrides should be rare and well-justifiedMCPServerConfiguration is produced by either loadConfigFromYaml() (-c <path>) or
buildConfigFromEnvAndCli() (legacy env+CLI). Both produce the same Zod-validated shape.
src/config/models.ts AND honored
by buildConfigFromEnvAndCli (or explicitly excluded from the legacy path with a note)config.example.yaml and .env.example are updated when user-facing config changes${VAR} interpolation continues to work for any new YAML fieldsinfo level or above; sensitive fields are redacted
(Pino's redact option, configured in src/logger.ts)src/logger.ts (Pino), not console.log / console.errorlogger.error({ err }) so Pino's serializer captures stack traces.claude/rules/unit-tests.md (assertion style, stubbing patterns,
handler test structure, fake timers).claude/rules/integration-tests.md: colocated
*.integration.test.ts, tags on outer describe, credential gating via early-return
(NOT describe.skipIf, which still runs nested hooks in vitest 4)createMockInstance(Class) from @tests/stubs/index.js.only left in test filesvi.mock (the project pattern is node-deps.ts + vi.spyOn)Use the /vitest skill to verify spy/mock APIs against current Vitest docs.
.env, .env.integration, real API keys, real cluster IDsimport type { } vs import { } - both valideslint-plugin-unused-imports## Self-Review Summary
### Changes Overview
[Brief summary of what changed]
### Critical Requirements Checklist
- [ ] Tool Wiring (enum + handler + predicate + registry): [status, location of any gap]
- [ ] OpenAPI / Types Coupling: [status]
- [ ] ESM Stubbability (node-deps): [status]
- [ ] Type Safety: [status]
- [ ] Transport Security: [status, if applicable]
### Issues to Address Before PR
1. [High-priority issue with file:line]
2. [Medium-priority issue with file:line]
### Suggestions (Optional)
- [Nice-to-have improvements]
### Ready for Review?
[Yes / Not yet, with reasoning]## PR Review: #{number} - {title}
**Author:** {author}
**Branch:** {headRefName} → {baseRefName}
**Changes:** +{additions} / -{deletions} across {changedFiles} files
### Summary
[2-3 sentence summary of what the PR does and why]
### Changed Components
- [Categorized list of changed files, excluding auto-generated]
### Findings
#### Issues (Must Fix)
- [ ] **[category]**: [description] - `file:line`
#### Suggestions (Consider)
- [ ] **[category]**: [description] - `file:line`
#### Positive Observations
- [Good patterns, thorough tests, well-written code]
### Test Coverage Assessment
- **New tests added:** [Yes/No, list test files]
- **Coverage gaps:** [Untested paths or edge cases]
- **Unit vs integration balance:** [Assessment]
### Configuration & Security Notes
[Any concerns about transport security, secret handling, config surface, or CCloud auth]
### Recommendation
**[APPROVE / REQUEST CHANGES / NEEDS DISCUSSION]**
[Brief rationale]Use these labels in findings:
| Category | Description |
|---|---|
tool-wiring | Missing enum / handler / registry / predicate hookup |
openapi | openapi.json and .d.ts out of sync, or hand-edited generated file |
stubbability | New external I/O bypasses node-deps.ts; vi.mock introduced |
types | Explicit any, missing Zod schema, raw fetch over openapi-fetch |
config | YAML and env-var paths drift; missing example-file update |
transport | Auth or DNS-rebinding regression; unauthenticated endpoint |
secrets | Credentials in diff, logs, or fixtures |
testing | Missing tests, wrong mocking pattern, .only left in |
logging | console.* in src code, secret leaks in log lines |
docs | CHANGELOG missing for user-facing change; stale README example |
style | Naming, conventions where Prettier/ESLint do not already enforce |
performance | Synchronous I/O in hot paths, unbounded fetches |
tool-registry.tsenabledConnectionIds returns [] unconditionally → tool never enablesopenapi.json updated, openapi-schema.d.ts not regenerated → callers still see the old typeopenapi-schema.d.ts hand-edited because regeneration "broke things" - fix the spec insteadvi.mock(...) introduced as a shortcut → maintenance landmine; use node-deps.ts insteaddescribe.skipIf(!hasCreds) in integration tests → nested hooks still run on vitest 4buildConfigFromEnvAndCli - env-var users get a
silently incomplete config.env.example / config.example.yaml not updated → onboarding breakage.env.integration exampleAuthorization headersNODE_ENV=testawait in a tight loop where Promise.all would doToolName enum → handler → registry → predicate; if any link is missing,
the tool is dead codeTask with the Explore agent for deeper codebase context (for example, "find all callers
of nodeDeps.readFile to estimate the blast radius of a signature change")/mcp-docs for MCP protocol questions (tool annotations, resource shapes, transport spec)/vitest for spy/mock APIs and Vitest 4 behaviorsrc/confluent/tools/**, **/*.test.ts, or tests/**, the matching
.claude/rules/ files (tool-handlers.md, unit-tests.md, integration-tests.md) auto-load
with the canonical conventions - consult them rather than re-deriving the rules from the diff.© confluentinc, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/pr-review of confluentinc/mcp-confluent.
Open the folder on GitHubat commit 76cffd5
PR Review 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| PR Review this skillconfluentinc/mcp-confluent | 167 | — | ~4.6k | Automated safety check: Notes | MIT | |
| OpenAPI to MCP Servermcp-use/mcp-use | 11k | — | ~5.2k | Automated safety check: Pass | Apache-2.0 | |
| Frontmcp Developmentagentfront/frontmcp | 146 | — | ~11k | Automated safety check: Pass | Apache-2.0 | |
| MCP Server Builderalirezarezvani/claude-skills | 28k | — | ~985 | Automated safety check: Pass | MIT | |
| MCP Server Builderborghei/Claude-Skills | 886 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Dashclaw Shipucsandman/DashClaw | 310 | — | ~7.2k | Automated safety check: Pass | MIT |
mcp-use/mcp-use
Turns an OpenAPI or Swagger spec into an MCP server with the mcp-use TypeScript SDK, mapping each operation to a tool, wiring auth, testing and deploying.
agentfront/frontmcp
A skill your agent uses when building any FrontMCP server component other than a tool (for tools, use create-tool).
alirezarezvani/claude-skills
Design and ship production-ready MCP (Model Context Protocol) servers from OpenAPI contracts instead of hand-written tool wrappers.
borghei/Claude-Skills
Build MCP (Model Context Protocol) servers with tool definitions, resource providers, prompt templates, and transports.
ucsandman/DashClaw
The single command that gets a DashClaw change ON MAIN AND LIVE — it resolves everything blocking production, never defers, and never hands back a checklist.
trycompai/comp
A skill your agent uses when generating an MCP server from an OpenAPI spec with Speakeasy.
confluentinc/mcp-confluent
A skill your agent uses when the user asks about Vitest mocking, spies, stubs, fake timers, config, or test runner behavior.
confluentinc/mcp-confluent
A skill your agent uses when the user asks about Model Context Protocol details (protocol spec, transports, authorization, tools/resources/prompts, sampling/elicitation/roots, server/client…
Works with
Categories
Reviews pull requests for the Confluent MCP server. An agent skill from confluentinc/mcp-confluent. PR Review is an agent skill from confluentinc/mcp-confluent. Reviews pull requests for the Confluent MCP server.
PR Review fits situations like: doing self-review before sharing with the team; the user mentions review PR; review local changes.
Run `npx skills add confluentinc/mcp-confluent --skill pr-review -a claude-code`. Or copy the skill folder (.claude/skills/pr-review in confluentinc/mcp-confluent) into .claude/skills/pr-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add confluentinc/mcp-confluent --skill pr-review -a codex`. Or copy the skill folder (.claude/skills/pr-review in confluentinc/mcp-confluent) into .agents/skills/pr-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add confluentinc/mcp-confluent --skill pr-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pr-review, .gemini/skills/pr-review, .github/skills/pr-review and .opencode/skills/pr-review in your project.
Going by SKILL.md and its folder, PR Review needs the command-line tools its instructions call (gh, git and pnpm). Our summary lists: Docker. Its frontmatter pre-approves these tools: Read, Bash, Grep, Glob, Task.
SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file; pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
PR Review is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.6k tokens (SKILL.md is roughly 18k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with PR Review: OpenAPI to MCP Server (mcp-use/mcp-use, 11k stars), Frontmcp Development (agentfront/frontmcp, 146 stars), MCP Server Builder (alirezarezvani/claude-skills, 28k stars) and MCP Server Builder (borghei/Claude-Skills, 886 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
confluentinc (a GitHub organization) maintains it in confluentinc/mcp-confluent, which has 167 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 9, 2026.
Source: confluentinc/mcp-confluent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.