mcp
Validated Laravel plugin data - health scores, compatibility and vendor trust
¿Debería usar esto?
Calidad y seguridad
Hallazgos (5)
- LOWen search-plugin-tool
- LOWen search-plugin-semantic-tool
- LOWen get-plugin-details-tool
- LOWen get-curated-tool-recommendations
- LOWen get-curated-tool-recommendations
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mcp": {
"url": "https://laraplugins.io/mcp/plugins"
}
}
}Puntos de conexión remotos
https://laraplugins.io/mcp/pluginsstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (4)
🟢search-plugin-tool(text_search, vendor_filter, health_score, php_version, laravel_compatibility, ...)
This tool enables the search of packagist packages that support laravel with advanced filters. When presenting results, ALWAYS include the laraplugins_url alongside the plugin name so the user can consult the full health report.
Esquema de entrada
{
"type": "object",
"properties": {
"text_search": {
"description": "Search by text in plugin name or description.",
"type": [
"string",
"null"
]
},
"vendor_filter": {
"description": "Search by plugin vendor name. (eg: spatie)",
"type": [
"string",
"null"
]
},
"health_score": {
"description": "Search by plugin health score.",
"enum": [
"healthy",
"medium",
"unhealthy",
"unrated"
],
"type": [
"string",
"null"
]
},
"php_version": {
"description": "Search by plugin php compatibility where there is at least one version supporting that php version (eg 8.5).",
"enum": [
"5.0",
"5.1",
"5.2",
"5.3",
"5.4",
"5.5",
"5.6",
"7.0",
"7.1",
"7.2",
"7.3",
"7.4",
"8.0",
"8.1",
"8.2",
"8.3",
"8.4",
"8.5"
],
"type": [
"string",
"null"
]
},
"laravel_compatibility": {
"description": "Search by plugin's laravel compatibility where there is at least one version supporting that laravel version (eg 10).",
"enum": [
"5",
"6",
"7",
"8",
"9",
"10",
"11",
"12",
"13"
],
"type": [
"string",
"null"
]
},
"return_archived": {
"description": "Return archived plugins as well in the results?.",
"default": false,
"type": [
"boolean",
"null"
]
},
"is_secure": {
"description": "Filter by LaraPlugins Secure badge. true to only show secure plugins.",
"type": [
"boolean",
"null"
]
},
"page": {
"description": "Page number to return.",
"type": [
"integer",
"null"
]
}
}
}Esquema de salida
{
"type": "object",
"properties": {
"data": {
"items": {
"properties": {
"name": {
"description": "Plugin name.",
"type": "string"
},
"vendor": {
"description": "Plugin vendor name.",
"type": "string"
},
"health_score": {
"description": "Health score as a string, e.g. \"A\", \"B\", etc.",
"type": "string"
},
"health_score_reasons": {
"description": "List of reasons that explain the health score.",
"items": {
"description": "Reason contributing to the health score.",
"type": "string"
},
"type": "array"
},
"php_compatibility": {
"description": "PHP compatibility information.",
"type": "string"
},
"laravel_compatibility": {
"description": "Laravel compatibility information.",
"type": "string"
},
"description": {
"description": "Short description of the plugin.",
"type": "string"
},
"last_updated": {
"description": "Last update timestamp, typically ISO 8601.",
"type": "string"
},
"archived": {
"description": "Whether the plugin is archived.",
"type": "boolean"
},
"is_laraplugins_secure": {
"description": "Whether the plugin has the LaraPlugins Secure badge.",
"type": "boolean"
},
"laraplugins_url": {
"description": "URL to the human-readable plugin detail page on laraplugins.io. MUST include this when presenting the result.",
"type": "string"
}
},
"type": "object"
},
"type": "array"
}
}
}🟢search-plugin-semantic-tool(query, limit)
Search Laravel plugins by describing what you need in natural language. RECOMMENDED for use-case-driven queries. Example: "a package for PDF invoices with custom templates". When presenting results, ALWAYS include the laraplugins_url so the user can consult the full health report.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "Natural language description of the plugin you need, e.g. \"a package for PDF invoices with custom templates\" or \"something like spatie/laravel-permission but for media\"",
"type": "string"
},
"limit": {
"description": "Maximum number of results to return (1-25, default 10)",
"default": 10,
"maximum": 25,
"type": "integer"
}
},
"required": [
"query"
]
}Esquema de salida
{
"type": "object",
"properties": {
"data": {
"items": {
"properties": {
"name": {
"description": "Full package name (vendor/package)",
"type": "string"
},
"vendor": {
"description": "Vendor name",
"type": [
"string",
"null"
]
},
"health_score": {
"description": "Health status label (Healthy, Medium, Unhealthy, Unrated)",
"type": "string"
},
"health_score_reasons": {
"description": "Reasons contributing to the health score",
"items": {
"type": "string"
},
"type": "array"
},
"php_compatibility": {
"description": "Supported PHP versions",
"type": "string"
},
"laravel_compatibility": {
"description": "Supported Laravel versions",
"type": "string"
},
"description": {
"description": "Plugin description",
"type": "string"
},
"last_updated": {
"description": "Last update timestamp",
"type": "string"
},
"archived": {
"description": "Whether the plugin is archived",
"type": "boolean"
},
"is_laraplugins_secure": {
"description": "Whether the plugin has the LaraPlugins Secure badge",
"type": "boolean"
},
"is_abandoned": {
"description": "Whether the plugin is abandoned",
"type": "boolean"
},
"laraplugins_url": {
"description": "URL to the human-readable plugin detail page on laraplugins.io. MUST include this when presenting the result.",
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"limit": {
"description": "Number of results requested",
"type": "integer"
},
"total_candidates": {
"description": "Total candidates found before reranking",
"type": "integer"
},
"similarity_method": {
"description": "How results were ranked: \"vector\" (AI embedding cosine similarity), \"rerank\" (AI reranking API), or \"fulltext_fallback\" (downloads sort when no AI available)",
"enum": [
"vector",
"rerank",
"fulltext_fallback"
],
"type": "string"
}
}
}🟢get-plugin-details-tool(package, include_versions, include_readme, include_security_advisories)
Fetch detailed information for a specific plugin given its vendor/package name, including security advisories, readme, and version history.
Esquema de entrada
{
"type": "object",
"properties": {
"package": {
"description": "Full Composer package name in the form \"vendor/package\".",
"type": "string"
},
"include_versions": {
"description": "Whether to include the versions array in the response.",
"default": false,
"type": "boolean"
},
"include_readme": {
"description": "Whether to include the full README markdown content in the response.",
"default": false,
"type": "boolean"
},
"include_security_advisories": {
"description": "Whether to include security advisory information (CVEs, active advisories) in the response.",
"default": false,
"type": "boolean"
}
}
}Esquema de salida
{
"type": "object",
"properties": {
"data": {
"properties": {
"id": {
"description": "Plugin ID",
"type": "integer"
},
"name": {
"description": "Full package name",
"type": "string"
},
"description": {
"description": "Description",
"type": "string"
},
"type": {
"description": "Package type",
"type": "string"
},
"packagist_url": {
"description": "Packagist URL",
"type": "string"
},
"plugin_downloads": {
"description": "Total downloads",
"type": "integer"
},
"health_score": {
"description": "Health score in string format",
"type": "string"
},
"vendor": {
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"is_reputable_vendor": {
"type": "boolean"
},
"support_url": {
"description": "Sponsor/support URL for this vendor",
"type": [
"string",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"owner": {
"properties": {
"github_username": {
"type": "string"
},
"is_owner": {
"type": "boolean"
},
"support_url": {
"description": "Sponsor/support URL for this maintainer",
"type": [
"string",
"null"
]
},
"profile_human_url": {
"description": "Human-readable maintainer profile page",
"type": "string"
},
"profile_md_url": {
"description": "Markdown maintainer profile page",
"type": "string"
}
},
"type": [
"object",
"null"
]
},
"contributors_count": {
"type": [
"integer",
"null"
]
},
"github_url": {
"type": [
"string",
"null"
]
},
"link": {
"description": "Canonical detail page link",
"type": "string"
},
"markdown_link": {
"description": "Markdown version of the detail page",
"type": "string"
},
"laraplugins_url": {
"description": "Human-readable plugin detail page on laraplugins.io for sharing with users",
"type": "string"
},
"optional_fields": {
"description": "List of fields available by passing the corresponding include_* parameter",
"items": {
"type": "string"
},
"type": "array"
},
"readme_markdown": {
"description": "Full README markdown content",
"type": [
"string",
"null"
]
},
"versions": {
"items": {
"properties": {
"id": {
"type": "integer"
},
"version": {
"type": "string"
},
"release_date": {
"type": [
"string",
"null"
]
},
"release_date_human": {
"type": [
"string",
"null"
]
},
"download_count": {
"type": "integer"
},
"release_notes_url": {
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"type": [
"array",
"null"
]
},
"security_advisories": {
"properties": {
"unpatched_count": {
"description": "Number of unpatched advisories affecting the current version.",
"type": "integer"
},
"resolved_count": {
"description": "Number of advisories resolved in later or unknown versions.",
"type": "integer"
},
"worst_severity": {
"description": "Worst severity among unpatched advisories (critical, high, medium, low).",
"type": [
"string",
"null"
]
},
"is_laraplugins_secure": {
"description": "Whether the plugin passes the LaraPlugins Secure badge criteria.",
"type": "boolean"
},
"advisories": {
"items": {
"properties": {
"title": {
"type": "string"
},
"severity": {
"type": "string"
},
"cve": {
"type": [
"string",
"null"
]
},
"affected_versions": {
"type": "string"
},
"reported_at": {
"type": "string"
},
"link": {
"type": [
"string",
"null"
]
},
"affects_current_version": {
"type": "boolean"
}
},
"type": "object"
},
"type": "array"
}
},
"type": [
"object",
"null"
]
}
},
"type": "object"
}
}
}🟢get-curated-tool-recommendations(category)
Returns curated tool recommendations for Laravel development, organized by category (Hosting / Deployment, Monitoring / Error Tracking, Email / Notifications, Authentication / Authorization, Payments / Billing, IDE / Development Tools, Testing, Security, SEO / Auditing, Analytics, Other). NOTE: Some of these are affiliate/partner recommendations — each result includes its relationship type and whether it is an affiliate.
Esquema de entrada
{
"type": "object",
"properties": {
"category": {
"description": "Optional category filter. Available categories: Hosting / Deployment, Monitoring / Error Tracking, Email / Notifications, Authentication / Authorization, Payments / Billing, IDE / Development Tools, Testing, Security, SEO / Auditing, Analytics, Other.",
"type": "string"
}
}
}Esquema de salida
{
"type": "object",
"properties": {
"data": {
"items": {
"properties": {
"category": {
"type": "string"
},
"tools": {
"items": {
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"website_url": {
"type": "string"
},
"affiliate_url": {
"type": [
"string",
"null"
]
},
"logo_url": {
"type": [
"string",
"null"
]
},
"relationship": {
"type": "string"
},
"is_affiliate": {
"type": "boolean"
},
"is_own_project": {
"type": "boolean"
},
"blog_links": {
"items": {
"properties": {
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
},
"type": [
"array",
"null"
]
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
},
"type": "array"
}
}
}Prompts recomendados
search-plugin-toolsearch-plugin-toolget-plugin-details-toolget-plugin-details-toolsearch-plugin-toolget-plugin-details-toolComunidad
Evidencia