Skip to main content
Glama
elabbarw

mcp-oraclefusion

by elabbarw

mcp-oraclefusion

An MCP (Model Context Protocol) server for Oracle Fusion Cloud ERP. Gives any MCP-compatible AI client (Claude, Cursor, Windsurf, etc.) read-only access to your Oracle Fusion data via STDIO transport.

Authentication: Basic Auth, Oracle JWT, (WIP: OAuth via Microsoft Entra ID)

Quick start

Install and run via uvx:

{
  "mcpServers": {
    "oracle-fusion": {
      "command": "uvx",
      "args": ["mcp-oraclefusion"],
      "env": {
        "ORACLE_FUSION_BASE_URL": "https://your-oracle-instance.fa.ocs.oraclecloud.com",
        "ORACLE_USERNAME": "your.name@example.com",
        "ORACLE_PASSWORD": "your_oracle_password"
      }
    }
  }
}

Or run directly:

pip install mcp-oraclefusion
export ORACLE_FUSION_BASE_URL=https://your-oracle-instance.fa.ocs.oraclecloud.com
export ORACLE_USERNAME=your.name@example.com
export ORACLE_PASSWORD=your_oracle_password
mcp-oraclefusion

Related MCP server: VortexIQ MCP Connector

What you can do

Ask natural-language questions about your Oracle Fusion data:

  • "Show me all invoices from Google in Q1 2025"

  • "Find open purchase orders from Dell over $50,000"

  • "What's the USD to EUR corporate exchange rate for January 2025?"

  • "Search requisitions pending approval in US Operations"

  • "Look up supplier details for ACME Corp including sites and contacts"

  • "Show AR invoices for customer XYZ"

  • "Test the Oracle connection and show record counts"

  • "What's the total invoice amount from Google this quarter?"

  • "Break down AP spend by supplier, top 10"

  • "What percentage of total spend is each business unit?"

Tools (30 read + 7 write)

Accounts Payable

search_invoices, get_invoice_details, search_payments, get_payment_details, list_payment_terms

Procurement

search_purchase_orders, get_po_details, search_suppliers, get_supplier_details, search_requisitions, search_receiving_receipts, search_approved_suppliers, search_categories

General Ledger

search_journal_batches, search_gl_balances, list_ledgers, list_chart_of_accounts, search_currency_rates

Accounts Receivable

search_ar_invoices, get_ar_invoice_details, search_receipts

Expenses & HCM

search_expense_reports, search_user_accounts

Infrastructure

test_oracle_connection

Math / Aggregation

aggregate_records, sumif_records, group_by_aggregate, lookup_record, percentage_of_total, safe_divide

These tools run locally — no Oracle API calls. They use Python Decimal arithmetic to avoid float drift on currency values. The LLM fetches records with the search tools above, then passes them to these tools for exact computation (sums, averages, conditional aggregation, group-by pivots, percentages, ratios).

Write tools (set MCP_MODE=full to enable)

create_purchase_order, update_po_distribution, change_po_status, create_invoice, change_invoice_status, create_requisition, change_requisition_status

Configuration

Env var

Required

Description

ORACLE_FUSION_BASE_URL

Yes

Your Oracle Fusion instance URL

ORACLE_USERNAME

Yes

Your Oracle Fusion username (email)

ORACLE_PASSWORD

If no JWT

Your Oracle Fusion password

ORACLE_FUSION_API_VERSION

No

REST API version (default 11.13.18.05)

MCP_MODE

No

readonly (default) or full (enables write tools)

LOG_LEVEL

No

WARNING (default), INFO, DEBUG — logs go to stderr

OAuth / Microsoft Entra ID (coming soon)

OAuth login via Microsoft Entra ID is supported for multi-user deployments where each user authenticates with their corporate identity. This is currently being tested internally and will be documented once validated.

JWT authentication (alternative to password)

Instead of a password you can authenticate with an RSA private key + certificate registered in Oracle's Security Console (API Authentication). Set these env vars and omit ORACLE_PASSWORD:

Env var

Description

ORACLE_JWT_PRIVATE_KEY_PATH

Path to the RSA private key PEM file

ORACLE_JWT_PRIVATE_KEY

Inline PEM key (alternative to path, useful in containers)

ORACLE_JWT_CERT_PATH

Path to the matching X.509 certificate PEM file

ORACLE_JWT_ISSUER

Trusted issuer value configured in Oracle

The server tries JWT first and falls back to Basic Auth if the JWT vars are not set.

Oracle REST API notes

  • Query filters use Oracle syntax: conditions joined with ; (AND), string matching with LIKE '*term*'

  • Some fields are not queryable (x-queryable: false) — the server uses finders or client-side filtering

  • CLOB fields are excluded from collection projections to avoid Oracle 500 errors

  • The server auto-retries Oracle 500s by progressively stripping totalResults and fields params

  • Status changes use Oracle action endpoints (POST /resource/{id}/action/{name}), not PATCH

  • Supplier names are UPPERCASE in Oracle

  • Pagination via limit/offset; hasMore indicates additional pages

Requirements

  • Python 3.10+

  • Oracle Fusion Cloud instance with REST API access and a user account

Author

Wanis Elabbar

License

MIT

Available Tools

30 tools
aggregate_recordsA

Compute an aggregate (sum, avg, min, max, median, count, count_nonnull) over a numeric field in a list of records. Use this for ANY arithmetic on Oracle Fusion data — do NOT compute sums, averages, or counts yourself. All math uses exact Decimal arithmetic to avoid float drift on currency values.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldYesField name to aggregate (e.g. 'InvoiceAmount', 'TotalAmount').
recordsYesArray of record objects from a previous search tool call.
operationYesAggregation operation.
decimal_placesNoDecimal places for rounding (default 2).

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description fully bears the burden. It discloses that exact Decimal arithmetic is used to avoid float drift, which is critical for currency values. No mention of auth or rate limits, but the arithmetic behavior is well covered.

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

Conciseness5/5

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

Two sentences that efficiently cover purpose, operations, usage directive, and behavioral detail. No redundant 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?

No output schema and no mention of return format. While the operation is simple, the description could be more complete by indicating what the tool returns (e.g., a decimal number). Missing error or validation context.

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 100%, so baseline is 3. The description adds examples like 'InvoiceAmount' but does not significantly extend beyond the schema's parameter descriptions.

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?

Clearly states the verb 'Compute' and the resource 'aggregate' with all supported operations. Explicitly distinguishes from other arithmetic tools by saying 'Use this for ANY arithmetic on Oracle Fusion data — do NOT compute sums, averages, or counts yourself.'

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?

Provides strong directive to use this tool for all arithmetic, and warns against manual computation. However, it does not differentiate from sibling tools like sumif_records or group_by_aggregate, which could have distinct use cases.

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

get_ar_invoice_detailsB

Get full details for a single AR invoice by its numeric CustomerTransactionId.

ParametersJSON Schema
NameRequiredDescriptionDefault
expand_linesNo
transaction_idYes

TDQS

B3/5.0
Behavior3/5

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

Description implies a read operation ('get full details'), but no annotations are provided to confirm. Lacks details on idempotency, permissions, or side effects. Minimal behavioral context.

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

Conciseness5/5

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

Single sentence, 17 words, front-loaded with purpose. No redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Does not explain what 'full details' includes, return format, error handling, or behavior for missing IDs. Incomplete for a tool with no output schema and no annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Description mentions 'numeric CustomerTransactionId' which clarifies the transaction_id parameter but does not explain the optional 'expand_lines' parameter. With 0% schema description coverage, more parameter info is needed.

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?

Description clearly states the tool retrieves full details for a single AR invoice by numeric ID. However, it does not distinguish from sibling tools like 'get_invoice_details' or 'search_ar_invoices', which may have overlapping functionality.

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?

No guidance on when to use this tool versus alternatives. Does not specify prerequisites, context, or exclusions.

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

get_invoice_detailsB

Get full details for a single AP invoice by its numeric InvoiceId.

ParametersJSON Schema
NameRequiredDescriptionDefault
invoice_idYes
expand_linesNo

TDQS

B3.3/5.0
Behavior2/5

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

Without annotations, the description must disclose behavioral traits. 'Get full details' implies read-only, but there is no explicit statement about safety or side effects. The tool likely only retrieves data, but this is not confirmed, nor is the scope of 'full details' explained.

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

Conciseness5/5

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

The description is a single, concise sentence that conveys the essential purpose without any extraneous words. It is front-loaded and efficient.

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?

Given no annotations, no output schema, and 0% schema coverage, the description could be more complete. It omits explanation of expand_lines, the meaning of 'full details,' and any prerequisites or response format. Adequate for a simple retrieval tool but with gaps.

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 coverage is 0%, so the description must compensate. It clarifies invoice_id as numeric, which adds value over the schema's integer type. However, expand_lines (optional boolean) is not mentioned at all, leaving its purpose unclear. Partial compensation for one parameter.

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 tool's action ('Get full details'), resource ('single AP invoice'), and key identifier ('by its numeric InvoiceId'). It effectively distinguishes from sibling tools like get_ar_invoice_details (AR vs AP) and get_payment_details (different resource).

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?

No guidance is provided on when to use this tool versus alternatives. For example, it doesn't explain when to prefer this over search_invoices for listing or when to use expand_lines. There is no mention of context or limitations.

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

get_payment_detailsA

Get full details for a single AP payment by its numeric PaymentId.

ParametersJSON Schema
NameRequiredDescriptionDefault
payment_idYes

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided, so the description must carry behavioral disclosure. It describes a read operation but does not disclose what 'full details' includes, any authorization requirements, or rate limits. However, for a simple retrieval, the description is minimally adequate.

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

Conciseness5/5

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

One sentence, concise and front-loaded. No filler or redundant information.

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 simplicity (1 required param, no nested objects, no output schema), the description is largely complete for its purpose. However, 'full details' could be clarified, and the absence of output schema means agents might need more info on return format.

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 coverage is 0%, but the description adds that PaymentId is numeric, which adds meaning beyond the schema's integer type. However, it lacks elaboration on constraints, format, or expected range.

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 tool retrieves full details for a single AP payment using a numeric PaymentId. It uses a specific verb 'Get' and distinguishes from siblings like search_payments (which lists multiple payments).

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 description implies when to use (when you have a numeric PaymentId and want full details) but does not explicitly exclude cases or mention alternatives like search_payments for filtering. No when-not-to-use guidance.

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

get_po_detailsA

Get full details for a single purchase order by its numeric POHeaderId, including lines.

ParametersJSON Schema
NameRequiredDescriptionDefault
po_idYes

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool returns full details including lines, suggesting a read operation. However, it doesn't mention permissions, side effects, or response size.

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

