mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-30 13:43:26 +08:00
feat(skills): add laravel-plugin-discovery skill with LaraPlugins MCP
- 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
This commit is contained in:
committed by
Affaan Mustafa
parent
b6e3434ff4
commit
666c639206
229
skills/laravel-plugin-discovery/SKILL.md
Normal file
229
skills/laravel-plugin-discovery/SKILL.md
Normal file
@@ -0,0 +1,229 @@
|
||||
---
|
||||
name: laravel-plugin-discovery
|
||||
description: Discover and evaluate Laravel packages via LaraPlugins.io MCP. Use when the user wants to find plugins, check package health, or assess Laravel/PHP compatibility.
|
||||
origin: ECC
|
||||
---
|
||||
|
||||
# Laravel Plugin Discovery
|
||||
|
||||
Find, evaluate, and choose healthy Laravel packages using the LaraPlugins.io MCP server.
|
||||
|
||||
## When to Activate
|
||||
|
||||
- User wants to find Laravel packages for a specific feature (e.g. "auth", "permissions", "admin panel")
|
||||
- User asks "what package should I use for..." or "is there a Laravel package for..."
|
||||
- User wants to check if a package is actively maintained
|
||||
- User needs to verify Laravel version compatibility
|
||||
- User wants to assess package health before adding to a project
|
||||
|
||||
## MCP Requirement
|
||||
|
||||
LaraPlugins MCP server must be configured. Add to your `~/.claude.json` mcpServers:
|
||||
|
||||
```json
|
||||
"laraplugins": {
|
||||
"type": "streamable-http",
|
||||
"url": "https://laraplugins.io/mcp/plugins"
|
||||
}
|
||||
```
|
||||
|
||||
No API key required — the server is free for the Laravel community.
|
||||
|
||||
## MCP Tools
|
||||
|
||||
The LaraPlugins MCP provides two primary tools:
|
||||
|
||||
### SearchPluginTool
|
||||
|
||||
Search packages by keyword, health score, vendor, and version compatibility.
|
||||
|
||||
**Parameters:**
|
||||
- `text_search` (string, optional): Keyword to search (e.g. "permission", "admin", "api")
|
||||
- `health_score` (string, optional): Filter by health band — `Healthy`, `Medium`, `Unhealthy`, or `Unrated`
|
||||
- `laravel_compatibility` (string, optional): Filter by Laravel version — `"5"`, `"6"`, `"7"`, `"8"`, `"9"`, `"10"`, `"11"`, `"12"`, `"13"`
|
||||
- `php_compatibility` (string, optional): Filter by PHP version — `"7.4"`, `"8.0"`, `"8.1"`, `"8.2"`, `"8.3"`, `"8.4"`, `"8.5"`
|
||||
- `vendor_filter` (string, optional): Filter by vendor name (e.g. "spatie", "laravel")
|
||||
- `page` (number, optional): Page number for pagination
|
||||
|
||||
### GetPluginDetailsTool
|
||||
|
||||
Fetch detailed metrics, readme content, and version history for a specific package.
|
||||
|
||||
**Parameters:**
|
||||
- `package` (string, required): Full Composer package name (e.g. "spatie/laravel-permission")
|
||||
- `include_versions` (boolean, optional): Include version history in response
|
||||
|
||||
---
|
||||
|
||||
## How It Works
|
||||
|
||||
### Finding Packages
|
||||
|
||||
When the user wants to discover packages for a feature:
|
||||
|
||||
1. Use `SearchPluginTool` with relevant keywords
|
||||
2. Apply filters for health score, Laravel version, or PHP version
|
||||
3. Review the results with package names, descriptions, and health indicators
|
||||
|
||||
### Evaluating Packages
|
||||
|
||||
When the user wants to assess a specific package:
|
||||
|
||||
1. Use `GetPluginDetailsTool` with the package name
|
||||
2. Review health score, last updated date, Laravel version support
|
||||
3. Check vendor reputation and risk indicators
|
||||
|
||||
### Checking Compatibility
|
||||
|
||||
When the user needs Laravel or PHP version compatibility:
|
||||
|
||||
1. Search with `laravel_compatibility` filter set to their version
|
||||
2. Or get details on a specific package to see its supported versions
|
||||
|
||||
---
|
||||
|
||||
## Examples
|
||||
|
||||
### Example: Find Authentication Packages
|
||||
|
||||
```
|
||||
SearchPluginTool({
|
||||
text_search: "authentication",
|
||||
health_score: "Healthy"
|
||||
})
|
||||
```
|
||||
|
||||
Returns packages matching "authentication" with healthy status:
|
||||
- spatie/laravel-permission
|
||||
- laravel/breeze
|
||||
- laravel/passport
|
||||
- etc.
|
||||
|
||||
### Example: Find Laravel 12 Compatible Packages
|
||||
|
||||
```
|
||||
SearchPluginTool({
|
||||
text_search: "admin panel",
|
||||
laravel_compatibility: "12"
|
||||
})
|
||||
```
|
||||
|
||||
Returns packages compatible with Laravel 12.
|
||||
|
||||
### Example: Get Package Details
|
||||
|
||||
```
|
||||
GetPluginDetailsTool({
|
||||
package: "spatie/laravel-permission",
|
||||
include_versions: true
|
||||
})
|
||||
```
|
||||
|
||||
Returns:
|
||||
- Health score and last activity
|
||||
- Laravel/PHP version support
|
||||
- Vendor reputation (risk score)
|
||||
- Version history
|
||||
- Brief description
|
||||
|
||||
### Example: Find Packages by Vendor
|
||||
|
||||
```
|
||||
SearchPluginTool({
|
||||
vendor_filter: "spatie",
|
||||
health_score: "Healthy"
|
||||
})
|
||||
```
|
||||
|
||||
Returns all healthy packages from vendor "spatie".
|
||||
|
||||
---
|
||||
|
||||
## Filtering Best Practices
|
||||
|
||||
### By Health Score
|
||||
|
||||
| Health Band | Meaning |
|
||||
|-------------|---------|
|
||||
| `Healthy` | Active maintenance, recent updates |
|
||||
| `Medium` | Occasional updates, may need attention |
|
||||
| `Unhealthy` | Abandoned or infrequently maintained |
|
||||
| `Unrated` | Not yet assessed |
|
||||
|
||||
**Recommendation**: Prefer `Healthy` packages for production applications.
|
||||
|
||||
### By Laravel Version
|
||||
|
||||
| Version | Notes |
|
||||
|---------|-------|
|
||||
| `12` | Latest Laravel (2025) |
|
||||
| `11` | Current stable |
|
||||
| `10` | Still widely used |
|
||||
| `9` | Legacy but common |
|
||||
| `5`-`8` | Deprecated |
|
||||
|
||||
**Recommendation**: Match the target project's Laravel version.
|
||||
|
||||
### Combining Filters
|
||||
|
||||
```typescript
|
||||
// Find healthy, Laravel 12 compatible packages for permissions
|
||||
SearchPluginTool({
|
||||
text_search: "permission",
|
||||
health_score: "Healthy",
|
||||
laravel_compatibility: "12"
|
||||
})
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Response Interpretation
|
||||
|
||||
### Search Results
|
||||
|
||||
Each result includes:
|
||||
- Package name (e.g. `spatie/laravel-permission`)
|
||||
- Brief description
|
||||
- Health status indicator
|
||||
- Laravel version support badges
|
||||
|
||||
### Package Details
|
||||
|
||||
The detailed response includes:
|
||||
- **Health Score**: Numeric or band indicator
|
||||
- **Last Activity**: When the package was last updated
|
||||
- **Laravel Support**: Version compatibility matrix
|
||||
- **PHP Support**: PHP version compatibility
|
||||
- **Risk Score**: Vendor trust indicators
|
||||
- **Version History**: Recent release timeline
|
||||
|
||||
---
|
||||
|
||||
## Common Use Cases
|
||||
|
||||
| Scenario | Recommended Approach |
|
||||
|----------|---------------------|
|
||||
| "What package for auth?" | Search "auth" with healthy filter |
|
||||
| "Is spatie/package still maintained?" | Get details, check health score |
|
||||
| "Need Laravel 12 packages" | Search with laravel_compatibility: "12" |
|
||||
| "Find admin panel packages" | Search "admin panel", review results |
|
||||
| "Check vendor reputation" | Search by vendor, check details |
|
||||
|
||||
---
|
||||
|
||||
## Best Practices
|
||||
|
||||
1. **Always filter by health** — Use `health_score: "Healthy"` for production projects
|
||||
2. **Match Laravel version** — Always check `laravel_compatibility` matches the target project
|
||||
3. **Check vendor reputation** — Prefer packages from known vendors (spatie, laravel, etc.)
|
||||
4. **Review before recommending** — Use GetPluginDetailsTool for a comprehensive assessment
|
||||
5. **No API key needed** — The MCP is free, no authentication required
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- `laravel-patterns` — Laravel architecture and patterns
|
||||
- `laravel-tdd` — Test-driven development for Laravel
|
||||
- `laravel-security` — Laravel security best practices
|
||||
- `documentation-lookup` — General library documentation lookup (Context7)
|
||||
Reference in New Issue
Block a user