Skip to main content
Glama

People across the family office, sponsor, venture and private equity graphs

search_people
Read-onlyIdempotent

Investment professionals, principals and family office staff as names with titles, roles, seniority, investment responsibility, organisation and tenure, from public filings and firm pages; with domain=ria, IAPD-registered advisors by name or firm. By name, or by organization_dfx_id, or by role. cross_graph_only=true answers 'which venture people are connected to family offices' in one call. organization (a firm name) or organization_dfx_id returns everyone on record at that institution across every graph it is on (one institution is several ids) and every contact source. At least one of query, organization, organization_dfx_id, role, investment_responsibility or cross_graph_only is required; a call with none of them is refused with INVALID_ARGUMENT. Contact points are withheld over MCP; each card whose organisation is on a contact graph carries reachability booleans instead (a verified email or phone on record for that name at that organisation, never the value). 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
roleNofamily_office: leadership, cio, direct_investments, operations, board, venture, real_estate, family_principal, other. venture_capital: managing_partner, general_partner, partner, principal, vice_president, venture_partner, operating_partner, platform, founder_executive, board, other. private_equity: managing_partner, partner, operating_partner, vice_president, business_development and the other categories on each card.
limitNo
queryNoA person's name (contains). A firm name that matches no person is answered as the firm.
domainNoprivate_credit: officers and control persons of credit managers from their own Form ADV Schedule A. real_estate answers NOT_COVERED: the property graph publishes no people; real estate fund managers' Schedule A people are under real_estate_funds.
current_onlyNo
organizationNoAn organization's NAME (e.g. Akoya Capital Partners): resolved through the identity layer, and everyone on record there is returned from every graph it is on and every contact source, with route types (never values).
cross_graph_onlyNoOnly people who are the same person on two graphs (a venture professional who is also on a family office's ADV Schedule A), linked by shared individual CRD; returns both cards.
organization_dfx_idNoA DFX id: dfx:fo:<uuid> (family office graph), dfx:isi:<uuid> (sponsor graph), dfx:vc:<uuid> (venture graph), dfx:pe:<uuid> (private equity graph), dfx:ria:<uuid> (registered investment adviser graph), dfx:al:<uuid> (allocator graph), dfx:pc:<uuid> (private credit graph), dfx:ref:<uuid> (real estate fund graph), or a bare real estate UUID.
investment_responsibilityNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / organization
      Added value: +{
      +  "description": "An organization's NAME (e.g. Akoya Capital Partners): resolved through the identity layer, and everyone on record there is returned from every graph it is on and every contact source, with route types (never values).",
      +  "type": "string"
      +}
    • changedInput schema / properties / query / description
      Previous value: -"A person's name (contains)."New value: +"A person's name (contains). A firm name that matches no person is answered as the firm."
  2. Changed2 schema fields changed
    • addedInput schema / properties / domain / description
      Added value: +"private_credit: officers and control persons of credit managers from their own Form ADV Schedule A. real_estate answers NOT_COVERED: the property graph publishes no people; real estate fund managers' Schedule A people are under real_estate_funds."
    • changedInput schema / properties / domain / enum
      Previous value: -[
      -  "family_office",
      -  "independent_sponsor",
      -  "venture_capital",
      -  "private_equity",
      -  "ria",
      -  "allocators",
      -  "real_estate_funds"
      -]New value: +[
      +  "family_office",
      +  "independent_sponsor",
      +  "venture_capital",
      +  "private_equity",
      +  "ria",
      +  "allocators",
      +  "real_estate_funds",
      +  "private_credit",
      +  "real_estate"
      +]
  3. Changed2 schema fields changed
    • changedInput schema / properties / domain / enum
      Previous value: -[
      -  "family_office",
      -  "independent_sponsor",
      -  "venture_capital",
      -  "private_equity"
      -]New value: +[
      +  "family_office",
      +  "independent_sponsor",
      +  "venture_capital",
      +  "private_equity",
      +  "ria",
      +  "allocators",
      +  "real_estate_funds"
      +]
    • changedInput schema / properties / organization_dfx_id / description
      Previous value: -"A DFX id: dfx:fo:<uuid> (family office graph), dfx:isi:<uuid> (sponsor graph), dfx:vc:<uuid> (venture graph), dfx:pe:<uuid> (private equity graph), or a bare real estate UUID."New value: +"A DFX id: dfx:fo:<uuid> (family office graph), dfx:isi:<uuid> (sponsor graph), dfx:vc:<uuid> (venture graph), dfx:pe:<uuid> (private equity graph), dfx:ria:<uuid> (registered investment adviser graph), dfx:al:<uuid> (allocator graph), dfx:pc:<uuid> (private credit graph), dfx:ref:<uuid> (real estate fund graph), or a bare real estate UUID."
  4. Changed3 schema fields changed
    • changedInput schema / properties / domain / enum
      Previous value: -[
      -  "family_office",
      -  "independent_sponsor",
      -  "venture_capital"
      -]New value: +[
      +  "family_office",
      +  "independent_sponsor",
      +  "venture_capital",
      +  "private_equity"
      +]
    • changedInput schema / properties / organization_dfx_id / description
      Previous value: -"A DFX id: dfx:fo:<uuid> (family office graph), dfx:isi:<uuid> (sponsor graph), dfx:vc:<uuid> (venture graph), or a bare real estate UUID."New value: +"A DFX id: dfx:fo:<uuid> (family office graph), dfx:isi:<uuid> (sponsor graph), dfx:vc:<uuid> (venture graph), dfx:pe:<uuid> (private equity graph), or a bare real estate UUID."
    • changedInput schema / properties / role / description
      Previous value: -"family_office: leadership, cio, direct_investments, operations, board, venture, real_estate, family_principal, other. venture_capital: managing_partner, general_partner, partner, principal, vice_president, venture_partner, operating_partner, platform, founder_executive, board, other."New value: +"family_office: leadership, cio, direct_investments, operations, board, venture, real_estate, family_principal, other. venture_capital: managing_partner, general_partner, partner, principal, vice_president, venture_partner, operating_partner, platform, founder_executive, board, other. private_equity: managing_partner, partner, operating_partner, vice_president, business_development and the other categories on each card."
  5. Changed1 schema field changed
    • addedInput schema / properties / query / description
      Added value: +"A person's name (contains)."
  6. Changed1 schema field changed
    • addedInput schema / properties / cross_graph_only
      Added value: +{
      +  "description": "Only people who are the same person on two graphs (a venture professional who is also on a family office's ADV Schedule A), linked by shared individual CRD; returns both cards.",
      +  "type": "boolean"
      +}
  7. Added

TDQS

A4.4/5.0
Behavior5/5

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

With annotations only covering safety (readOnly, idempotent, non-destructive), the description carries the real behavioral burden and does so richly: entitlement gating (first 5 rows + locked.count/locked.by_type without a paid plan), withholding of contact values and decision-maker names, the reachability boolean substitute, the INVALID_ARGUMENT refusal, and the real_estate NOT_COVERED response. None of this is inferable from annotations or schema.

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?

It is front-loaded with what the tool returns, but the single run-on block packs filters, entitlement rules, and a marketing URL ('Full access: DFX Intelligence, 7 days free at...') into one paragraph. The required-argument rule and the entitlement behavior would be more usable as separate sentences or bullets rather than buried mid-paragraph.

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?

For a 9-parameter, no-output-schema tool with an entitlement system, the description is nearly complete: it explains the returned card shape (subject names, first 3 related names per section, locked/entitlement fields) and the access tiers. Only minor gaps remain, such as the exact structure of a full-access response.

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

Parameters4/5

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

Schema coverage is 67%, and the description adds meaning where the schema is thin: domain=ria returns IAPD-registered advisors, organization resolves through the identity layer across every graph and contact source, cross_graph_only returns both cards via shared CRD, and the union-of-alternatives requirement for invocation. It leaves some params (limit, current_only, investment_responsibility) purely to 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 names a specific verb (returns/searches) and resource (investment professionals, principals, family office staff) and enumerates the returned fields (names, titles, roles, seniority, investment responsibility, organisation, tenure). It also scopes the resource across graphs and the RIA/IAPD variant, so an agent can distinguish it from firm-level siblings like search_vc_firms or get_ria_firm.

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?

It gives concrete selection context: query by name, organization_dfx_id, or role, and explicitly says cross_graph_only=true answers 'which venture people are connected to family offices' in one call. It also states the argument requirement — 'At least one of query, organization, organization_dfx_id, role, investment_responsibility or cross_graph_only is required' — with the refusal behavior. It stops short of naming competing sibling tools (e.g., search_ria, resolve_ria_advisor) as alternatives.

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.