Skip to main content
Glama
ohneben

ohneben's Wafeq MCP

wafeq_purchase_orders_bill_create

Convert a purchase order into a draft bill to streamline procurement accounting. Use when you need to turn an approved PO into a bill for payment.

Instructions

๐ŸŸก WRITE ยท creates data ยท Purchase Orders ยท POST /purchase-orders/{id}/bill/

Convert purchase order to bill

This endpoint can be used to convert a purchase order to a draft bill.

Not idempotent โ€” calling twice creates two records. Pass idempotency_key (or let the server generate one) to make a retry safe.

Creates a NEW draft bill from the purchase order. Calling twice creates two bills โ€” pass an idempotency_key if you may retry.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv2.0.0

TDQS

A3.5/5.0
Behavior4/5

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

The description goes beyond the annotations by disclosing that the result is a draft bill, that the operation is non-idempotent ('calling twice creates two records'), and that passing an idempotency_key makes retries safe. These statements are consistent with annotations (readOnlyHint=false, idempotentHint=false) and add useful operational safety context.

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

Conciseness3/5

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

The header line is compact and informative, but the non-idempotency warning is stated twice nearly verbatim ('Not idempotent โ€” calling twice creates two records...' and 'Calling twice creates two bills โ€” pass an idempotency_key if you may retry'), adding redundancy without introducing new information.

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 simple one-parameter tool, the description covers the core behavior, the draft-bill state, and the retry risk. Gaps remain: idempotency_key is referenced but not present in the schema, and the description does not say what happens to the source purchase order after conversion or what the response contains (and there is no output schema to fill that gap).

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 0%, so the description must compensate. It does clarify that the only schema parameter, id, identifies the purchase order, via the endpoint URI and the 'Convert purchase order to bill' phrasing. However, it repeatedly references an idempotency_key that is absent from the input schema, leaving ambiguity about how the agent is expected to supply it.

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 states a specific verb and resource: 'Convert purchase order to bill' and 'Creates a NEW draft bill from the purchase order,' and it includes the endpoint path POST /purchase-orders/{id}/bill/. What the tool does is unambiguous, though it does not explicitly contrast itself with the sibling wafeq_bills_create (which creates a bill from scratch), leaving that differentiation implicit.

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 intended use case ('convert a purchase order to a draft bill') is clearly implied by the description and endpoint path. However, there is no explicit when-to-use vs when-not-to-use guidance, and no alternative tool such as wafeq_bills_create is mentioned, which an agent could otherwise confuse as a substitute path to the same result.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ohneben/Wafeq-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server