Skip to main content
Glama
tina4stack

Claude Pascal MCP Server

by tina4stack

get_compiler_info

Detect installed Pascal compilers (Free Pascal, Delphi 32/64) and retrieve their names, versions, and paths to verify build environments.

Instructions

Detect available Pascal compilers and return their details.

Checks for Free Pascal (fpc), Delphi 32-bit (dcc32), and Delphi 64-bit (dcc64) on the system PATH and in common installation directories.

Returns a summary of all compilers found with name, version, and path.

Side effect: also emits an MCP notifications/tools/list_changed so any new tools added to the server since the client last fetched its catalog become visible without a Claude Code restart. Cheap to call; if the client doesn't honour the notification, nothing breaks.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.13.6

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden and does so thoroughly. It discloses a non-obvious side effect (emitting notifications/tools/list_changed), explains why it happens, and reassures that failure to honor it is non-breaking. It also describes the search scope: PATH and common installation directories.

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

Conciseness4/5

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

The structure is effective: purpose first, then detection scope, then return value, then side effect. The side-effect explanation is slightly long, but it earns its place because no annotations provide that safety context.

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

Completeness5/5

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

A parameterless tool with an output schema needs little more; the description covers which compilers are checked, where they are searched, what is returned, and the side effect. An agent can decide when to call it and understand the consequences correctly.

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

Parameters4/5

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

The tool has zero parameters and the schema covers 100% of them, so the description does not need to add parameter details. The baseline of 4 for zero-parameter tools applies; nothing is missing.

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 opens with a specific verb and resource: detect available Pascal compilers. It names exact compilers checked (fpc, dcc32, dcc64) and clearly distinguishes itself from sibling tools that compile, run, or launch applications.

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 conveys that this is a discovery tool for checking compiler availability and notes it is cheap to call, but it never explicitly states when to choose it over siblings like compile_pascal or setup_fpc. Usage is implied rather than explicitly contrasted with alternatives.

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