Skip to main content
Glama

create_map_feature

Add pins, labels, regions, paths, or folders to a LegendKeeper map document using coordinates or pixel positions, with optional colors, icons, links, and folder nesting.

Instructions

Add a pin, label, region, path or folder to a map document. Coordinates are [lat, lng] in the map's frame (read_document on the map shows its bounds), or image pixels with pixel_coordinates=true.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
linkNoResource id/name (or lk:// URI) the feature opens when clicked.
nameYes
typeNoFeature type.pin
colorNoRegion fill/border or path line color.
extraNoAny other createFeature fields (labelSize, fillOpacity, strokeWidth, textColor…).
folderNoId of a folder feature to nest this feature in.
pointsNoVertices of a region (polygon) or a path (polyline).
projectNoConfigured project (world) name. Omit to use the default project; see list_projects.
documentNoDocument id or name within the resource. Omit to pick the resource's main document.
positionNoPin/label position.
resourceYesResource id, or its exact name/alias (case-insensitive).
is_hiddenNo
icon_colorNoPin shape color (only with a shape).
icon_glyphNoPin icon: a Font Awesome name, e.g. 'castle'.
icon_shapeNoShape behind a pin's glyph; default 'none' (bare glyph).
pixel_coordinatesNoTreat position/points as image pixels [x, y] from the top-left corner.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.2

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, non-idempotent, non-destructive, open-world write, so the safety profile is covered. The description usefully adds that coordinates are interpreted in the map's frame unless pixel mode is on, which is behavioral context beyond the annotations, but it says nothing about permission requirements, whether repeated calls duplicate features, or how resource/document resolution behaves when names are ambiguous.

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?

Two sentences, no filler, and the most important fact (what can be added, and to what) is front-loaded ahead of the coordinate-mode caveat. Every clause earns its place.

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

Completeness3/5

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

For a 16-parameter creation tool with no output schema, the description omits the parameter-to-type mapping that an agent most needs: that pins/labels require `position`, and regions/paths require `points`, while `name` and `resource` are the only required fields. Annotations do cover mutability, so the gap is not fatal, but the schema alone does not force the agent to supply geometry for the non-pin types.

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?

Schema description coverage is already 88%, so the schema carries most of the burden; the baseline is 3. The description still adds value by explaining that coordinates are relative to the map's frame and by naming read_document as the way to learn the bounds, knowledge that is not present in any individual property description.

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+resource ('Add a pin, label, region, path or folder to a map document') and enumerates exactly the feature types in the `type` enum, so the agent immediately knows the scope. It is clearly distinguishable from siblings like update_map_feature and delete_map_feature, which operate on existing features.

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 second sentence gives real usage context for coordinates ([lat, lng] in the map's frame, or pixels with pixel_coordinates=true) and points the agent at read_document to discover the map bounds. However, it never says when to prefer this tool over update_map_feature, nor what preconditions exist (e.g. the resource/document must already exist, folder nesting must reference an existing folder feature).

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