Skip to main content
Glama

Project info

project_info
Read-only

Summarize an Android project's modules, types, namespaces/application IDs, SDK levels, launcher activities, and Gradle/AGP versions to give AI agents a clear project overview.

Instructions

Summarize the Android project: modules, their type, namespace/applicationId, SDK levels, launcher activities, Gradle and AGP versions.

Input Schema

NameRequiredDescriptionDefault
projectDirNoAndroid project root. Defaults to ANDROID_PROJECT_DIR or the server's cwd.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

readOnlyHint=true already tells the agent this is a safe read, so the description's job is only to add context. It does add that the call aggregates Gradle/AGP versions and module metadata, but says nothing about cost (whether it parses build files or queries a running IDE), what happens if projectDir is missing or invalid, or the shape of the result. Adequate but thin for an aggregation tool over 45 siblings.

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?

A single sentence with the resource and its full contents front-loaded. No filler, no restatement of the title, and every listed field earns its place by signalling what comes back.

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?

No output schema exists, so the field enumeration usefully substitutes by telling the agent what the summary will contain. Combined with a single optional parameter and a read-only annotation, the definition is nearly self-sufficient; only the response format and failure behavior remain unspecified.

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?

With one optional parameter at 100% schema coverage, the schema already documents projectDir and its ANDROID_PROJECT_DIR / cwd fallback. The description adds nothing about the parameter, which is acceptable at this coverage level but earns only the baseline.

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

Purpose4/5

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

Specific verb ("Summarize") plus resource ("the Android project") and an explicit enumeration of what the summary contains: modules, type, namespace/applicationId, SDK levels, launcher activities, Gradle/AGP versions. That enumeration distinguishes it from device_info, environment and project_apks by content. It never names a sibling or states the boundary explicitly, so it falls short of a 5.

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

Usage Guidelines2/5

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

No statement of when to call this versus alternatives (e.g. project_apks for APK artifacts, environment for toolchain paths, ide_project_problems/gradle_tasks for build state). The reader must infer the use case from the field list. No prerequisites, exclusions, or workflow placement are given.

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