Skip to content

feat(skills): add laravel-plugin-discovery skill with LaraPlugins MCP#923

Merged
affaan-m merged 2 commits into
affaan-m:mainfrom
danielpetrica:main
Mar 29, 2026
Merged

feat(skills): add laravel-plugin-discovery skill with LaraPlugins MCP#923
affaan-m merged 2 commits into
affaan-m:mainfrom
danielpetrica:main

Conversation

@danielpetrica

@danielpetrica danielpetrica commented Mar 25, 2026

Copy link
Copy Markdown
Contributor
  • Add laraplugins MCP server to mcp-configs/mcp-servers.json
  • Create laravel-plugin-discovery skill for Laravel package discovery
  • Supports searching by keyword, health score, Laravel/PHP version
  • No API key required - free for Laravel community

What Changed

Why This Change

Testing Done

Ensured the new skill and mcp are used locally

  • Manual testing completed
  • Automated tests pass locally (node tests/run-all.js)
  • Edge cases considered and tested

Type of Change

  • fix: Bug fix
  • feat: New feature
  • refactor: Code refactoring
  • docs: Documentation
  • test: Tests
  • chore: Maintenance/tooling
  • ci: CI/CD changes

Security & Quality Checklist

  • No secrets or API keys committed (ghp_, sk-, AKIA, xoxb, xoxp patterns checked)
  • JSON files validate cleanly
  • Shell scripts pass shellcheck (if applicable)
  • Pre-commit hooks pass locally (if configured)
  • No sensitive data exposed in logs or output
  • Follows conventional commits format

Documentation

  • Updated relevant documentation
  • Added comments for complex logic
  • README updated (if needed)

Summary by cubic

