mcp

Validated Laravel plugin data - health scores, compatibility and vendor trust

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
93%
Calidad de los nombres
65%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (5)

  • LOWTool 'search-plugin-tool' doesn't follow camelCase/snake_caseen search-plugin-tool
  • LOWTool 'search-plugin-semantic-tool' doesn't follow camelCase/snake_caseen search-plugin-semantic-tool
  • LOWTool 'get-plugin-details-tool' doesn't follow camelCase/snake_caseen get-plugin-details-tool
  • LOWTool 'get-curated-tool-recommendations' doesn't follow camelCase/snake_caseen get-curated-tool-recommendations
  • LOWTool 'get-curated-tool-recommendations' name length outside 3-30 rangeen get-curated-tool-recommendations

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,200Tokens (definiciones de herramientas)
~6.5 KBTamaño de respuesta típico
Impacto moderado en la atención (1.72% del contexto de 128k)

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-http

Qué puede hacer

Inventario de herramientas

Herramientas (4)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢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_research
Search for information about [topic] using mcp
Herramientas esperadas: search-plugin-tool
find_specific
Find [specific item] using mcp
Herramientas esperadas: search-plugin-tool
retrieve_data
Get details about [item] from mcp
Herramientas esperadas: get-plugin-details-tool
fetch_info
Fetch [information type] using mcp
Herramientas esperadas: get-plugin-details-tool
research_workflow
Search for [topic], then get detailed information about the top results using mcp
Herramientas esperadas: search-plugin-toolget-plugin-details-tool

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada4 herramientas
verificadoversión no registrada4 herramientas