Conciseness5/5

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

The description is a single sentence that is front-loaded and contains no wasted words. It efficiently communicates the tool's purpose.

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 simplicity (one parameter, no output schema), the description is largely complete. It specifies input and high-level output (details and lines). It could mention response structure, but not essential for a get-by-ID tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should add significant meaning. It only states 'by its numeric POHeaderId', confirming the parameter is the PO ID. This is minimal; it doesn't clarify expected format or constraints beyond the schema's integer type.

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 tool retrieves full details for a single purchase order by its numeric POHeaderId, including lines. The verb 'Get' and resource 'full details for a purchase order' are specific and distinguish it from sibling search tools like search_purchase_orders.

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?

Usage is implied but not explicit. The description doesn't provide when-to-use guidance or mention alternatives like search_purchase_orders for filtering. It assumes the agent knows to use this when they have a specific POHeaderId.

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

get_supplier_detailsA

Get full details for a single supplier by its numeric SupplierId, including sites, contacts, and addresses.

ParametersJSON Schema
NameRequiredDescriptionDefault
supplier_idYes

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It discloses that the output includes sites, contacts, and addresses, but does not mention read-only behavior, authentication requirements, error handling, or rate limits. Some behavioral context is present but incomplete.

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

Conciseness5/5

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

The description is a single, concise sentence with no filler. It efficiently communicates the tool's purpose and the nature of the returned data.

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 has only one parameter and no output schema, the description adequately explains the tool's function and output structure (details including sites, contacts, addresses). Missing details about error cases or missing suppliers, but still fairly complete for a simple retrieval tool.

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?

The input schema has no parameter description (coverage 0%), but the description adds semantic meaning: 'by its numeric SupplierId' clarifies the parameter type (integer) and its role as a unique identifier. This compensates well for missing schema metadata.

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 tool retrieves full details for a single supplier by numeric ID, including specific components like sites, contacts, and addresses. This distinguishes it from sibling tools like search_suppliers (which return lists) and other detail retrieval tools.

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 description implies use when you have a specific numeric SupplierId, but does not explicitly state when to use this tool versus alternatives like search_suppliers for non-ID based queries. No exclusions or alternative tool names are mentioned.

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

group_by_aggregateB

Group records by a field and aggregate another field per group. Like a SQL GROUP BY or Excel pivot. Returns sorted results with optional limit. Use for subtotals by supplier, business unit, status, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax number of groups to return (e.g. top 10).
recordsYesArray of record objects.
sort_byNoSort order (default: value_desc = highest first).value_desc
agg_fieldYesField to aggregate within each group.
operationNoAggregation operation (default: sum).sum
group_fieldYesField to group by (e.g. 'SupplierName', 'BusinessUnit').
decimal_placesNo

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided, so description must disclose behavioral traits. It notes 'Returns sorted results with optional limit', but does not mention side effects (read-only), authentication needs, or error conditions. Missing key behavioral info for a tool that processes data.

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

Conciseness5/5

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

Two sentences: definition, analogy, and usage example. Front-loaded with core functionality. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite complexity (7 params, no output schema), description is very brief. Does not explain return format, edge cases (nulls, empty records), or the decimal_places parameter. Incomplete for full understanding.

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 high (86%), so baseline is 3. Description adds 'Group records by a field and aggregate another field' which aligns with schema. Does not provide additional meaning beyond what schema already offers for each parameter.

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?

Description clearly states verb+resource: 'Group records by a field and aggregate another field per group.' Uses helpful analogies (SQL GROUP BY, Excel pivot) and provides concrete examples (subtotals by supplier, business unit, status). Distinct purpose is evident.

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?

Description suggests when to use ('Use for subtotals...'), but does not explicitly state when not to use or compare with sibling tools like sumif_records or aggregate_records. Usage context is implied but lacks exclusions.

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

list_chart_of_accountsC

List chart of accounts structures defined in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
nameNo
limitNo
offsetNo

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits such as pagination, authentication needs, or side effects. The minimal description 'List chart of accounts structures' lacks transparency.

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 description is a single short sentence, which is concise but provides insufficient detail. It is appropriately brief but lacks essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of output schema, annotations, and parameter explanations, the description is incomplete. It does not convey the structure of returned data or pagination behavior, leaving critical gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description adds no meaning to the four parameters (q, name, limit, offset). The agent is left without any guidance on how to use the parameters.

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 the verb 'list' and resource 'chart of accounts structures' clearly, and the tool is differentiated from siblings that focus on specific record types like invoices or payments.

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?

No guidance on when to use this tool versus alternatives (e.g., search tools, ledger listing). The description provides no context for appropriate usage.

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

list_ledgersC

List defined ledgers in Oracle Fusion General Ledger.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
nameNo
limitNo
offsetNo
ledger_typeNo

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are present, so the description carries full burden. It fails to disclose scope (e.g., what 'defined' means), pagination behavior, or any side effects. The agent lacks essential behavioral cues.

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 description is extremely brief (7 words), which is concise but at the expense of essential details. It is front-loaded but incomplete.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters, no output schema, and no annotations, the description is grossly insufficient. It does not explain ledger concepts, parameter usage, or response format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description adds no parameter information. The meaning of 'q', 'name', etc. is entirely unexplained, leaving the agent to guess.

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?

