Skip to content

Tool reference

Generated from the live servers by uv run python -m finos_mcp_evals.toolref. Every tool is read-only, returns typed structuredContent described by its outputSchema, and raises structured errors (not_found, ambiguous_id, invalid_input, ...) the calling agent can act on.

finos-mcp-aigf

FINOS AI Governance Framework v2 — upstream finos/ai-governance-framework@main (8b0e80132f05). Exposes: controls=25, crosswalk_refs=763, reference_entries=967, reference_frameworks=13, risk_control_edges=94, risks=24.

Tools

Tool Arguments (* required) Description
find_by_external_reference key*: string, framework: string/null Reverse crosswalk: find the AIGF risks and controls that cite an external reference, e.g. key='sa-9' (NIST SP 800-53), 'llm01-2025' (OWASP LLM Top 10), 'c3-s2-a15' (EU AI Act), 'A-6-2-6' (ISO 42001). Matching is case-insensitive and ignores punctuation; optionally restrict to one framework name from list_reference_frameworks.
get_control id*: string, include_sections: boolean Get one AIGF control by id (AIR-PREV-020, mi-20, 20, or its title), with the risks it mitigates, related controls, and crosswalk references (NIST SP 800-53, ISO 42001, ...). Set include_sections=false for a compact record.
get_risk id*: string, include_sections: boolean Get one AIGF risk by id (AIR-SEC-010, ri-10, 10, or its title), with the controls that mitigate it, related risks, and external references. Set include_sections=false for a compact record without the full text.
list_controls type: string/null, status: string/null, page: integer, page_size: integer List AIGF controls (the framework calls them mitigations). Filter by type (PREV = preventative, DET = detective) or status. Returns ids for get_control.
list_reference_frameworks - List the external reference frameworks the AIGF crosswalks to, with entry counts and how many risks and controls cite each.
list_risks type: string/null, status: string/null, page: integer, page_size: integer List AIGF risks. Filter by type (RC = regulatory and compliance, OP = operational, SEC = security) or document status. Returns ids you can pass to get_risk.
map_control_to_external id*: string, frameworks: array/null Crosswalk one control to external frameworks: NIST SP 800-53 r5, NIST AI 600-1, ISO 42001, EU AI Act, OWASP LLM/ML/ASI, FFIEC, IOSCO, SR 11-7 and others. Optionally restrict to the named frameworks (see list_reference_frameworks).
map_risks_to_controls risk_ids: array/null, query: string/null, queries: array/null, k: integer, control_type: string/null Map risks to the controls that mitigate them. Pass explicit risk_ids (up to 25), a free-text query (the top k matching risks are used), and/or up to 5 queries (each contributing its own top k matches, unioned with everything else) -- useful for "both X and Y" questions where a single query blurs together two distinct concepts. Controls are ordered by how many of the given risks they cover; control_type (PREV or DET) restricts the result. Reports uncovered risks and any inputs that did not resolve.
search_framework query*: string, scope: string, k: integer Search risks and controls with matching sections and citable source URIs. For an unscoped question clearly asking for risks or for controls, rank those record types first while retaining the other type as a fallback. This is a stable partition of the original relevance-ranked results, not a new relevance score. Questions asking for both kinds stay mixed; explicit scope always wins.
search_status - Report search_framework's active retrieval mode: whether it is BM25-only (lexical) or fused with dense semantic search (hybrid), and why -- e.g. the semantic extra is not installed, or a model failed to load.
server_info - Describe this server: standard version, upstream provenance, exposed counts, latency, policy.

Resources

URI Title MIME
aigf://risk/{id} AIGF risk (raw markdown) text/markdown
aigf://control/{id} AIGF control (raw markdown) text/markdown
aigf://risk/{id}/section/{slug} One section of an AIGF risk text/markdown
aigf://control/{id}/section/{slug} One section of an AIGF control text/markdown
aigf://reference/{framework} External reference dataset application/json
aigf://index Catalog index of all risks and controls application/json

Prompts

  • assess_use_case(description): Identify applicable AIGF risks and the controls that mitigate each, citing ids.
  • control_gap_analysis(controls_in_place): Given controls in place, find risks left uncovered and suggest controls.

finos-mcp-cdm

FINOS Common Domain Model 7.8.0 — upstream finos/common-domain-model@7.8.0 (5b852ed61573). Exposes: choice_types=16, enums=280, qualify_functions=35, root_types=16, samples=40, schemas=1143, schemas_legacy_vintage=1066, types=767.

