Skip to main content
Glama

Vastu overlay SVG

astroway_vastu_shastra_render_vastu
Read-onlyIdempotent

The /vastu/plan input drawn as an SVG in the plan's own coordinates on a transparent background, to lay straight over the floor-plan image: the 81-cell mandala with its deities, or the 16 zones, or the 8 directions as rays from the centre the school reads from, rooms coloured by verdict, the door with its pada, and a north arrow. options.format: "svg" returns the image itself.

[Group: Vastu Shastra] [Endpoint: POST /v1/render/vastu] [Required: coords, northAngle, boundary] [Cost: 20 credits (Tier 2)]

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "coords": "<coords>",
      "northAngle": "<northAngle>",
      "boundary": "<boundary>"
    },
    "name": "astroway_vastu_shastra_render_vastu"
  }
}

Input Schema

NameRequiredDescriptionDefault
itemsNo
roomsNo
coordsYes
facingNo
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
schoolNo
optionsNo
boundaryYes
entranceNo
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.
northAngleYes
declinationNo
scoreVersionNo
entranceMethodNo
northReferenceNo

Output Schema

NameRequiredDescriptionDefault
svgNo
fromNo
layerNo
schoolNo
languageNo
warningsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • removedOutput schema / properties / from / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / from / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / language / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / language / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / layer / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / layer / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / school / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / school / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / svg / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / svg / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  2. Added

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered; the description adds genuinely useful behaviour: output is transparent-background, aligned to the plan's own coordinate system so it can be composited over the source floor plan, and switches to raw SVG with options.format. The 20-credit Tier 2 cost is disclosed in the endpoint block. It does not mention size limits or what the json-mode response contains, but with annotations and an output schema in place the gaps are small.

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 purpose is front-loaded in the first clause, with the visual inventory following as a compact list rather than separate sentences. The format-switch note is placed last where it is needed. Nothing reads as filler.

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?

An output schema exists, so the description needn't explain return values, and it thoroughly describes the rendered artefact, its coordinate space and background. For a 15-parameter tool with 13% schema coverage the input side is thin, but the essential calling pattern (supply plan geometry plus north angle, pick a layer and format) is conveyed.

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?

Schema description coverage is only 13% across 15 parameters, so the description carries real burden. It does clarify options.format, ties the mandala/zones/directions layers to the options.layer enum, hints that 'the school reads from' maps to school, and explains the door/pada and north arrow. However, the three required parameters (coords, northAngle, boundary) and others like declination, entranceMethod, northReference, scoreVersion, items, facing and precision get no explanation, leaving the most critical inputs undocumented in prose.

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?

The description opens with a concrete verb-and-resource statement: the /vastu/plan input drawn as an SVG in the plan's own coordinates on a transparent background, and enumerates exactly what appears in the image (81-cell mandala with deities, 16 zones, 8 directional rays, verdict-coloured rooms, door pada, north arrow). That makes the output unmistakable. It stops short of naming sibling tools such as astroway_vastu_shastra_vastu_mandala or _zones, so the agent must infer that those return data while this one returns an image.

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?

Usage is implied rather than stated: 'to lay straight over the floor-plan image' and '`options.format: "svg"` returns the image itself' signal this is the visualisation path, as opposed to the analytical vastu_* siblings. There is no explicit when-to-use or when-not clause and no named alternative, so the agent has to reason about which vastu tool it wants.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources