Skip to main content
Glama

POST /api/cache (upstream POST)

api_post_cache_post
Destructive

Fetch a URL using upstream POST and cache its text response. The upstream method cannot be changed. Uses the OneSimpleAPI API (https://onesimpleapi.com/docs), with the same permissions, credits and storage. Supply API parameters in query or body. This tool always uses POST; do not supply method. Outputs preserve HTTP status, headers and JSON/text/base64 body; redirects are returned without following them.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "api_post_cache_post"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyNoAPI request body. Nested objects, arrays, HTML, base64 data and all API options retain their original meaning.
pathNo
filesNoMultipart uploads keyed by API field name (for example pdf). Supply file_name, base64 bytes and optional mime_type. Uploads use the existing API file validators.
queryNoURL query parameters. Sensitive API options must be in body as documented by the API.
headersNoAPI request headers such as Idempotency-Key, Range and If-None-Match. Authentication and transport headers are managed by the connection.
content_typeNoDefaults to application/json, or multipart/form-data when files are supplied.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already flag destructiveHint=true, idempotentHint=false and openWorldHint=true, but the description adds real context beyond them: that the upstream method is immutable, that responses are cached and can be forced fresh, that it consumes the same credits/permissions/storage as the upstream API, and that redirects are returned unfollowed. These are behavior details the agent could not derive from the annotations. It does not discuss rate limits or cache-invalidation failure modes, which keeps it below 5.

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?

The description is front-loaded with the core action and then layers constraints, with no filler or marketing language. There is mild redundancy between 'The upstream method cannot be changed' and 'This tool always uses POST; do not supply method', but the repetition serves emphasis on a field that would otherwise cause errors.

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?

With no output schema, the description correctly compensates by describing the return shape — HTTP status, headers, and JSON/text/base64 body, plus unfollowed redirects. Combined with the docs link and the credit/storage note, an agent has enough to invoke it correctly; only error-path behavior is left implicit.

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 83%, so the schema already documents url, body, force, output, headers, cache_duration and http_method. The description adds only a modest amount — the query-vs-body placement rule and the instruction to omit the method field. Baseline 3 is appropriate given how much the schema already carries.

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 — 'Fetch a URL using upstream POST and cache its text response' — and pins the method as fixed, which distinguishes it from the GET variant of the same cache endpoint. It stops short of naming the sibling (api_post_cache_get) explicitly, so the differentiation is inferential rather than stated.

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?

It gives actionable constraints ('do not supply method', 'Supply API parameters in query or body') and points to the upstream API docs, which implies the correct usage context. However, there is no explicit statement of when to choose this over the GET cache sibling or when caching is inappropriate, so guidance is implied rather than spelled out.

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