Tools

Tool Arguments (* required) Description
describe_type name*: string Describe one CDM type by name (TradeState) or fully qualified name (cdm.event.common.TradeState): every field with its type and cardinality, choice alternatives, which types reference it, and the schema resource to cite.
explain_event event: object/null, qualifier: string/null Explain a CDM BusinessEvent. Pass the event JSON to read its qualifier, instruction kinds, before/after trade states and the products involved; or pass a qualifier name (Execution, Termination, ...) to get the Qualify_* rule from the CDM sources and a sample that exercises it.
get_sample name*: string Fetch one vendored sample document by name (see list_samples), e.g. a Rune-format Execution BusinessEvent for an interest-rate swap, to use as a template.
list_products - Catalogue of product types: the product template types (NonTransferableProduct, TransferableProduct, TradableProduct, EconomicTerms, Payout) and every Payout alternative (InterestRatePayout, CreditDefaultPayout, OptionPayout, ...), with the vendored samples that use each.
list_samples format: string/null List the vendored sample documents (Rune-format from CDM 7.8.0, legacy from 6.30.0).
list_types namespace: string/null, kind: string/null, root_only: boolean, page: integer, page_size: integer List CDM types. Filter by namespace prefix (cdm.product), kind (type, enum, choice, meta) or root types only (the 16 top-level document types such as TradeState).
search_types query*: string, k: integer Keyword search over CDM type names and descriptions (e.g. 'floating rate payout').
server_info - Describe this server: standard version, upstream provenance, exposed counts, latency, policy.
validate_object object*: object, type: string/null, format: string, schema_version: string/null Validate a CDM JSON object against the published schema. The format (Rune with '@type'/'@key'/'@ref' keys, or legacy 'value'/'meta' wrappers) is detected unless given. The type comes from '@type' or the type argument (e.g. TradeState). Use schema_version='6.30.0' for legacy documents produced by CDM 6. Every issue carries the JSON path in your document and a kind (required, cardinality, type, enum, ...).

Resources

URI Title MIME
cdm://schema/{type_name} CDM JSON Schema for one type application/schema+json
cdm://sample/{name} Vendored CDM sample document application/json
cdm://qualify/{name} Event qualification rule (Rune source excerpt) text/plain
cdm://index Index of root types, qualifiers, samples and schema versions application/json

finos-mcp-fdc3

FINOS FDC3 2.2.3 — upstream finos/FDC3@v2.2.3 (0d71e7fb1b7a). Exposes: context_types=28, intents=19, schemas=29.

Tools

Tool Arguments (* required) Description
find_intents_by_context context_type*: string FDC3-API-style alias of list_intents(context_type=...): the intents that accept a context type.
get_context_schema type*: string Get the JSON Schema for a context type (by type such as fdc3.instrument, or by name such as Instrument), with a summary of required and optional properties and the standard example.
get_intent name*: string Get one intent by name (case-insensitive): accepted contexts, result type, description, deprecation status, and the fdc3:// resource holding its reference documentation.
list_context_types experimental: boolean/null List the FDC3 context types (fdc3.instrument, fdc3.contact, ...), whether each is experimental, and which intents accept it.
list_intents include_deprecated: boolean, context_type: string/null List the standard FDC3 intents with the context types each accepts and the result type it returns, if any. Filter to intents that accept one context_type (e.g. fdc3.instrument).
search_intents query*: string, k: integer Keyword search over intent names and descriptions.
server_info - Describe this server: standard version, upstream provenance, exposed counts, latency, policy.
suggest_intent context: object/null, context_type: string/null, goal: string/null Suggest which intents to raise for a context. Pass the context object (its type is used; if missing or unknown the object is matched structurally against every schema), or a context_type. An optional goal ("show a price chart") re-ranks by description.
validate_context context*: object, type: string/null Validate a context object against its FDC3 schema. The type is read from the object's type field unless given explicitly. Issues carry a JSON path and a kind (required, type, enum, unknown_field, ...).

Resources

URI Title MIME
fdc3://schema/{type} FDC3 context schema (raw JSON Schema) application/schema+json
fdc3://intent/{name} FDC3 intent reference documentation (raw markdown) text/markdown
fdc3://intents Generated intent-to-context table application/json
fdc3://index Index of context types and intents application/json