Skip to main content
Glama

get_financials

Read-onlyIdempotent

MyDART MCP의 get_financials 도구는 매출·영업이익·순이익·자산/부채/자본 등 재무수치를 조회합니다 — 재무 질문 대부분은 이걸로 충분합니다.

[Purpose]

  • 재무제표 figures start here. corp+year = LATEST filing (정정 반영); rcept_no = that filing AS FILED (재작성 전후 대조·합산 검증 — 구 get_xbrl).

  • 사업보고서 prose: get_periodic_report; 부실징후(계속기업): get_going_concern.

[Usage]

  1. "삼성전자 2025년 매출·영업이익" → corp="삼성전자", year=2025

  2. "삼성전자와 SK하이닉스 실적 비교" → corp=["삼성전자","SK하이닉스"]

  3. "이 공시본 그대로 전체" → rcept_no="…", sj_div=["BS","IS","CIS","CF","SCE"]

[Response]

  • Row keys: sj_div, account_nm, thstrm_amount(당기)/frmtrm_*(전기)/ bfefrmtrm_*(전전기)/thstrm_add_amount(누계). Amounts are STRINGS.

  • full: total_count=pre-filter, count=post-filter. rcept_no adds validations.

[Rules]

  • Quarterly/half IS·CIS·CF rows: CUMULATIVE = thstrm_add_amount, thstrm_amount = that quarter alone (half-value trap — period_basis explains). BS rows: thstrm_amount only.

  • Cross-check the periods legend (전기/당기 off-by-one) and year_defaulted.

  • no_data is routing, not an error — follow next_step (retry is futile).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
corpNoCompany — **a single string OR an array** (회사명·종목코드·corp_code). With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in `notes`. Compare several companies with scope=summary. A comma list ("삼성전자,SK하이닉스") or a bare number (259630) is absorbed too; the legacy key `corps` is accepted. Names/codes that fail to resolve are dropped with a note as long as at least one resolves (all-unresolved still errors). Omit when querying one specific filing by rcept_no instead.
yearNo결산 사업연도 (회계연도). When omitted, the most recently PUBLISHED 사업연도 is selected automatically — this absorbs the validation error that used to occur when the caller left year out for a question that never named a year. Confirm the year actually used via year/year_defaulted in the response.
scopeNosummary (default, fast): 주요계정 — about 14 key accounts per basis (자산·부채 유동/비유동/총계, 자본금·이익잉여금·자본총계, 매출액·영업이익·법인세차감전 순이익·당기순이익·총포괄손익), 연결(CFS)·별도(OFS) rows together ≈ 28 rows per company (별도-only 14; 금융업 +α). full: the whole 재무제표 (BS/IS/CF/CIS/SCE), hundreds~1k rows
formatNoREMOVED (구 get_xbrl) — any value is rejected. markdown/markdown_full → items[] replaces them (omit this arg); raw → discontinued.
fs_divNoWith scope=full, selects 연결(CFS)/별도(OFS) (default CFS). The response echoes the basis ACTUALLY used, not the requested one — a CFS→OFS auto-fallback is flagged by fs_div_note. Ignored by scope=summary — summary responses carry no top-level fs_div because consolidation is per-row there. Aliases consolidated/separate·연결/별도 also accepted (case·spaces ignored).
reportNoq1/half/q3/annualannual
sj_divNoWith scope=full, filters 재무제표 종류 (when unset: BS+IS+CIS — a company using the '단일 포괄손익계산서' presentation reports 손익 in CIS only, not IS, so CIS is included by default). BS=재무상태표, IS=손익계산서, CF=현금흐름표, CIS=포괄손익계산서, SCE=자본변동표. To get everything, state ["BS","IS","CF","CIS","SCE"] explicitly. A bare string ("BS") or comma list ("BS,IS") is absorbed into an array.
rcept_noNo14-digit 접수번호 — serves that filing AS FILED (구 get_xbrl 흡수). corp+year serves the LATEST version instead; the two can differ after a [기재정정]. **연차(사업보고서) rcept 전용** — 분·반기 XBRL 은 기간 구조(누계·단독)가 달라 corp+report 로 조회하세요(no_data 가 라우팅). Accepts fs_div·sj_div (구 sections 는 sj_div 로 흡수); corp·year·scope must be omitted. Adds 합산 검증(validations) to the response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / fs_div / description
      Previous value: -"With scope=full, selects 연결(CFS)/별도(OFS) (default CFS). The response echoes the basis ACTUALLY used, not the requested one — a CFS→OFS auto-fallback is flagged by fs_div_note. Ignored by scope=summary — summary responses carry no top-level fs_div because consolidation is per-row there. Aliases consolidated/separate·연결/별도 also accepted."New value: +"With scope=full, selects 연결(CFS)/별도(OFS) (default CFS). The response echoes the basis ACTUALLY used, not the requested one — a CFS→OFS auto-fallback is flagged by fs_div_note. Ignored by scope=summary — summary responses carry no top-level fs_div because consolidation is per-row there. Aliases consolidated/separate·연결/별도 also accepted (case·spaces ignored)."
  2. Changed1 schema field changed
    • changedInput schema / properties / scope / description
      Previous value: -"summary (default): 주요계정, 8~10 rows (fast). full: the whole 재무제표 (BS/IS/CF/CIS/SCE), hundreds~1k rows"New value: +"summary (default, fast): 주요계정 — about 14 key accounts per basis (자산·부채 유동/비유동/총계, 자본금·이익잉여금·자본총계, 매출액·영업이익·법인세차감전 순이익·당기순이익·총포괄손익), 연결(CFS)·별도(OFS) rows together ≈ 28 rows per company (별도-only 14; 금융업 +α). full: the whole 재무제표 (BS/IS/CF/CIS/SCE), hundreds~1k rows"
  3. Changed3 schema fields changed
    • addedInput schema / properties / corp
      Added value: +{
      +  "anyOf": [
      +    {
      +      "minLength": 1,
      +      "type": "string"
      +    },
      +    {
      +      "items": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "minItems": 1,
      +      "type": "array"
      +    }
      +  ],
      +  "description": "Company — **a single string OR an array** (회사명·종목코드·corp_code). With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in `notes`. Compare several companies with scope=summary. A comma list (\"삼성전자,SK하이닉스\") or a bare number (259630) is absorbed too; the legacy key `corps` is accepted. Names/codes that fail to resolve are dropped with a note as long as at least one resolves (all-unresolved still errors). Omit when querying one specific filing by rcept_no instead."
      +}
    • removedInput schema / properties / corps
      Removed value: -{
      -  "description": "Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in `notes`. Compare several companies with scope=summary. A bare string, a comma list (\"삼성전자,SK하이닉스\") or a bare number (259630) is also absorbed into an array. Names/codes that fail to resolve are dropped with a note as long as at least one resolves (all-unresolved still errors). Omit when querying one specific filing by rcept_no instead.",
      -  "items": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "minItems": 1,
      -  "type": "array"
      -}
    • changedInput schema / properties / rcept_no / description
      Previous value: -"14-digit 접수번호 — serves that filing AS FILED (구 get_xbrl 흡수). corp+year serves the LATEST version instead; the two can differ after a [기재정정]. **연차(사업보고서) rcept 전용** — 분·반기 XBRL 은 기간 구조(누계·단독)가 달라 corps+report 로 조회하세요(no_data 가 라우팅). Accepts fs_div·sj_div (구 sections 는 sj_div 로 흡수); corps·year·scope must be omitted. Adds 합산 검증(validations) to the response."New value: +"14-digit 접수번호 — serves that filing AS FILED (구 get_xbrl 흡수). corp+year serves the LATEST version instead; the two can differ after a [기재정정]. **연차(사업보고서) rcept 전용** — 분·반기 XBRL 은 기간 구조(누계·단독)가 달라 corp+report 로 조회하세요(no_data 가 라우팅). Accepts fs_div·sj_div (구 sections 는 sj_div 로 흡수); corp·year·scope must be omitted. Adds 합산 검증(validations) to the response."
  4. Changed2 schema fields changed
    • changedInput schema / properties / corps / description
      Previous value: -"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in `notes`. Compare several companies with scope=summary. A bare string or a comma list (\"삼성전자,SK하이닉스\") is also absorbed into an array. Omit when querying one specific filing by rcept_no instead."New value: +"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in `notes`. Compare several companies with scope=summary. A bare string, a comma list (\"삼성전자,SK하이닉스\") or a bare number (259630) is also absorbed into an array. Names/codes that fail to resolve are dropped with a note as long as at least one resolves (all-unresolved still errors). Omit when querying one specific filing by rcept_no instead."
    • changedInput schema / properties / sj_div / description
      Previous value: -"With scope=full, filters 재무제표 종류 (when unset: BS+IS+CIS — a company using the '단일 포괄손익계산서' presentation reports 손익 in CIS only, not IS, so CIS is included by default). BS=재무상태표, IS=손익계산서, CF=현금흐름표, CIS=포괄손익계산서, SCE=자본변동표. To get everything, state [\"BS\",\"IS\",\"CF\",\"CIS\",\"SCE\"] explicitly."New value: +"With scope=full, filters 재무제표 종류 (when unset: BS+IS+CIS — a company using the '단일 포괄손익계산서' presentation reports 손익 in CIS only, not IS, so CIS is included by default). BS=재무상태표, IS=손익계산서, CF=현금흐름표, CIS=포괄손익계산서, SCE=자본변동표. To get everything, state [\"BS\",\"IS\",\"CF\",\"CIS\",\"SCE\"] explicitly. A bare string (\"BS\") or comma list (\"BS,IS\") is absorbed into an array."
  5. Changed1 schema field changed
    • changedInput schema / properties / corps / description
      Previous value: -"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in a `warning` field. Compare several companies with scope=summary. A bare string or a comma list (\"삼성전자,SK하이닉스\") is also absorbed into an array. Omit when querying one specific filing by rcept_no instead."New value: +"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in `notes`. Compare several companies with scope=summary. A bare string or a comma list (\"삼성전자,SK하이닉스\") is also absorbed into an array. Omit when querying one specific filing by rcept_no instead."
  6. Changed7 schema fields changed
    • changedInput schema / properties / corps / description
      Previous value: -"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in a `warning` field. Compare several companies with scope=summary. A bare string or a comma list (\"삼성전자,SK하이닉스\") is also absorbed into an array."New value: +"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in a `warning` field. Compare several companies with scope=summary. A bare string or a comma list (\"삼성전자,SK하이닉스\") is also absorbed into an array. Omit when querying one specific filing by rcept_no instead."
    • addedInput schema / properties / format
      Added value: +{
      +  "description": "REMOVED (구 get_xbrl) — any value is rejected. markdown/markdown_full → items[] replaces them (omit this arg); raw → discontinued.",
      +  "type": "string"
      +}
    • addedInput schema / properties / rcept_no
      Added value: +{
      +  "description": "14-digit 접수번호 — serves that filing AS FILED (구 get_xbrl 흡수). corp+year serves the LATEST version instead; the two can differ after a [기재정정]. **연차(사업보고서) rcept 전용** — 분·반기 XBRL 은 기간 구조(누계·단독)가 달라 corps+report 로 조회하세요(no_data 가 라우팅). Accepts fs_div·sj_div (구 sections 는 sj_div 로 흡수); corps·year·scope must be omitted. Adds 합산 검증(validations) to the response.",
      +  "pattern": "^\\d{14}$",
      +  "type": "string"
      +}
    • removedInput schema / properties / scope / default
      Removed value: -"summary"
    • changedInput schema / properties / scope / description
      Previous value: -"summary: 주요계정, 8~10 rows (fast). full: the whole 재무제표 (BS/IS/CF/CIS/SCE), hundreds~1k rows"New value: +"summary (default): 주요계정, 8~10 rows (fast). full: the whole 재무제표 (BS/IS/CF/CIS/SCE), hundreds~1k rows"
    • addedInput schema / properties / sj_div / minItems
      Added value: +1
    • removedInput schema / required
      Removed value: -[
      -  "corps"
      -]
  7. Changed2 schema fields changed
    • changedInput schema / properties / corps / description
      Previous value: -"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API). Compare several companies with scope=summary. A bare string or a comma list (\"삼성전자,SK하이닉스\") is also absorbed into an array."New value: +"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API) and the drop is reported in a `warning` field. Compare several companies with scope=summary. A bare string or a comma list (\"삼성전자,SK하이닉스\") is also absorbed into an array."
    • changedInput schema / properties / fs_div / description
      Previous value: -"With scope=full, selects 연결(CFS)/별도(OFS) (default CFS). Aliases consolidated/separate·연결/별도 also accepted."New value: +"With scope=full, selects 연결(CFS)/별도(OFS) (default CFS). The response echoes the basis ACTUALLY used, not the requested one — a CFS→OFS auto-fallback is flagged by fs_div_note. Ignored by scope=summary — summary responses carry no top-level fs_div because consolidation is per-row there. Aliases consolidated/separate·연결/별도 also accepted."
  8. Changed5 schema fields changed
    • changedInput schema / properties / corps / description
      Previous value: -"회사 배열. scope=summary 면 1개(단일) 또는 2+(다중사 비교). scope=full 은 반드시 1개만 — 2개 이상 주면 첫 회사만 반환되고 나머지는 무시됩니다(다중사 전체 재무제표 API 없음). 여러 회사 비교는 scope=summary 로. 단일 문자열이나 콤마 나열(\"삼성전자,SK하이닉스\")도 배열로 흡수합니다."New value: +"Array of companies. With scope=summary: 1 (single) or 2+ (multi-company comparison). scope=full takes EXACTLY 1 — give 2 or more and only the first is returned, the rest are dropped (there is no multi-company full-statement API). Compare several companies with scope=summary. A bare string or a comma list (\"삼성전자,SK하이닉스\") is also absorbed into an array."
    • changedInput schema / properties / fs_div / description
      Previous value: -"scope=full 시 연결(CFS)/별도(OFS) 선택(기본 CFS). consolidated/separate·연결/별도 별칭도 허용."New value: +"With scope=full, selects 연결(CFS)/별도(OFS) (default CFS). Aliases consolidated/separate·연결/별도 also accepted."
    • changedInput schema / properties / scope / description
      Previous value: -"summary: 주요계정 8~10행 (빠름). full: 전체 재무제표(BS/IS/CF/CIS/SCE) 수백~천여 행"New value: +"summary: 주요계정, 8~10 rows (fast). full: the whole 재무제표 (BS/IS/CF/CIS/SCE), hundreds~1k rows"
    • changedInput schema / properties / sj_div / description
      Previous value: -"scope=full 시 재무제표 종류 필터 (미지정 시 BS+IS+CIS — '단일 포괄손익계산서' 채택사는 손익이 IS 가 아니라 CIS 에만 있어 CIS 를 기본 포함). BS=재무상태표, IS=손익계산서, CF=현금흐름표, CIS=포괄손익계산서, SCE=자본변동표. 전체 받으려면 [\"BS\",\"IS\",\"CF\",\"CIS\",\"SCE\"] 명시."New value: +"With scope=full, filters 재무제표 종류 (when unset: BS+IS+CIS — a company using the '단일 포괄손익계산서' presentation reports 손익 in CIS only, not IS, so CIS is included by default). BS=재무상태표, IS=손익계산서, CF=현금흐름표, CIS=포괄손익계산서, SCE=자본변동표. To get everything, state [\"BS\",\"IS\",\"CF\",\"CIS\",\"SCE\"] explicitly."
    • changedInput schema / properties / year / description
      Previous value: -"결산 사업연도(회계연도). 생략하면 가장 최근 '공시된' 사업연도로 자동 지정합니다 — 연도를 안 물은 질문에서 LLM 이 year 를 빠뜨려 검증 에러가 나던 것을 흡수합니다. 응답의 year/year_defaulted 로 실제 사용 연도를 확인하세요."New value: +"결산 사업연도 (회계연도). When omitted, the most recently PUBLISHED 사업연도 is selected automatically — this absorbs the validation error that used to occur when the caller left year out for a question that never named a year. Confirm the year actually used via year/year_defaulted in the response."
  9. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources