Skip to main content
Glama
ohneben

ohneben's Wafeq MCP

wafeq_expenses_mark_as_posted_create

Idempotent

Posts a draft expense to the ledger, generating its journal and changing status to posted. Use it to finalize an expense in accounting; mark as draft to undo.

Instructions

๐ŸŸ  STATE CHANGE ยท moves a document in or out of the ledger ยท Expenses ยท POST /expenses/{id}/mark-as-posted/

Mark expense as posted

Posts a draft expense to the ledger (generates its journal).

Changes posted/draft status, which adds or removes the document's journal from the ledger. Reversible: the opposite tool undoes it.

Generates the expense's journal and posts it to the ledger. Undo with mark expense as draft.

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.9/5.0
Behavior4/5

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

Annotations already provide idempotentHint=true, readOnlyHint=false, and destructiveHint=false. The description adds useful context beyond these annotations: the state change affects ledger status, generates the expense's journal, and is reversible. No contradiction with the annotations was found.

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

Conciseness2/5

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

The description is repetitive: 'Posts a draft expense to the ledger (generates its journal)' and 'Generates the expense's journal and posts it to the ledger' say the same thing. The reversibility point is also stated twice. The header 'moves a document in or out of the ledger' adds ambiguity. A single clear paragraph would be more effective for such a simple one-parameter tool.

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?

Given the tool's low complexity (one required parameter, no output schema) and the presence of annotations, the description covers the essential behavioral context: it posts a draft expense, generates a journal entry, and is reversible. The main gap is the lack of explicit id parameter semantics, but the endpoint path mitigates this.

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?

The schema has only an 'id' string parameter with 0% description coverage. The description does not explicitly explain what 'id' refers to, though the endpoint '/expenses/{id}/mark-as-posted/' and the phrase 'Posts a draft expense' imply it is the expense identifier. This is helpful but not sufficient compensation for the lack of explicit parameter documentation.

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 clearly states the verb and resource: 'Mark expense as posted' and 'Posts a draft expense to the ledger.' It identifies the specific endpoint and distinguishes itself from the sibling tool by naming the opposite operation: 'Undo with `mark expense as draft`.' Despite the slightly ambiguous 'moves a document in or out of the ledger' header, the body resolves this by specifying the actual action.

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

Usage Guidelines4/5

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

The description communicates when to use the tool: when a draft expense needs to be posted to the ledger. It also gives an explicit alternative for the reverse operation: 'Undo with `mark expense as draft`.' However, it does not explicitly say 'do not use this for marking as draft' โ€” the alternative is implied rather than stated as an exclusion.

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