Skip to main content
Glama

Phasio

describePricingEquationApi

Read-onlyIdempotent

Start here before reading, writing or changing a pricing equation. Returns the TypeScript contract the equation runs against (specification, revision, requisition, customer, workflow, done(), variable(), round, useDimension, createBands; for scope ORDER: parts, subtotal, customer, addLineItem), narrowed to the given scope + ownerId: its technology, material names and material variable names, lead-time names, and which modules the manufacturer has. Explains the loop: save(entity=typescriptEquation) to validate and store a draft, generateQuote(equationId) to test it, then — only on the manufacturer's explicit request — publishEquation to make it live. Pass includeSource=true to also get the live equation's source, or equationId= to get the source of one specific equation (a draft, for example) with its live/not-live state.

Input Schema

NameRequiredDescriptionDefault
scopeYesWhich equation to describe the equation API for: PROCESS (a manufacturing process), POST_PROCESSING (a finish), or ORDER (the manufacturer's single order-level equation that adds whole-order line items). Same values as typescriptEquation.scope.
ownerIdNoThe owner: processPrices.id (UUID) for scope PROCESS, postProcessing.id (integer, as a string) for scope POST_PROCESSING. Omit for scope ORDER. Not an equationId.
equationIdNoA typescriptEquation id (UUID) of the same scope + ownerId: append THAT equation's source instead of the live one, live or not. Use it to read back a draft before you test, revise or publish it.
includeSourceNotrue to append the LIVE equation's name, variables and full source. Default false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / equationId / description
      Previous value: -"A typescriptEquation id (UUID) of the same scope + ownerId: append THAT version's source instead of the live one, live or not. Use it to read back a draft before you test, revise or publish it."New value: +"A typescriptEquation id (UUID) of the same scope + ownerId: append THAT equation's source instead of the live one, live or not. Use it to read back a draft before you test, revise or publish it."
  2. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the annotations, the description discloses the return contents, the workflow lifecycle, and the fact that publishEquation should only happen on explicit request. It also explains that equationId returns a specific equation's source with its live/not-live state, which is meaningful behavioral context for an otherwise read-only tool.

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 front-loaded with the core instruction and then packs contract details, workflow, and parameter behavior without filler. It is dense but appropriately sized for a complex, high-context tool.

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?

The tool has four parameters and no output schema, so the description must carry the return-shape burden. It does: it describes the contract contents, scope narrowing, the equation lifecycle, and how source retrieval works.

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?

With 100% schema description coverage, the schema already documents every parameter. The description still adds useful usage meaning, especially for includeSource and equationId ('read back a draft before you test, revise or publish it'), though it does not add much beyond the schema for ownerId.

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 uses a specific verb and resource: it returns the TypeScript contract for a pricing equation, narrowed by scope and ownerId. It also names the sibling operations save, generateQuote, and publishEquation, making it easy to distinguish from them.

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

Usage Guidelines5/5

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

It explicitly tells the agent to 'Start here before reading, writing or changing a pricing equation' and lays out the workflow: save to validate/store a draft, generateQuote to test, and publishEquation only on explicit request. It also explains when to use includeSource=true versus equationId, which covers the main alternative invocation patterns.

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