Datarails · OpenAPI Overlay 1.0.0

API Evangelist enhancements for Datarails FinanceOS MCP Server

9 actions 9 updates servers extends openapi/datarails-financeos-mcp-openapi.json
Generated by API Evangelist Written by API Evangelist tooling for Datarails's API. It is a proposal applied on top of the contract, not a document Datarails publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

descriptiontagsx-apievangelist-standardx-apievangelist-classificationcontactx-apievangelist-surfacex-apievangelist-data-surfacex-apievangelist-tool-count

Targets 9

$.info
$
$.components
$.paths['/health'].get
$.paths['/ready'].get
$.paths['/.well-known/oauth-protected-resource'].get
$.paths['/.well-known/openid-configuration'].get
$.paths['/oauth/callback'].get
$.components.schemas.HTTPValidationError

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for Datarails FinanceOS MCP Server
  version: 1.0.0
extends: openapi/datarails-financeos-mcp-openapi.json
x-generated: '2026-08-01'
x-method: generated
x-source: >-
  Derived from artifacts already in this repo (mcp/, authentication/, scopes/,
  rate-limits/, conformance/) plus documentation published by Datarails. The
  harvested spec at openapi/datarails-financeos-mcp-openapi.json is never
  mutated; every enhancement below is expressed as an overlay action.
actions:
  - target: $.info
    update:
      description: >-
        Public OpenAPI served by the Datarails FinanceOS MCP server at
        https://mcp.datarails.com/openapi.json. It describes the server's own
        operational and OAuth endpoints only. The FinanceOS data capability is
        NOT in this document — it is exposed as 25 MCP tools over JSON-RPC at
        POST /mcp, which this spec does not declare. See
        mcp/datarails-tool-crosswalk.yml for the full divergence.
      contact:
        name: Datarails Support
        email: support@datarails.com
        url: https://support.datarails.com/hc/en-us
      x-apievangelist-surface: mcp-infrastructure
      x-apievangelist-data-surface: https://mcp.datarails.com/mcp
      x-apievangelist-tool-count: 25
      x-apievangelist-read-only: true

  - target: $
    update:
      servers:
        - url: https://mcp.datarails.com
          description: >-
            Production FinanceOS MCP server, hosted in the United States. Added
            by this overlay; the harvested spec declares no servers[].
      externalDocs:
        description: Datarails FinanceOS MCP Server technical documentation
        url: https://support.datarails.com/hc/en-us/articles/25849710214556-Datarails-FinanceOS-MCP-Server-Technical-Documentation

  - target: $.components
    update:
      securitySchemes:
        FinanceOSOAuth:
          type: oauth2
          description: >-
            OAuth 2.1 authorization-code with PKCE (S256) and dynamic client
            registration. Documented at
            /.well-known/oauth-authorization-server. Added by this overlay —
            the harvested spec declares no securitySchemes, even though the
            JSON-RPC surface on the same host is bearer-protected.
          flows:
            authorizationCode:
              authorizationUrl: https://mcp.datarails.com/authorize
              tokenUrl: https://mcp.datarails.com/token
              refreshUrl: https://mcp.datarails.com/token
              scopes:
                datarails: Access the caller's Datarails FinanceOS data, bounded by their in-app permissions.

  - target: $.paths['/health'].get
    update:
      tags: [Operations]
      description: Liveness probe for the FinanceOS MCP server. Unauthenticated.
      x-apievangelist-classification: operational

  - target: $.paths['/ready'].get
    update:
      tags: [Operations]
      description: Readiness probe for the FinanceOS MCP server. Unauthenticated.
      x-apievangelist-classification: operational

  - target: $.paths['/.well-known/oauth-protected-resource'].get
    update:
      tags: [Authorization]
      description: >-
        RFC 9728 protected-resource metadata. Also served at the
        resource-scoped path /.well-known/oauth-protected-resource/mcp, which
        is the location advertised in the 401 WWW-Authenticate challenge.
      x-apievangelist-standard: RFC 9728

  - target: $.paths['/.well-known/openid-configuration'].get
    update:
      tags: [Authorization]
      description: >-
        OpenID Connect discovery document. Note that its
        token_endpoint_auth_methods_supported value ([none]) contradicts the
        RFC 8414 document served by the same host
        ([client_secret_post, client_secret_basic]).
      x-apievangelist-standard: OpenID Connect Discovery 1.0
      x-apievangelist-deviation: conflicts-with-rfc8414-metadata

  - target: $.paths['/oauth/callback'].get
    update:
      tags: [Authorization]
      description: >-
        OAuth redirect callback. Datarails documents that this leg must run in
        a pop-up window; authentication inside an iframe fails or loops.
      x-apievangelist-standard: RFC 6749

  - target: $.components.schemas.HTTPValidationError
    update:
      description: >-
        FastAPI's default validation envelope. Datarails publishes no RFC 9457
        application/problem+json responses on any surface. See
        errors/datarails-problem-types.yml.
      x-apievangelist-error-format: fastapi-validation
      x-apievangelist-rfc9457: false