Skip to main content
Glama
Panelica

panelica-mcp

Official
by Panelica

panelica_laravel_apps_get_v1_laravel_apps_id_composer

Read-onlyIdempotent

Retrieve the list of Composer packages installed for a specific Laravel application by providing its ID. Use this to inspect dependencies and versions.

Instructions

Get composer packages

HTTP: GET /v1/laravel/apps/:id/composer Category: Laravel Apps Required scopes: apps:read Read-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesPath parameter: id
Install Server

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint, idempotentHint, and non-destructive behavior. The description adds useful context beyond the annotations by specifying 'Required scopes: apps:read', which is a meaningful access constraint. It does not contradict the annotations and adds some operational transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: the core action appears first, followed by essential HTTP, category, scope, and read-only metadata. Every line is informative and there is no redundant or filler content beyond a harmless repetition of the read-only status already present in annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple single-parameter GET endpoint with strong annotations, the description is nearly complete. It identifies the resource, endpoint, required scope, and read-only nature. It would be slightly stronger if it explicitly described what kind of data is returned, but the phrase 'composer packages' is sufficient for a competent agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents the single 'id' path parameter. The description repeats the path pattern with ':id' but does not add semantic meaning such as what the id represents or expected format. Baseline 3 is appropriate given the high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Get composer packages', and the HTTP line confirms the exact endpoint. This clearly distinguishes it from sibling Laravel app operations like env, logs, or composer require/remove/update, especially with the explicit 'Read-only' qualifier.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through 'GET' and 'Read-only', but it does not explicitly say when to choose this over alternatives such as composer require, remove, or update. An agent can infer the retrieval use case, but there is no direct routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Panelica/panelica-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server