Skip to main content
Glama

Run a Gradle task

devilge_run_gradle_task

Run a Gradle task and get a structured summary of compile errors, test results, lint findings, and failure details.

Instructions

Runs a Gradle task in the configured Android/KMM project (via the project's gradlew wrapper) and returns a structured summary: success flag, parsed compile errors (kotlinc/javac/kapt/ksp), JUnit test results from build/test-results, Android Lint findings, "What went wrong" failure blocks, plus the tail of stdout/stderr.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
taskYesGradle task to run, e.g. "assembleDebug", "test", "lint", "detekt", ":app:assembleDebug", ":modules:feature:appointment:test". Some destructive patterns (publish*, *release deploys, uninstall*) are blocked.
extraArgsNoAdditional arguments forwarded to Gradle (e.g. ["-PenvName=staging"]).
tailBytesNoHow many bytes of tail output to retain (default 262144 = 256 KiB).
timeoutMsNoHard timeout in ms. Default 300000 (5 min). Cap 1800000 (30 min).
Behavior4/5

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

Annotations indicate non-read-only and non-destructive, but the description adds detailed behavioral context: it returns a structured summary with parsed compile errors, test results, lint findings, and failure blocks. It also mentions blocking destructive task patterns. This goes beyond the annotations by clarifying output format and safety constraints.

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 two sentences with no extraneous content. The first sentence states the core purpose and output structure; the second adds safety context about blocked patterns. Information is front-loaded and every part earns its place.

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?

The description adequately covers the tool's output and safety constraints. However, it omits prerequisites (e.g., project must exist, gradlew wrapper must be present) and does not explain error behavior beyond the structured response. Given the tool's complexity and lack of output schema, a brief note on environment expectations would improve completeness.

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?

The input schema has 100% description coverage, with each parameter well-documented (examples, constraints, defaults). The tool description does not add additional parameter semantics beyond the schema. Baseline 3 is appropriate since the schema already does the heavy lifting.

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 clearly states it runs a Gradle task using the project's gradlew wrapper, specific to Android/KMM projects. It lists the structure of the return value, including success flag, compile errors, test results, etc. This distinguishes it from sibling tools, which are all device interaction or other non-Gradle operations.

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

Usage Guidelines4/5

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

The description implicitly defines usage: for running any Gradle task (build, test, lint, etc.). The parameter description for 'task' provides explicit guidance on blocked destructive patterns, aiding safe use. However, there is no explicit 'when to use vs alternatives' statement, though no sibling tools overlap in functionality.

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

Install Server

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/Yercko/devilge'

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