AINumbers.co Emir API

The emir API from AINumbers.co — 6 operation(s) for emir.

Operations 6

POST /v1/tools/validate_emir_trade_report EMIR Trade Report Field Validator #
POST /v1/tools/check_emir_uti_completeness EMIR UTI Completeness Checker #
POST /v1/tools/validate_emir_upi EMIR UPI Validator #
POST /v1/tools/reconcile_emir_pairing EMIR Counterparty Pairing Reconciler #
POST /v1/tools/validate_emir_lifecycle_event EMIR Lifecycle Event Validator #
POST /v1/tools/run_emir_reporting_fit EMIR Reporting Readiness Diagnostic #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ainumbers-co:ainumbers-co-emir-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ainumbers-co-emir-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AINumbers.co Fintech Intelligence Suite Emir API
  version: 1.0.0
  description: '**1255 fintech intelligence tools** covering ISO 20022, A2A payments, CFPB §1033, EU AI Act, DORA, MiCA, AML/KYC, BaaS, DLT/tokenization, ESG/climate finance, agentic payments (AP2, ACP, x402, Visa TAP, Mastercard Agent Pay), PQC migration, sanctions screening, and OpenChainGraph v0.4 computation chains.


    ## Transport


    > **The live transport is MCP JSON-RPC 2.0 at `https://mcp.ainumbers.co/mcp` — not REST.**

    >

    > This OpenAPI file is a **descriptive data-room artifact** — a machine-readable index of all tools and their input/output schemas. The REST paths (`POST /v1/tools/{name}`) described here are a projection; they become functional only if the optional REST shim (Area 2 Path B) is deployed.

    >

    > To call tools today, connect via the official MCP client SDKs. TypeScript: `@modelcontextprotocol/sdk`. Python: `mcp`.


    ## Architecture


    All tools run **entirely client-side** (browser JavaScript). Zero PII. Zero server calls after page load. Deterministic, reproducible outputs. Licensed CC BY 4.0.


    OpenChainGraph v0.4 compute-binding nodes additionally run **server-side on the MCP Worker** and emit verifiable artifacts with `execution_hash` (WebCrypto SHA-256 over RFC 8785 canonical JSON).'
  contact:
    name: Post Oak Labs
    url: https://postoaklabs.com
    email: tim@postoaklabs.com
  license:
    name: CC BY 4.0
    url: https://creativecommons.org/licenses/by/4.0/
servers:
- url: https://ainumbers.co
  description: Static browser-based tool host (DreamHost). Tools run client-side — no REST gateway is active on this origin. See x-mcp for the live MCP endpoint.
tags:
- name: emir
paths:
  /v1/tools/validate_emir_trade_report:
    post:
      operationId: validate_emir_trade_report
      summary: EMIR Trade Report Field Validator
      description: 'Validate the required-field subset of an EMIR Refit ISO 20022 auth.030 derivative trade report: action type, both counterparty LEIs (20-char ISO 17442), UTI, UPI, notional, currency, effective date, and asset class. Returns a list of missing or malformed fields. Zero network, zero PII.


        **Tool URL:** https://ainumbers.co/chaingraph/art-153-emir-trade-report-field-validator.html

        **AP2/Policy Mandate export:** yes'
      tags:
      - emir
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                report:
                  type: object
                  description: Decoded EMIR Refit auth.030 trade report fields
                  properties:
                    action_type:
                      type: string
                    reporting_counterparty_lei:
                      type: string
                    other_counterparty_lei:
                      type: string
                    uti:
                      type: string
                    upi:
                      type: string
                    notional:
                      type: number
                    notional_currency:
                      type: string
                    effective_date:
                      type: string
                    asset_class:
                      type: string
                  required:
                  - action_type
                  - reporting_counterparty_lei
                  - other_counterparty_lei
                  - uti
                  - upi
                  - notional
                  - notional_currency
                  - effective_date
                  - asset_class
              required:
              - report
      responses:
        '200':
          description: Successful tool execution result
          content:
            application/json:
              schema:
                type: object
                properties:
                  valid:
                    type: boolean
                  missing_fields:
                    type: array
                    items:
                      type: string
                  malformed_fields:
                    type: array
                    items:
                      type: object
                  field_count:
                    type: number
      x-mcp-tool-name: validate_emir_trade_report
      x-tool-url: https://ainumbers.co/chaingraph/art-153-emir-trade-report-field-validator.html
      x-source: manifest
      x-ap2-export: true
  /v1/tools/check_emir_uti_completeness:
    post:
      operationId: check_emir_uti_completeness
      summary: EMIR UTI Completeness Checker
      description: 'Validate EMIR Refit UTI format (ISO 23897, 52 alphanumeric characters max), generating-party identity, and T+1 sharing timing: UTI must be shared with the other counterparty by 10:00 CET next business day (approximately 34-hour window). Caller supplies Unix timestamps. Returns format validity, sharing deadline, and whether the deadline was met. Zero network, zero PII.


        **Tool URL:** https://ainumbers.co/chaingraph/art-154-emir-uti-completeness-checker.html

        **AP2/Policy Mandate export:** yes'
      tags:
      - emir
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                uti:
                  type: string
                  description: Unique Trade Identifier (ISO 23897, max 52 alphanumeric chars)
                generating_party:
                  type: string
                  description: LEI of the party that generated the UTI
                trade_unix:
                  type: number
                  description: Unix timestamp of trade execution
                uti_shared_unix:
                  type: number
                  description: Unix timestamp when UTI was shared with the other counterparty
              required:
              - uti
              - generating_party
              - trade_unix
              - uti_shared_unix
      responses:
        '200':
          description: Successful tool execution result
          content:
            application/json:
              schema:
                type: object
                properties:
                  uti_format_valid:
                    type: boolean
                  generating_party_valid:
                    type: boolean
                  sharing_deadline_met:
                    type: boolean
                  sharing_deadline_unix:
                    type: number
                  hours_to_deadline:
                    type: number
                  errors:
                    type: array
                    items:
                      type: string
      x-mcp-tool-name: check_emir_uti_completeness
      x-tool-url: https://ainumbers.co/chaingraph/art-154-emir-uti-completeness-checker.html
      x-source: manifest
      x-ap2-export: true
  /v1/tools/validate_emir_upi:
    post:
      operationId: validate_emir_upi
      summary: EMIR UPI Validator
      description: 'Validate EMIR Refit UPI format (ISO 4914, 12-character alphanumeric via ANNA Derivatives Service Bureau) and product classification consistency: asset class must be a supported EMIR class (IR/CR/EQ/CO/FX) and instrument type must be present. Returns format validity and classification verdict. Zero network, zero PII.


        **Tool URL:** https://ainumbers.co/chaingraph/art-155-emir-upi-validator.html

        **AP2/Policy Mandate export:** yes'
      tags:
      - emir
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                upi:
                  type: string
                  description: Unique Product Identifier (ISO 4914, 12-char alphanumeric)
                asset_class:
                  type: string
                  description: 'EMIR asset class: IR, CR, EQ, CO, FX'
                instrument_type:
                  type: string
                  description: Instrument type (e.g. IRS, CDS, OPT)
              required:
              - upi
              - asset_class
              - instrument_type
      responses:
        '200':
          description: Successful tool execution result
          content:
            application/json:
              schema:
                type: object
                properties:
                  upi_format_valid:
                    type: boolean
                  asset_class_valid:
                    type: boolean
                  instrument_type_present:
                    type: boolean
                  classification_consistent:
                    type: boolean
                  errors:
                    type: array
                    items:
                      type: string
      x-mcp-tool-name: validate_emir_upi
      x-tool-url: https://ainumbers.co/chaingraph/art-155-emir-upi-validator.html
      x-source: manifest
      x-ap2-export: true
  /v1/tools/reconcile_emir_pairing:
    post:
      operationId: reconcile_emir_pairing
      summary: EMIR Counterparty Pairing Reconciler
      description: 'Pair two counterparties'' EMIR Refit reports by UTI and reconcile the caller-supplied matching-field set (up to 148 fields per the 2026 escalation) within a configurable per-field numeric tolerance. Identifies reconciliation breaks — value mismatches beyond tolerance — so a firm catches the pairing failure before the Trade Repository rejects it. Returns paired status, matched fields, and break list. Zero network, zero PII.


        **Tool URL:** https://ainumbers.co/chaingraph/art-156-emir-counterparty-pairing-reconciler.html

        **AP2/Policy Mandate export:** yes'
      tags:
      - emir
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                report_a:
                  type: object
                  description: Counterparty A trade report fields (must include uti)
                report_b:
                  type: object
                  description: Counterparty B trade report fields (must include uti)
                matching_fields:
                  type: array
                  items:
                    type: string
                  description: Field names to reconcile (max 148)
                numeric_tolerance_pct:
                  type: number
                  description: Percentage tolerance for numeric fields
              required:
              - report_a
              - report_b
              - matching_fields
      responses:
        '200':
          description: Successful tool execution result
          content:
            application/json:
              schema:
                type: object
                properties:
                  paired:
                    type: boolean
                  uti_match:
                    type: boolean
                  fields_checked:
                    type: number
                  fields_matched:
                    type: number
                  breaks:
                    type: array
                    items:
                      type: object
                  reconciled:
                    type: boolean
      x-mcp-tool-name: reconcile_emir_pairing
      x-tool-url: https://ainumbers.co/chaingraph/art-156-emir-counterparty-pairing-reconciler.html
      x-source: manifest
      x-ap2-export: true
  /v1/tools/validate_emir_lifecycle_event:
    post:
      operationId: validate_emir_lifecycle_event
      summary: EMIR Lifecycle Event Validator
      description: 'Validate an EMIR Refit action type against the prior reported state of the UTI: New/Position are legal on a previously unreported trade; Modify/Correct/Valuation/Terminate/Error require a prior open trade; Revive/Correct/Error apply to terminated trades. Catches the most common Refit rejection cause — illegal action-type sequences — before Trade Repository submission. Returns validity verdict and allowed action types for the current state. Zero network, zero PII.


        **Tool URL:** https://ainumbers.co/chaingraph/art-157-emir-lifecycle-event-validator.html

        **AP2/Policy Mandate export:** yes'
      tags:
      - emir
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                action_type:
                  type: string
                  description: 'Proposed EMIR action type: New, Modify, Correct, Terminate, Valuation, Error, Position, Revive'
                prior_state:
                  type: string
                  description: 'Prior reported state of the UTI: none, open, terminated'
              required:
              - action_type
              - prior_state
      responses:
        '200':
          description: Successful tool execution result
          content:
            application/json:
              schema:
                type: object
                properties:
                  valid:
                    type: boolean
                  action_type:
                    type: string
                  prior_state:
                    type: string
                  allowed_actions:
                    type: array
                    items:
                      type: string
                  rejection_reason:
                    type: string
      x-mcp-tool-name: validate_emir_lifecycle_event
      x-tool-url: https://ainumbers.co/chaingraph/art-157-emir-lifecycle-event-validator.html
      x-source: manifest
      x-ap2-export: true
  /v1/tools/run_emir_reporting_fit:
    post:
      operationId: run_emir_reporting_fit
      summary: EMIR Reporting Readiness Diagnostic
      description: 'Grade a firm''s EMIR Refit reporting readiness across five dimensions: ISO 20022 format cutover, UPI sourcing via ANNA DSB, UTI sharing SLA (10:00 CET T+1), reconciliation tolerance configuration (148-field set, 2026 escalation), and lifecycle action-type controls. Returns an A–F grade and a gap list identifying failing dimensions. Zero network, zero PII.


        **Tool URL:** https://ainumbers.co/chaingraph/art-158-emir-reporting-readiness-diagnostic.html

        **AP2/Policy Mandate export:** yes'
      tags:
      - emir
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                iso20022_cutover_done:
                  type: boolean
                upi_sourcing_configured:
                  type: boolean
                uti_sharing_sla_met:
                  type: boolean
                reconciliation_tolerance_set:
                  type: boolean
                lifecycle_action_controls:
                  type: boolean
              required:
              - iso20022_cutover_done
              - upi_sourcing_configured
              - uti_sharing_sla_met
              - reconciliation_tolerance_set
              - lifecycle_action_controls
      responses:
        '200':
          description: Successful tool execution result
          content:
            application/json:
              schema:
                type: object
                properties:
                  grade:
                    type: string
                    description: A–F readiness grade
                  score:
                    type: number
                    description: Dimensions passed (0–5)
                  gaps:
                    type: array
                    items:
                      type: string
                    description: Failing dimension labels
                  dimensions:
                    type: object
                    description: Per-dimension pass/fail map
      x-mcp-tool-name: run_emir_reporting_fit
      x-tool-url: https://ainumbers.co/chaingraph/art-158-emir-reporting-readiness-diagnostic.html
      x-source: manifest
      x-ap2-export: true
x-mcp:
  transport: MCP JSON-RPC 2.0 (streamable HTTP)
  endpoint: https://mcp.ainumbers.co/mcp
  protocol_version: '2025-11-25'
  authentication: none
  registry: co.ainumbers/tools (official MCP registry)
  note: Connect any MCP-compatible client (Claude, ChatGPT, custom agent) directly to this endpoint. The REST paths in this file are descriptive only — they do not exist on the live server unless the REST shim is deployed.