Skip to main content
Glama

One borrower as its BDC lenders see it

get_borrower_capital_structure
Read-onlyIdempotent

The borrower group (its spellings and grade), every facility (kind, lien, principal held across lenders as a lower bound, mark, pricing, PIK, maturity with basis), every BDC piece at the latest quarter end, the borrower's tape quarter by quarter, every sponsor attribution with its basis and confidence, and the non-routine events. Every row names its fact class (filed: the BDC's own figure; derived: arithmetic over filed figures, a sum of pieces is a lower bound; carried: from another DFX graph with its source; inferred: an attribution by rule with confidence). A mark below cost is a mark, not impairment; a moved maturity is an observed term change, not an amendment. Non-accrual IS on the tape: each BDC's own schedule footnotes give NON_ACCRUAL_PLACED and RETURNED_TO_ACCRUAL events and a borrower's credit_status (search_credit_stress rolls them up); it is never inferred from a mark. Default, restructuring and covenants are not on the tape. ACCESS: without a paid DFX plan on the vertical, a list returns its first 5 rows in full and a count of the rest by type (locked.count, locked.by_type), never the rows; a record names its subject and the first 3 related names per section; contact values (email, phone, profile URLs) and decision-maker names are never returned, only their types and counts. Every answer says what it withheld in entitlement and locked. Full access: DFX Intelligence, 7 days free at https://dfxintel.com/data-factory/plans.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dfx_idYesA private credit graph id of the form dfx:pc:<uuid> (from search_private_credit, resolve_name or search_entities).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, non-destructive, closed-world, and the description adds substantial context on top: the fact-class taxonomy (filed/derived/carried/inferred), the semantics of 'lower bound' sums, mark-vs-impairment and moved-maturity-vs-amendment distinctions, where non-accrual data does and does not come from, and exactly what is withheld (contact values, decision-maker names) under entitlement/locked. This is unusually rich disclosure for a read tool.

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 content is front-loaded with the returned sections before moving to fact classes and access rules, and nearly every sentence carries real information for an agent. It is still one dense paragraph, and the closing plan/pricing URL leans promotional rather than operational, keeping it short of a 5.

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

Completeness5/5

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

With no output schema and a complex, multi-section payload, the description carries the full burden and does so thoroughly: it enumerates every returned section, defines the fact-class provenance model, clarifies what signs do not mean (mark ≠ impairment, non-accrual not inferred from marks), and spells out entitlement/locked behavior and truncation limits. An agent has what it needs to interpret results correctly.

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?

There is a single dfx_id parameter and schema description coverage is 100%, including the id format and the sibling tools that supply it, so the baseline is 3. The description adds no further detail about the parameter itself, relying entirely on 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 names a specific verb+resource and then enumerates exactly what comes back: the borrower group, facilities, BDC pieces, tape by quarter, sponsor attributions, and non-routine events. It distinguishes itself partially by noting search_credit_stress handles credit-stress roll-ups, but it never contrasts itself with the near-identically-named sibling get_borrower_facilities, leaving that boundary to inference.

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 context is implied rather than stated — the tool is clearly the per-borrower detail view, and search_credit_stress is named for roll-ups, but there is no explicit 'use this when / not when' guidance. Access-tier behavior is well covered, which helps an agent know what it will actually get, but not when to prefer a sibling.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.