Benji Pays
Server Details
Sits between accounting and payment rails for reminders, Pay Now, autopay, portal, and book sync.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- bpays/benji-pays-agent-plugin
- GitHub Stars
- 0
TDQS
Scored across 4 tools
Each tool has a distinct role: listing all endpoints, searching for specific ones, getting details, and executing requests. The only mild overlap is between list-endpoints and search-endpoints, but their descriptions clearly differentiate broad enumeration from targeted discovery.
All tool names follow a consistent verb-noun pattern with lowercase hyphenation: execute-request, get-endpoint, list-endpoints, search-endpoints. The naming convention is uniform and predictable.
Four tools is an appropriate, well-scoped set for an API discovery and execution server. Each tool serves a necessary function without redundancy or bloat.
The tool surface covers the full API interaction workflow: discovering endpoints, inspecting endpoint details, and executing requests. Since execute-request handles any HTTP method, there are no obvious gaps for the server's stated purpose.
Available Tools
4 toolsexecute-requestExecute API RequestCDestructiveInspect
Executes an API request with a given HAR request object.
| Name | Required | Description | Default |
|---|---|---|---|
| harRequest | Yes | HAR request object |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=false, destructiveHint=true, and openWorldHint=true, so the safety profile is covered, but the description adds no further behavioral context such as response shape, external side effects, auth implications, or error behavior. It neither contradicts the annotations nor enriches them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler, which is appropriately concise. It is slightly close to the title but does add the 'given HAR request object' qualifier, so it earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool that can execute arbitrary API requests with destructive and open-world annotations and no output schema, one sentence is insufficient. The agent is not told what the response will look like, whether the request is sent as-is, or how this tool fits with the sibling discovery tools, leaving important execution context undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is highly detailed, covering the HAR request shape, method options, headers, query strings, and postData alternatives with descriptions on all fields. Since schema description coverage is 100%, the description does not need to add parameter semantics, and the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete action, 'Executes an API request,' and identifies the input as a HAR request object, which clearly separates it from the read-only siblings get-endpoint, list-endpoints, and search-endpoints. It does not explicitly contrast itself with those siblings, so it misses the top mark.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus the sibling discovery tools, nor any prerequisites such as finding an endpoint first or cautioning about destructive side effects. The presence of sibling tool names alone does not explain the selection logic.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-endpointGet Endpoint DetailsARead-onlyInspect
Gets detailed information about a specific API endpoint, including security schemes and servers
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | The API endpoint path (e.g. /api/v1/users). | |
| method | Yes | The HTTP method (e.g. GET, POST, PUT, DELETE). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds context about what kind of detail is returned (security schemes and servers), but it does not describe behaviors like error handling, not-found cases, or how much detail is included.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence, front-loaded with the core purpose and followed by relevant detail. There is no filler or repetition of the tool name or annotation content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read-only lookup with a readOnlyHint annotation, the description is mostly sufficient. It names key response aspects, though without an output schema it leaves 'detailed information' somewhat open-ended.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both path and method are fully described in the input schema with examples, and schema description coverage is 100%. The tool description does not add any additional semantic meaning beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Gets') and resource ('detailed information about a specific API endpoint'), and even names representative contents (security schemes, servers). This distinguishes it from list-endpoints and search-endpoints, which are about discovery rather than targeted detail retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'specific API endpoint' implies this is for when the path and method are already known, but it does not explicitly contrast with list-endpoints/search-endpoints for discovery or execute-request for invocation. Usage context is present only by inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-endpointsList API EndpointsARead-onlyInspect
Lists all API paths and their HTTP methods with summaries, organized by path. Results can be passed directly into 'get-endpoint'.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true, the safe read nature is already covered by annotations. The description adds behavioral detail beyond that: it returns all API paths along with HTTP methods and summaries, organizes results by path, and emits output suitable for chaining into get-endpoint. This is useful context not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The first sentence states the core action and output, and the second adds a valuable composition hint. Every sentence earns its place and the essential information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, parameterless listing tool, the description fully covers what is returned, how results are organized, and how they can be used next. The readOnlyHint annotation handles side-effect transparency, and no output schema is necessary given the clear description of the result contents.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema and annotations already fully define invocation requirements. The description adds no parameter-level semantics, but none are needed; the baseline of 4 for parameterless tools is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description begins with a specific verb and resource: 'Lists all API paths and their HTTP methods with summaries.' It clearly defines the tool's scope as enumerating endpoints rather than executing or fetching one, which differentiates it from the sibling tools get-endpoint and execute-request.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a workflow by noting that results can be passed directly into 'get-endpoint', which gives some usage context. However, it does not explicitly say when to choose list-endpoints over search-endpoints or when not to use it, so the guidance is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-endpointsSearch API EndpointsARead-onlyInspect
Performs a deep search through paths, operations, and parameters to discover relevant API endpoints. Use this tool to find specific API capabilities, required parameters, or data models based on search keywords. Results can be passed directly into 'get-endpoint'.
| Name | Required | Description | Default |
|---|---|---|---|
| pattern | Yes | Search pattern (case-insensitive) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds context beyond that by explaining the depth of the search and that results are directly consumable by 'get-endpoint'. This gives useful behavioral information about the output pipeline without contradicting the read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no redundancy. It front-loads the core action, then gives the use case and downstream handoff, with every sentence earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only search tool, this description is complete. It explains what is searched, why to use it, and how results should be handled next; no output schema is required because the description already establishes the connection to 'get-endpoint'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the 'pattern' parameter is already well documented as a case-insensitive search pattern. The description adds only a general reference to 'search keywords', which is consistent but does not materially expand on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('deep search'), a clear resource ('API endpoints'), and the scope of the search ('paths, operations, and parameters'). It distinguishes itself from siblings such as list-endpoints by emphasizing discovery instead of simple enumeration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to use the tool: 'to find specific API capabilities, required parameters, or data models based on search keywords.' It also gives a clear downstream workflow by noting results can be passed into 'get-endpoint', though it does not explicitly name alternatives or exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
execute-request - First observed
get-endpoint - First observed
list-endpoints - First observed
search-endpoints
Related MCP Connectors
Manage expenses, corporate cards, accounts payable, and accounting integrations
Financial OS for small businesses: transactions, invoices, customers, time tracking and reports.
Scheduling, availability, clients, billing and CRM for appointment-based services.
Bookkeeping for owner-operated businesses. Query transactions, invoices, and reports.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceFinancial data infrastructure for AI agents. Connect to a startup's books to read live P&L and bank balances, review and reclassify transactions, manage the chart of accounts, and connect banking sources.-
- FlicenseNot gradedqualityCmaintenanceEnables accounts payable teams to extract invoice data from PDFs and images, detect duplicates, normalize vendor names, calculate payment terms, and validate invoice completeness. Supports local extraction for text PDFs and optional vision providers for scanned documents.-
- FlicenseNot gradedqualityBmaintenanceEnables AI agents and human operators to manage Stripe payment operations, SaaS billing, subscriptions, refunds with safety caps, and Austrian/EU tax compliance including VAT and BAO record retention.1-
- AlicenseNot gradedqualityBmaintenanceAn accounting-ops agent that reconciles payments against open orders, auto-books provably safe payments through a deterministic policy gate, and escalates exceptions to a human queue with audit trails.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.