Adds laravel-plugin-discovery skill powered by the laraplugins MCP to help find and assess Laravel packages. Supports keyword search, health scoring, and Laravel/PHP compatibility; no API key needed.

  • New Features

    • Register laraplugins MCP server for plugin discovery (https://laraplugins.io/mcp/plugins).
    • New laravel-plugin-discovery skill with usage guidance and examples.
    • Search filters: keyword, health band, vendor, Laravel version, PHP version.
    • Package details tool: health metrics, compatibility, and version history.
  • Bug Fixes

    • Aligned SKILL.md with MCP tool names and filter options; clarified examples and compatibility notes.

Written for commit eac0228. Summary will update on new commits.

Summary by CodeRabbit

  • New Features

    • Added Laravel plugin discovery: search packages by keywords, health scoring, and Laravel/PHP compatibility filters
    • Integrated LaraPlugins.io as a new MCP server endpoint for plugin search and evaluation
  • Documentation

    • Added comprehensive skill documentation with usage examples, configuration guidance, filter recommendations, and interpretation of search/details responses

- Add laraplugins MCP server to mcp-configs/mcp-servers.json
- Create laravel-plugin-discovery skill for Laravel package discovery
- Supports searching by keyword, health score, Laravel/PHP version
- No API key required - free for Laravel community
@coderabbitai

coderabbitai Bot commented Mar 25, 2026

Copy link
Copy Markdown
Contributor

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 1966808c-7b50-4f7f-b6aa-9353939b75d1

📥 Commits

Reviewing files that changed from the base of the PR and between 45baaa1 and eac0228.

📒 Files selected for processing (2)
  • mcp-configs/mcp-servers.json
  • skills/laravel-plugin-discovery/SKILL.md

📝 Walkthrough

Walkthrough

Added a new MCP server entry laraplugins (HTTP endpoint to LaraPlugins.io) and a new skill documentation file skills/laravel-plugin-discovery/SKILL.md describing tools, control flows, and usage for discovering and evaluating Laravel packages via that MCP server.

Changes

Cohort / File(s) Summary
MCP configuration
mcp-configs/mcp-servers.json
Added mcpServers.laraplugins object with type: "http", url: "https://laraplugins.io/mcp/plugins", and a description instructing use with the laravel-plugin-discovery skill.
Skill documentation
skills/laravel-plugin-discovery/SKILL.md
Added full skill documentation: when to activate the skill, MCP setup (no API key), two MCP tools (SearchPluginTool, GetPluginDetailsTool) with parameters, example flows, filtering/best-practice guidance, and interpretation of responses.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant Agent
    participant LaraPlugins as LaraPlugins MCP (https://laraplugins.io)
    participant Registry as Composer/Package Registry
    rect rgba(200,200,255,0.5)
    User->>Agent: Request "find Laravel packages for X"
    Agent->>LaraPlugins: SearchPluginTool(query, filters, pagination)
    LaraPlugins-->>Agent: Search results (packages, health, compatibility)
    Agent->>User: Present shortlisted packages
    User->>Agent: Request details for package Y
    Agent->>LaraPlugins: GetPluginDetailsTool(package: Y, include_versions?)
    LaraPlugins->>Registry: (optional) fetch version history/README
    Registry-->>LaraPlugins: package metadata
    LaraPlugins-->>Agent: Detailed metrics, compatibility, README, versions
    Agent->>User: Show package details and compatibility summary
    end
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Poem

🐰 I hopped to a new server bright and keen,
LaraPlugins glinting on my screen,
Search and details, versions to share,
I sniff out packages with careful care,
Hooray — Laravel finds what I mean!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: adding a new Laravel plugin discovery skill integrated with LaraPlugins MCP server, which aligns perfectly with the changeset contents.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 2 files


Since this is your first cubic review, here's how it works:

  • cubic automatically reviews your code and comments on bugs and improvements
  • Teach cubic by replying to its comments. cubic learns from your replies and gets better over time
  • Add one-off context when rerunning by tagging @cubic-dev-ai with guidance or docs links (including llms.txt)
  • Ask questions if you need clarification on any suggestion

@greptile-apps

greptile-apps Bot commented Mar 25, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds a laravel-plugin-discovery skill backed by the laraplugins MCP server, allowing Claude to search, evaluate, and recommend Laravel packages by keyword, health score, and version compatibility — with no API key required.

  • mcp-configs/mcp-servers.json: Registers the laraplugins HTTP MCP server using "type": "http", fully consistent with the pattern used by all other HTTP-based entries in the file (Vercel, Cloudflare, ClickHouse, etc.). The previous concern about streamable-http is resolved in this commit.
  • skills/laravel-plugin-discovery/SKILL.md: Well-structured skill document covering when to invoke the skill, both MCP tools (SearchPluginTool, GetPluginDetailsTool), filtering best practices, and worked examples. The Laravel version table now correctly includes v13. Two minor documentation inaccuracies remain: spatie/laravel-permission is cited as an authentication package result (it is an authorization/roles package), and the "Latest Laravel" vs "Current stable" labels for v13/v12 are ambiguous to readers.

Confidence Score: 5/5

Safe to merge — changes are purely additive (new MCP config entry and documentation file) with no runtime risk.

All remaining findings are P2 documentation-only style issues in the SKILL.md example and version-label wording. The MCP config entry is correct, consistent with all other HTTP entries in the file, and requires no API key. No logic, security, or correctness issues were found.

No files require special attention beyond the two minor documentation nits in skills/laravel-plugin-discovery/SKILL.md.

Important Files Changed

Filename Overview
mcp-configs/mcp-servers.json Adds laraplugins HTTP MCP entry using "type": "http", consistent with all other HTTP-based entries in the file (vercel, cloudflare-docs, clickhouse, browser-use, devfleet). No API key required.
skills/laravel-plugin-discovery/SKILL.md New skill documentation for Laravel package discovery; well-structured with usage examples and filtering guidance. Minor inaccuracies: spatie/laravel-permission listed in an authentication search example (it's an authorization package), and "Latest Laravel" vs "Current stable" labels for v13/v12 are ambiguous.

Sequence Diagram

sequenceDiagram
    participant User
    participant ClaudeCode as Claude Code
    participant Skill as laravel-plugin-discovery SKILL.md
    participant MCP as LaraPlugins MCP (laraplugins.io/mcp/plugins)

    User->>ClaudeCode: "Find a Laravel package for permissions"
    ClaudeCode->>Skill: Load skill context
    Skill-->>ClaudeCode: Tool names, filters, best practices
    ClaudeCode->>MCP: SearchPluginTool({ text_search: "permission", health_score: "Healthy" })
    MCP-->>ClaudeCode: List of packages + health indicators
    ClaudeCode->>MCP: GetPluginDetailsTool({ package: "spatie/laravel-permission", include_versions: true })
    MCP-->>ClaudeCode: Health score, version support, risk score
    ClaudeCode-->>User: Recommendation with health + compatibility summary
Loading

Reviews (2): Last reviewed commit: "fix(skills): align laravel plugin discov..." | Re-trigger Greptile

Comment thread mcp-configs/mcp-servers.json Outdated
Comment thread skills/laravel-plugin-discovery/SKILL.md
Comment thread skills/laravel-plugin-discovery/SKILL.md Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
skills/laravel-plugin-discovery/SKILL.md (1)

159-163: Avoid hardcoded “latest” year labels in compatibility tables.

Latest Laravel (2025) will age quickly. Prefer neutral wording like “newer release line” or remove year-specific recency claims.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/laravel-plugin-discovery/SKILL.md` around lines 159 - 163, Replace the
hardcoded year label "Latest Laravel (2025)" in the compatibility table with
neutral wording such as "newer release line" or "latest release line" to avoid
date rot; update the table row that currently reads `12 | Latest Laravel (2025)`
to `12 | newer release line` (or similar), and scan nearby rows (`11 | Current
stable`, `10 | Still widely used`, `9 | Legacy but common`, `5-8 | Deprecated`)
for any other year-specific phrasing and make them neutral as well.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@mcp-configs/mcp-servers.json`:
- Line 137: Change the invalid transport value by replacing the "type" field
currently set to "streamable-http" with a supported MCP transport type; for the
server entry pointing to "https://laraplugins.io/mcp/plugins" update the "type"
property to "http" so the JSON uses a valid transport ("http", "sse", or
"stdio") and the endpoint is configured correctly.

In `@skills/laravel-plugin-discovery/SKILL.md`:
- Line 11: Rename the section header "## When to Activate" to "## When to Use"
in SKILL.md so the file matches the required skill template; locate the header
text "When to Activate" and replace it with "When to Use" (also update any
internal links or references that point to the old header name if present).

---

Nitpick comments:
In `@skills/laravel-plugin-discovery/SKILL.md`:
- Around line 159-163: Replace the hardcoded year label "Latest Laravel (2025)"
in the compatibility table with neutral wording such as "newer release line" or
"latest release line" to avoid date rot; update the table row that currently
reads `12 | Latest Laravel (2025)` to `12 | newer release line` (or similar),
and scan nearby rows (`11 | Current stable`, `10 | Still widely used`, `9 |
Legacy but common`, `5-8 | Deprecated`) for any other year-specific phrasing and
make them neutral as well.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 95f73bde-804c-4ac0-afe9-c3503d1db11f

📥 Commits

Reviewing files that changed from the base of the PR and between 678fb6f and 45baaa1.

📒 Files selected for processing (2)
  • mcp-configs/mcp-servers.json
  • skills/laravel-plugin-discovery/SKILL.md

Comment thread mcp-configs/mcp-servers.json Outdated
Comment thread skills/laravel-plugin-discovery/SKILL.md Outdated
@affaan-m

Copy link
Copy Markdown
Owner

thanks, queued for review.

@affaan-m affaan-m merged commit a8e088a into affaan-m:main Mar 29, 2026
1 of 2 checks passed
peiking88 pushed a commit to peiking88/everything-claude-code that referenced this pull request Apr 4, 2026
feat(skills): add laravel-plugin-discovery skill with LaraPlugins MCP
FrancescoRosciano pushed a commit to FRosciano-Mambo/everything-claude-code that referenced this pull request Jun 1, 2026
feat(skills): add laravel-plugin-discovery skill with LaraPlugins MCP
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants