get_company_facts

Pack: sec · Endpoint: https://gateway.pipeworx.io/sec/mcp

Get XBRL financial facts for a company by CIK number, ticker, or company name. Returns latest_annual — revenue, net income, operating income, total assets, liabilities, equity, cash, EPS and shares for the most recent fiscal year (10-K), resolved to whichever XBRL concept the filer currently reports under — plus per-concept detail with the fiscal year and period end on every figure. Concepts the filer has retired (e.g. a pre-ASC-606 Revenues tag) are kept for history but flagged stale and sorted last.

Parameters

NameTypeRequiredDescription
cikstringyesCompany CIK (“320193”), ticker (“AAPL”), or name (“Apple”) — ticker/name are auto-resolved to a CIK

Example call

Arguments

{
  "cik": "320193"
}

curl

curl -X POST https://gateway.pipeworx.io/sec/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_company_facts","arguments":{"cik":"320193"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('get_company_facts', {
  "cik": "320193"
});

Response shape

Always returns: cik, company_name, latest_annual, key_financials, stale_concepts, available_concepts

FieldTypeDescription
cikstringCompany CIK number
company_namestringOfficial company name
latest_fiscal_yearnumber | nullFiscal year of the filer’s most recent annual report across every concept examined
latest_period_endstring | nullPeriod end of that most recent annual report (YYYY-MM-DD)
latest_annualobjectCanonical line items for the most recent fiscal year — revenue, net_income, operating_income, gross_profit, total_assets, total_liabilities, stockholders_equity, cash_and_equivalents, eps_basic, eps_diluted, shares_outstanding, research_and_development — each resolved to whichever concept the filer currently reports under; null when the filer reports no current value
key_financialsobjectPer-concept detail. Current concepts first, retired (stale) concepts last — a stale concept is kept because a historical series still needs it, never silently dropped
stale_conceptsarrayConcepts the filer has stopped reporting; present in key_financials flagged stale, never used in latest_annual
year_notestringHow year is derived
available_conceptsnumberTotal number of US-GAAP financial concepts available for this company
Full JSON Schema
{
  "type": "object",
  "properties": {
    "cik": {
      "type": "string",
      "description": "Company CIK number"
    },
    "company_name": {
      "type": "string",
      "description": "Official company name"
    },
    "latest_fiscal_year": {
      "type": [
        "number",
        "null"
      ],
      "description": "Fiscal year of the filer's most recent annual report across every concept examined"
    },
    "latest_period_end": {
      "type": [
        "string",
        "null"
      ],
      "description": "Period end of that most recent annual report (YYYY-MM-DD)"
    },
    "latest_annual": {
      "type": "object",
      "description": "Canonical line items for the most recent fiscal year — revenue, net_income, operating_income, gross_profit, total_assets, total_liabilities, stockholders_equity, cash_and_equivalents, eps_basic, eps_diluted, shares_outstanding, research_and_development — each resolved to whichever concept the filer currently reports under; null when the filer reports no current value",
      "additionalProperties": {
        "type": [
          "object",
          "null"
        ],
        "description": "Most recent annual (10-K/20-F/40-F) value, or null when the filer reports no annual value for this concept",
        "properties": {
          "year": {
            "type": "number",
            "description": "Fiscal year the reporting period ENDS in, derived from period_end (NOT the SEC fy filing-year field, which stamps prior-year comparatives with the restating filing's year)"
          },
          "value": {
            "type": "number",
            "description": "Metric value in `unit`"
          },
          "filed": {
            "type": "string",
            "description": "Date the filing was submitted (YYYY-MM-DD)"
          },
          "period_start": {
            "type": "string",
            "description": "Period start (YYYY-MM-DD); present for duration concepts such as revenue, absent for balance-sheet instants"
          },
          "period_end": {
            "type": "string",
            "description": "Period end / balance-sheet date (YYYY-MM-DD)"
          },
          "form": {
            "type": "string",
            "description": "Annual-report form the value came from (10-K, 10-K/A, 20-F, 40-F)"
          },
          "unit": {
            "type": "string",
            "description": "XBRL unit: USD, USD/shares, shares, or pure"
          },
          "concept": {
            "type": "string",
            "description": "The us-gaap concept this value was read from — the one the filer currently reports this line under"
          }
        },
        "required": [
          "year",
          "value",
          "filed",
          "period_end",
          "form",
          "unit",
          "concept"
        ]
      }
    },
    "key_financials": {
      "type": "object",
      "description": "Per-concept detail. Current concepts first, retired (stale) concepts last — a stale concept is kept because a historical series still needs it, never silently dropped",
      "additionalProperties": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "description": "Human-readable label for the XBRL concept"
          },
          "most_recent_annual": {
            "type": [
              "object",
              "null"
            ],
            "description": "Most recent annual (10-K/20-F/40-F) value, or null when the filer reports no annual value for this concept",
            "properties": {
              "year": {
                "type": "number",
                "description": "Fiscal year the reporting period ENDS in, derived from period_end (NOT the SEC fy filing-year field, which stamps prior-year comparatives with the restating filing's year)"
              },
              "value": {
                "type": "number",
                "description": "Metric value in `unit`"
              },
              "filed": {
                "type": "string",
                "description": "Date the filing was submitted (YYYY-MM-DD)"
              },
              "period_start": {
                "type": "string",
                "description": "Period start (YYYY-MM-DD); present for duration concepts such as revenue, absent for balance-sheet instants"
              },
              "period_end": {
                "type": "string",
                "description": "Period end / balance-sheet date (YYYY-MM-DD)"
              },
              "form": {
                "type": "string",
                "description": "Annual-report form the value came from (10-K, 10-K/A, 20-F, 40-F)"
              },
              "unit": {
                "type": "string",
                "description": "XBRL unit: USD, USD/shares, shares, or pure"
              }
            },
            "required": [
              "year",
              "value",
              "filed",
              "period_end",
              "form",
              "unit"
            ]
          },
          "stale": {
            "type": "boolean",
            "description": "true when this concept's latest annual period ends before the filer's latest annual report — the filer stopped reporting it (e.g. a pre-ASC-606 Revenues tag). Real history, not the current figure"
          },
          "stale_note": {
            "type": "string",
            "description": "Present when stale: which fiscal year the concept stops at, what the filer's latest report covers, and which current concept in latest_annual replaces it"
          }
        },
        "required": [
          "label",
          "most_recent_annual",
          "stale"
        ]
      }
    },
    "stale_concepts": {
      "type": "array",
      "description": "Concepts the filer has stopped reporting; present in key_financials flagged stale, never used in latest_annual",
      "items": {
        "type": "string"
      }
    },
    "year_note": {
      "type": "string",
      "description": "How `year` is derived"
    },
    "available_concepts": {
      "type": "number",
      "description": "Total number of US-GAAP financial concepts available for this company"
    }
  },
  "required": [
    "cik",
    "company_name",
    "latest_annual",
    "key_financials",
    "stale_concepts",
    "available_concepts"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "sec": {
      "url": "https://gateway.pipeworx.io/sec/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build September 10, 2026