Skip to main content
Glama
Zeekeey-jpeg

singleops-mcp-server

by Zeekeey-jpeg

Get job expenses report

singleops_read_get_job_expenses_report
Read-onlyIdempotent

Retrieve a job expenses report for a date range by sending start and end dates to the SingleOps report endpoint, returning expense data or validation errors.

Instructions

Get job expenses report. (POST /reports/job_expenses) Inferred from the SingleOps web app's own traffic; confirm results. Rails form fields (pass as nested objects, e.g. {"client": {"first_name": "…"}}; send only what you set): start_date, end_date. Returns {ok, status, redirect, id} on success (the new/updated record id), or validation errors. Read-only query sent as POST (filters go in body).

Input Schema

NameRequiredDescriptionDefault
bodyNoRequest body as a JSON object. Match the fields listed in the description.
extra_queryNoAny additional query parameters.
response_formatNoOutput format: "markdown" (default, readable tables) or "json" (full raw response).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive, so safety is covered. The description adds genuinely useful context beyond that: the 'Inferred from the SingleOps web app's own traffic; confirm results' reliability caveat, the fact that a read-only query is sent as a POST with filters in the body, and the return shape {ok, status, redirect, id} or validation errors.

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

Conciseness4/5

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

Front-loaded with the endpoint and return format, and every sentence adds information. It is somewhat dense with parentheticals, but there is little waste.

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?

Endpoint, fields, format, and return shape are covered for a read-only report. However, the 'new/updated record id' phrasing is boilerplate that reads oddly for a read-only query, and the description gives no help distinguishing this report from the large sibling set, leaving the selection task incomplete.

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 coverage is 100%, but the body property only says 'Match the fields listed in the description,' so the description carries the real documentation burden. It names the actual fields (start_date, end_date) and explains the nested Rails form-field format with an example, adding meaning the schema does not provide.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The core sentence 'Get job expenses report' essentially restates the title, offering no differentiation from the ~40 sibling report tools (job_labor_report, job_profit_margin_report, etc.). It does add the concrete endpoint (POST /reports/job_expenses) and notes filters go in the body, which gives some specificity, but an agent still cannot tell why to pick this report over the others.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus the many alternative report tools, nor any prerequisites or exclusions. Usage is only implied by the report name itself.

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

Deploy Server

Other Tools