Description uses specific verb 'List' and resource 'defined ledgers' with domain context 'in Oracle Fusion General Ledger'. It clearly indicates the tool's purpose, though it does not differentiate from sibling tools like list_chart_of_accounts.

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?

No guidance on when to use this tool versus siblings. No exclusions, prerequisites, or alternatives mentioned. The description provides no context for decision-making.

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

list_payment_termsC

List Accounts Payable payment terms defined in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
nameNo
limitNo
offsetNo

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, and the description only states the action (list) without disclosing side effects, authentication needs, rate limits, or data freshness. The description is too minimal for a tool with no annotation coverage.

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 description is concise (one sentence) but it is under-specified, lacking important details. It is not overly verbose, but the brevity sacrifices usefulness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no parameter documentation, the description is insufficient for an agent to understand expected inputs, return values, or pagination behavior. It meets minimal completeness for a simple list operation but lacks critical detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain any of the 4 parameters (q, name, limit, offset). It adds no semantic value beyond the schema's parameter names.

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 clearly states it lists Accounts Payable payment terms defined in Oracle Fusion, using a specific verb and resource. It distinguishes from sibling tools like list_chart_of_accounts or list_ledgers by focusing on payment terms.

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?

No guidance on when to use this tool versus similar search or list tools. It does not mention prerequisites, typical use cases, or exclude situations where other tools (e.g., search_suppliers) would be more appropriate.

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

lookup_recordA

Find a record by field value — like VLOOKUP/XLOOKUP. Returns the first match or all matches. Use for finding a specific invoice, supplier, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldYesField to search in.
valueYesValue to match.
recordsYesArray of record objects.
operatorNoComparison operator (default: eq).eq
return_allNoReturn all matches (true) or just first (false).

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It explains that the tool returns the first match or all matches and uses an XLOOKUP analogy, but does not cover edge cases (e.g., no match), error handling, or performance characteristics. The behavior is partially disclosed but lacks completeness.

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 two sentences and very concise, with no unnecessary words. It is front-loaded with the core purpose. However, it could be slightly more structured by separating the what from the when-to-use.

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 no output schema, the description explains what is returned (first match or all matches) but does not specify the format (e.g., returns record objects). It operates on a provided records array, which is implied but not explicitly stated. The sibling tools are mostly search tools, so the context of an in-memory lookup is fairly clear. Overall, it is mostly complete for a simple lookup tool.

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 input schema has 100% coverage, so the parameters are already described. The description adds marginal value by clarifying 'returns the first match or all matches' which relates to the return_all parameter, but does not add meaning to field, value, records, or operator beyond the schema.

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 tool finds a record by field value, using analogies to VLOOKUP/XLOOKUP, and specifies it returns first or all matches. It distinguishes itself from sibling search tools by focusing on in-memory lookups on provided records rather than database searches.

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 explicitly says 'Use for finding a specific invoice, supplier, etc.', giving clear usage context. However, it does not mention when not to use it or provide alternatives like the sibling search tools for database-wide searches, though the context implies it's for in-memory lookups.

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

percentage_of_totalA

Calculate each record's or group's share of the total for a numeric field. Optionally group by a field first. Returns percentages that sum to 100.

ParametersJSON Schema
NameRequiredDescriptionDefault
recordsYesArray of record objects.
group_fieldNoOptional: group by this field before computing percentages.
value_fieldYesNumeric field to compute percentages for.
decimal_placesNo

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description partially covers behavior (percentages sum to 100) but lacks disclosure of edge cases like empty records, zero totals, or null handling.

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

Conciseness5/5

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

Two concise sentences with no wasted words, front-loaded with the core functionality.

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?

Lacks output schema; description does not specify return structure (e.g., added field name or format), leaving the agent guessing about the result shape.

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 covers 75% of parameters with descriptions; the description reinforces the grouping option and purpose but adds no extra syntax or constraints beyond the schema.

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 tool calculates percentages of total for a numeric field, optionally grouped, distinguishing it from sibling tools like aggregate_records or group_by_aggregate which do not specifically compute percentages summing to 100.

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?

No guidance on when to use this tool versus alternatives like group_by_aggregate or sumif_records, nor any when-not or prerequisite information.

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

safe_divideA

Divide two numbers with exact Decimal arithmetic. Returns null on divide-by-zero instead of erroring. Use for ratios, rates, per-unit costs.

ParametersJSON Schema
NameRequiredDescriptionDefault
numeratorYesThe dividend.
denominatorYesThe divisor.
decimal_placesNo

TDQS

A4/5.0
Behavior4/5

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

Discloses key behavioral traits: exact decimal arithmetic and null return on divide-by-zero. Since no annotations are provided, description carries the full burden, and this is sufficient for a simple math tool. However, it omits precision/rounding behavior implied by decimal_places parameter.

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

Conciseness5/5

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

Two concise sentences with no wasted words. Front-loaded with function and behavior, followed by usage guidance.

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?

Covers purpose, usage, and key behavior. Missing details on decimal_places semantics (rounding/truncation) and the return type for normal cases. Without an output schema, these gaps reduce completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Description does not add meaning beyond the input schema for numerator and denominator, and it completely ignores the decimal_places parameter. With 67% schema coverage, the description fails to compensate for the undocumented parameter.

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?

Description clearly states the verb 'divide' and resource 'two numbers'. It specifies 'exact Decimal arithmetic' and 'returns null on divide-by-zero', distinguishing it from other arithmetic tools like percentage_of_total.

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?

Explicitly states use cases: 'Use for ratios, rates, per-unit costs.' This provides clear context for when to use the tool, though it doesn't explicitly state when not to use it or list alternatives.

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

search_approved_suppliersC

Search the approved supplier list in Oracle Fusion Procurement.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
itemNo
limitNo
offsetNo
statusNo
supplierNo
procurement_buNo

TDQS

C2.3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of disclosure. It only states 'Search', implying a read operation, but does not disclose any behavioral traits such as pagination, sorting, authentication needs, or limits. The description is insufficient for the agent to understand the tool's behavior beyond its basic function.

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?

While the description is a single sentence and concise, it is under-specified for a tool with 7 parameters and no schema descriptions. It lacks necessary detail, making it insufficient for effective tool selection and invocation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and 7 undocumented parameters, the description is severely incomplete. It does not address return format, error handling, required permissions, or how to construct effective queries. The agent lacks critical context for proper usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, meaning the input schema provides no explanations for the 7 parameters (q, item, limit, offset, status, supplier, procurement_bu). The description adds no information about these parameters, failing to clarify their purpose or expected values. This is a critical gap.

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 clearly states the verb 'Search' and the resource 'approved supplier list' within 'Oracle Fusion Procurement'. It indicates a specific subset of suppliers, distinguishing it from sibling tool 'search_suppliers' which likely covers all suppliers. However, it could be more explicit about the scope and differentiation.

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?

The description provides no guidance on when to use this tool versus alternatives like 'search_suppliers' or other search tools. There is no mention of context, prerequisites, or exclusions, leaving the agent to infer usage without explicit direction.

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

search_ar_invoicesC

Search Accounts Receivable invoices (customer billing) in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
limitNo
offsetNo
statusNo
date_toNo
customerNo
date_fromNo
business_unitNo

TDQS

C2.3/5.0
Behavior2/5

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

No annotations provided, and the description fails to disclose behavioral traits such as whether it's read-only, pagination behavior, or search capabilities. It only states the general action.

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 a single concise sentence, but it lacks necessary information to be useful, sacrificing completeness for brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 8 required parameters, no output schema, and no parameter descriptions, the description is woefully incomplete. It provides no context on search behavior, default values, or expected results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no meaning to any of the 8 parameters. The agent must infer parameter purpose from names alone.

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 clearly states the tool searches Accounts Receivable invoices in Oracle Fusion, specifying the domain (AR) and system. It distinguishes from 'search_invoices' by scoping to AR, but lacks explicit differentiation from sibling 'get_ar_invoice_details'.

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?

No guidance on when to use this tool versus siblings like 'search_invoices' or 'get_ar_invoice_details'. Usage context is only implied by the scope (AR invoices).

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

search_categoriesC

Search procurement browsing categories in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
nameNo
limitNo
offsetNo
category_typeNo

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral disclosure. It only says 'search', offering no details on pagination, case sensitivity, authorization requirements, or whether results are filtered automatically.

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 description is a single sentence, making it concise. However, it sacrifices necessary detail for brevity, leaving the agent underinformed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters, no output schema, and no annotations, the description is insufficient. An agent cannot determine proper usage of limit, offset, or category_type without external knowledge.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, requiring the description to explain parameters. It fails to do so: no clarification on what 'q' versus 'name' mean, or how 'category_type' modifies the search. The description adds zero parameter value.

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 uses a specific verb ('Search') and resource ('procurement browsing categories') to state its purpose. While it distinguishes from many sibling tools that search other entities, it could be more precise about what 'browsing categories' entails.

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?

No guidance is provided on when to use this tool versus alternative search tools like search_approved_suppliers or search_invoices. The description gives no context for appropriate usage scenarios.

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

search_currency_ratesC

Search daily currency exchange rates in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
end_dateNo
start_dateNo
to_currencyNo
from_currencyNo
conversion_typeNoCorporate

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, and the description only states the basic purpose. It does not disclose any behavioral traits such as what the parameters do, query behavior, or any side effects. Minimal value added beyond the tool name.

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 description is concise (one sentence) and front-loaded, but it is under-specified. It lacks crucial details that could be added without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain how to use the tool, what the parameters do, or what the response contains, making it inadequate for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description provides no information about the 7 parameters (e.g., start_date, to_currency). Schema description coverage is 0%, so the description must compensate but completely fails to explain parameter meanings or usage.

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 it searches daily currency exchange rates in Oracle Fusion, which is a clear verb+resource. However, it does not differentiate from sibling search tools, though no other currency-related sibling exists in the list.

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?

No guidance is provided on when to use this tool versus alternatives or any prerequisites. Siblings include many search tools but none specific to currency rates, yet the description lacks any explicit usage context.

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

search_expense_reportsC

Search employee expense reports in Oracle Fusion. NOTE: May return 403 depending on service account privileges.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
limitNo
offsetNo
statusNo
date_toNo
employeeNo
date_fromNo
business_unitNo

TDQS

C2.3/5.0
Behavior2/5

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

Only mentions potential 403 error. No disclosure of pagination, authorization beyond the note, return format, or other behavioral traits. With no annotations, the description carries the full burden but is insufficient.

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 extremely brief, with only one sentence and a note. It lacks critical information, making it under-specified rather than concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 8 undocumented parameters, no output schema, and no sibling differentiation, the description is severely incomplete. It fails to equip the agent for accurate invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, and the description adds no explanation for any of the 8 parameters. The agent gets no help understanding what values to provide.

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 clearly states it searches employee expense reports and specifies the system (Oracle Fusion). It distinguishes from sibling tools like search_invoices, though no explicit differentiators are given.

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?

No guidance on when to use this tool versus others. The note about 403 errors provides a caution but does not help in selecting between alternatives.

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

search_gl_balancesC

Get GL account balances. ALL parameters are REQUIRED by the Oracle API.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoDetail
limitNo
ledgerYesLedger name, exact match. REQUIRED.
offsetNo
periodYesAccounting period. REQUIRED. Format: 'Mon-YY'
currencyYesCurrency code. REQUIRED.
account_combinationYesChart of accounts combination. REQUIRED.

TDQS

C2.2/5.0
Behavior1/5

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

No annotations are provided, so the description must disclose behavior. It falsely claims 'ALL parameters are REQUIRED by the Oracle API', contradicting the input schema where only 4 of 7 are required. It fails to explain defaults, pagination, or any side effects.

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 description is very short (two sentences), which is concise. However, the second sentence is inaccurate, reducing effectiveness. It front-loads the purpose but fails to provide accurate details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters, no output schema, and no annotations, the description is severely incomplete. It omits return value format, error conditions, and proper parameter guidance. The false requirement statement adds confusion.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 57%, but the description adds no value beyond the schema. It repeats that parameters are required (incorrectly) and does not explain 'mode', 'limit', or 'offset'. The schema's own descriptions are minimal.

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 description states 'Get GL account balances' which is a clear verb and resource. However, it does not differentiate from siblings, and the misleading claim that all parameters are required detracts from clarity. The tool appears unique among siblings, but the inaccuracy reduces the score.

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?

No guidance is provided on when to use this tool versus alternatives, nor any prerequisites or exclusions. The description simply restates the function without usage context.

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

search_invoicesA

Search Accounts Payable invoices in Oracle Fusion. Examples: search_invoices({"supplier": "google"}) finds invoices from Google. search_invoices({"invoice_number": "INV-001"}) finds a specific invoice. search_invoices({"date_from": "2024-01-01", "date_to": "2024-03-31"}) finds invoices in Q1 2024.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoAdvanced Oracle REST filter. Use Oracle syntax with semicolons as AND.
limitNo
offsetNo
statusNoInvoice validation status. Values: 'Validated', 'Needs Revalidation', 'Unvalidated'
date_toNoEnd of invoice date range. Format: YYYY-MM-DD
supplierNoSupplier/vendor name to search for. Partial match from start, automatically uppercased.
date_fromNoStart of invoice date range. Format: YYYY-MM-DD
business_unitNoBusiness unit name, exact match.
invoice_numberNoExact invoice number.

TDQS

A4.2/5.0
Behavior3/5

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

No annotations provided, so description carries burden. It discloses supplier partial match and auto-uppercase, but does not mention auth needs, rate limits, read-only nature, or response format. Could be more transparent about side effects.

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

Conciseness5/5

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

Description is concise with three examples. No filler sentences; each line serves a purpose. Front-loaded with tool purpose.

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?

Covers main use cases with examples. Missing details about limit/offset pagination and how to combine parameters. Output schema absent, but acceptable for a search tool. Mostly complete.

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?

With 78% schema coverage, baseline is 3. Description adds practical semantics via examples (e.g., using supplier 'google' finds invoices from Google) and details like 'automatically uppercased' for supplier. This exceeds schema descriptions.

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 it searches 'Accounts Payable invoices in Oracle Fusion.' It distinguishes from sibling tools like search_ar_invoices (AR invoices) and search_purchase_orders. Examples illustrate specific use cases.

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?

Examples show when to use each parameter (supplier, invoice_number, date range). However, no explicit guidance on when not to use or alternatives among the 29 sibling search tools. The context is clear but lacks exclusions.

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

search_journal_batchesC

Search General Ledger journal batches in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
limitNo
offsetNo
periodNoFormat: 'Mon-YY'
sourceNo
statusNo

TDQS

C2.6/5.0
Behavior2/5

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

No annotations provided, and the description lacks behavioral details such as result format, pagination, authentication requirements, or rate limits. Only says 'Search', which is minimal.

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?

Single sentence is concise but lacks necessary details. Could be more informative without being verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, minimal parameter documentation, and no usage context. For a search tool with 6 parameters, this is insufficient for confident invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 6 parameters with only 17% coverage (period). The description adds no parameter explanations, relying entirely on the sparse schema definitions.

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?

Description clearly states 'Search General Ledger journal batches in Oracle Fusion', specifying a verb and a concrete resource. However, it does not differentiate from sibling tools like search_gl_balances, which could cause confusion.

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?

No guidance on when to use this tool versus alternatives. With many search-related siblings, explicit usage conditions are missing.

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

search_paymentsC

Search Accounts Payable payments in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
limitNo
offsetNo
statusNo
date_toNo
supplierNo
date_fromNo
business_unitNo

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the tool searches payments, but fails to describe traits such as read-only status, potential rate limits, required permissions, or interaction side effects. The description is insufficient for safe invocation.

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 description is a single sentence that front-loads the core purpose. While concise, it is too minimal given the complexity of the tool, omitting necessary details. It earns a pass for lack of fluff but is under-specified.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 8 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain pagination, result format, filtering behavior, or any constraints, leaving the agent with insufficient information to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description does not explain any of the 8 parameters (q, limit, offset, status, date_to, supplier, date_from, business_unit), and schema description coverage is 0%. The description adds no value beyond the parameter names in the schema, making parameter usage ambiguous.

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 clearly states the tool searches 'Accounts Payable payments in Oracle Fusion,' providing a specific verb and resource that distinguishes it from sibling search tools like search_invoices or search_suppliers. However, it does not elaborate on the scope (e.g., all AP payments or a subset), preventing a higher score.

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?

No guidance is given on when to use this tool versus alternatives like get_payment_details or search_invoices. There are no explicit when-to-use, when-not-to-use, or prerequisite conditions, leaving the agent without context for proper selection.

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

search_purchase_ordersC

Search purchase orders in Oracle Fusion Procurement.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
buyerNo
limitNo
offsetNo
statusNoValues: 'OPEN', 'CLOSED', 'APPROVED', 'INCOMPLETE'
supplierNo
requesterNoPartial match on RequesterDisplayName. Note: filtered client-side.

TDQS

C2.3/5.0
Behavior1/5

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

No annotations provided, and description does not disclose any behavioral traits (e.g., partial matching, pagination, authorization needs). Single vague sentence.

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?

Extremely concise but under-specified. One sentence with 7 words lacks necessary detail, failing to earn its place as a useful description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Incomplete for a tool with 7 parameters, no output schema, and many siblings. Does not explain search behavior, return format, or filtering options.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only 29% schema description coverage; description adds no parameter-level details. Parameters like q, buyer, supplier are left completely unexplained.

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?

Clearly states verb 'search' and resource 'purchase orders' with specific system 'Oracle Fusion Procurement'. Distinguishes from sibling tools that search other entities like invoices or suppliers.

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?

No guidance on when to use this tool versus alternatives like search_invoices or get_po_details. No mention of prerequisites or exclusions.

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

search_receiptsC

Search AR receipts (customer payments received) in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
limitNo
offsetNo
date_toNo
customerNo
date_fromNo
business_unitNo
receipt_numberNo

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavior such as read-only nature, authentication needs, or potential side effects. The brief statement 'Search' implies read-only but is not explicit.

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?

Single sentence is concise, but it sacrifices substance. It lacks front-loaded critical info like parameter hints or return value details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 8 parameters and no output schema, the description is insufficient to guide an agent. It omits details on filtering, pagination, and expected results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% with no parameter descriptions; the description adds no meaning to any of the eight parameters (e.g., q, date_to, customer). It fails to explain their purpose or format.

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?

Description clearly states the verb 'Search' and resource 'AR receipts (customer payments received)' in Oracle Fusion, distinguishing it from sibling tools like search_ar_invoices and search_payments.

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?

No guidance on when to use this tool vs. alternatives, no when-not-to-use or context provided. The one-sentence description lacks any usage direction.

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

search_receiving_receiptsC

Look up a goods receiving receipt by its receipt number. Receipt number is REQUIRED by the Oracle API.

ParametersJSON Schema
NameRequiredDescriptionDefault
receipt_numberYesREQUIRED.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It implies a read-only operation ('Look up'), but does not disclose what happens if the receipt is not found, the format of the results, or any behavior beyond the lookup. Minimal behavioral context.

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

Conciseness5/5

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

The description is two sentences with no wasted words. It directly states the purpose and a key constraint. Excellent conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple lookup tool with one parameter and no output schema, the description should hint at return values or error handling. It does not mention what the response contains or any conditions. Incomplete for an agent to fully anticipate behavior.

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 100%, so the schema already documents the parameter. The description adds emphasis that the receipt number is 'REQUIRED by the Oracle API', which marginally reinforces the requirement but does not add new semantic information beyond the schema.

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 clearly states the tool looks up a goods receiving receipt by receipt number. It uses specific verb 'Look up' and resource 'receiving receipt'. However, it does not explicitly differentiate from sibling tool 'search_receipts', which may have similar functionality.

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?

The description only mentions that receipt number is required, but provides no guidance on when to use this tool versus alternatives (e.g., search_receipts or other search tools). There is no 'when to use' or 'when not to use' context.

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

search_requisitionsC

Search purchase requisitions in Oracle Fusion.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
limitNo
offsetNo
statusNo
preparerNo
business_unitNo

TDQS

C2.6/5.0
Behavior2/5

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

No behavioral traits disclosed; no annotations provided, so the description carries the burden but fails to mention read-only nature, side effects, or anything beyond the obvious.

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?

Single sentence, concise, but so minimal that it sacrifices helpful detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 6 parameters and no output schema, the description is woefully incomplete; missing search behavior, return format, and parameter semantics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 6 parameters with 0% coverage; the description adds no parameter information, leaving the agent to guess the meaning of each field.

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 tool searches purchase requisitions in Oracle Fusion, distinguishing it from sibling tools that search other entities.

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?

No guidance on when to use this tool versus alternatives, no prerequisites or exclusions mentioned.

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

search_suppliersC

Search supplier master data in Oracle Fusion. Note: Status is not filterable via the Oracle REST API.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
nameNo
limitNo
offsetNo
supplier_typeNo

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. Only one behavioral trait is disclosed: that Status is not filterable via the API. No mention of authentication, pagination behavior, or whether it returns all suppliers.

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 description is short (two sentences) and front-loaded with the purpose, but it omits critical information. It is concise but at the expense of completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters, no output schema, no annotations, and many sibling search tools, the description lacks context on what 'supplier master data' includes, how results are filtered, or how it differs from tools like 'get_supplier_details'. Incomplete for effective tool selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/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 not explain any of the 5 parameters (q, name, limit, offset, supplier_type). The note about Status is not related to schema parameters, so it adds no semantic value.

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 clearly states 'Search supplier master data in Oracle Fusion', specifying the verb and resource. This distinguishes it from sibling tools like 'search_approved_suppliers' which is a subset, but does not highlight the distinction explicitly.

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?

No guidance on when to use this tool versus alternatives. The note about Status being non-filterable is a limitation, not usage context. No comparison to sibling search tools.

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

search_user_accountsC

Search HCM user accounts in Oracle Fusion by username or email.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
usernameNoUsername or partial email, partial match supported.

TDQS

C2.7/5.0
Behavior2/5

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

No annotations provided. Description only says 'search' without clarifying read-only nature, permission requirements, or any side effects. For a search operation, it's assumed non-destructive but not stated.

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?

Single sentence that is front-loaded and concise. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, no annotations, and schema covers only one parameter poorly. Description does not specify return format, pagination behavior, or error conditions. Incomplete for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 33% (only username has schema description). The description repeats 'by username or email' but does not explain limit and offset parameters. Almost no added value beyond schema.

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?

Description clearly states the verb 'Search', the resource 'HCM user accounts', and the system 'Oracle Fusion'. It mentions search criteria (username or email). However, it does not differentiate from many sibling search tools for different entities.

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?

No guidance on when to use this tool versus the many other search tools. No mention of context or prerequisites.

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

sumif_recordsA

Conditional aggregation — like Excel SUMIF/COUNTIF/AVERAGEIF. Sum, count, or average a field where a condition matches. Operators: eq, neq, gt, gte, lt, lte, contains, startswith, in.

ParametersJSON Schema
NameRequiredDescriptionDefault
recordsYesArray of record objects.
operatorYesComparison operator.
operationNoAggregation on matched records (default: sum).sum
sum_fieldYesField to aggregate.
decimal_placesNo
condition_fieldYesField to test the condition against.
condition_valueYesValue to compare against. Use an array for 'in' operator.

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It states the core behavior (conditional aggregation) and lists operators, but lacks details on read-only nature, error handling, performance, or dependencies on record structure.

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

Conciseness5/5

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

The description is two sentences, no fluff, front-loaded with purpose and analogy. Every word adds value.

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 7 parameters and no output schema, the description provides the core concept and operators. It omits details like the need for records to contain the fields, but the schema descriptions cover the rest. Overall sufficient for a straightforward tool.

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 coverage is 86%, so baseline is 3. The description adds the Excel analogy and operator list, which helps contextualize parameters, but does not significantly exceed what the schema already provides.

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 it is a conditional aggregation tool analogous to Excel SUMIF/COUNTIF/AVERAGEIF, specifying the verb (sum, count, average) and resource (records field). It distinguishes itself from siblings like aggregate_records by focusing on conditional logic.

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 provides a clear mental model via the Excel analogy, implying usage for conditional aggregations. However, it does not explicitly contrast with siblings like aggregate_records or group_by_aggregate, nor does it state when not to use it.

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

test_oracle_connectionA

Test connectivity to Oracle Fusion REST API. Returns connection status and record counts. Use this first to verify the connection is working.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It mentions returning status and record counts but does not explicitly state the tool is read-only, idempotent, or side-effect-free, which would enhance transparency.

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

Conciseness5/5

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

The description is two sentences, front-loaded with purpose, and contains no unnecessary words. Every sentence earns its place.

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 simplicity (no parameters, no output schema), the description covers the main purpose and usage. Minor gap: not specifying what 'connection status' entails or that it's safe to call, but still sufficient for a test tool.

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?

There are no parameters, and schema coverage is 100% (by default). The description does not need to add parameter information, so baseline score of 4 is appropriate.

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 tool tests connectivity to Oracle Fusion REST API and returns connection status and record counts. It is specific and distinct from sibling tools, which focus on data retrieval or aggregation.

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

Usage Guidelines5/5

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

The description explicitly instructs 'Use this first to verify the connection is working,' providing clear guidance on when to use the tool before other operations.

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

TDQS

B3.2/5.0
Disambiguation5/5

Each tool targets a distinct entity or operation (e.g., AR invoices vs. AP invoices, search vs. aggregate). Even similar-looking search tools are clearly prefixed by module (ar, gl, ap, etc.), leaving no ambiguity.

Naming Consistency4/5

Most tools follow a consistent verb_noun snake_case pattern (search_invoices, get_po_details). A few outliers like 'percentage_of_total', 'safe_divide', and 'sumif_records' break the pattern, but they are minor and still interpretable.

Tool Count4/5

30 tools for a large ERP system like Oracle Fusion is reasonable. The set covers major modules (AP, AR, GL, Procurement, Expenses) without feeling bloated. A few computational helpers could be merged, but overall scope fits the domain.

Completeness4/5

The server provides a thorough read-only query and analysis surface across key Oracle Fusion entities. Missing write/update tools, but that appears intentional. Minor gaps like no drill-down or error handling tools, but core needs are met.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

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/elabbarw/mcp-oraclefusion'

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