This server analyzes TIFF or JP2 files, crops them by given coordinates or instructions, converts them to PNG, and calculates mean NDVI and point NDVI according to given coordinates
The server has 4 tools with basic structure but significant quality gaps. All tools have schemas and descriptions present, but descriptions are inconsistent in quality, mixing English and Turkish without clarity. Naming follows verb conventions (analyze_, crop_, get_), which is positive. However, parameter descriptions are minimal, output schemas are undocumented, and error handling is simplistic with no recovery guidance. The server appears purpose-built for geospatial analysis but lacks the polish expected in production agent tooling.
Gets the filepath from user and returns metadata/extent Tiff dosyasını analiz eder ve veritabanına kaydeder Çağırılma ifadeleri: 'bu dosyayı analiz et','dosyayı veritabanına yaz',tiff işle ,'analiz ve kaydet','kayıt oluştur'
Crops and saves a png file according to the given TIFF. If the reprojected TIFF does not exist, creates it.
DEM değeri hesaplama
NDVI hesaplama fonksiyonu
Mixed language descriptions (English/Turkish) reduce clarity. 'NDVI hesaplama fonksiyonu' and 'DEM değeri hesaplama' are Turkish-only, making them inaccessible to English-speaking LLMs and unprofessional.
Output schemas are completely undocumented. Tools return dicts with fields like 'message', 'minx', 'miny', 'maxx', 'maxy', 'filename', 'elapsed_time', 'success', 'ndvi_mean', 'ndvi_point', 'px', 'py', 'calculated_dem', but LLMs have no schema specification to parse these. This violates pattern:tool and mxe:response-shaper.
Error handling provides no recovery guidance. Exceptions return raw error strings like 'Dosya açılamadı: /path/to/file' with no suggestion of what to try next. Pattern:recovery-guide requires actionable error messages.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 7 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 48 | - | v1 |
Parameter descriptions are minimal and lack constraint details. 'Path to the TIFF or JP2 file to analyze' does not specify expected format, whether relative or absolute paths are accepted, or what happens if the file doesn't exist. 'Minimum x coordinate for cropping' lacks range information (e.g., should it be within the raster bounds?).
No input validation hints for numeric coordinates. The crop_image tool accepts minx, miny, maxx, maxy as floats with no bounds checking described. Agents cannot infer whether negative values are valid, what CRS they assume, or what happens if maxx < minx.
Tool composition issue: analyze_tiff returns minx/miny/maxx/maxy coordinates suitable for crop_image, but there is no explicit documentation that crop_image accepts those exact field names as parameters. Agents must infer this mapping.
get_ndvi assumes NIR is band 3 and red is band 1 without validation. If a TIFF has different band ordering (or no NIR band), the function silently fails or produces garbage. Description should state band assumptions and validate band count before computing.