Skip to main content
Glama

Server Details

US stock earnings: next-day price reactions, beat/miss history, calendar, call summaries (KO/EN)

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
afternsapp/afterns-mcp
GitHub Stars
0
ChatGPT
–
Claude
–

TDQS

A4.2/5.0

Scored across 4 tools

Disambiguation4/5

The four tools have clear primary roles: ticker lookup, upcoming earnings discovery, call summarization, and historical post-earnings reactions. There is minor overlap because reactions also provide the next earnings date and call takeaways, but the descriptions generally clarify which tool to choose.

Naming Consistency5/5

All names use consistent lowercase snake_case with an action-first pattern. Three earnings tools share the get_earnings_* prefix, while search_stocks appropriately uses a search verb for discovery.

Tool Count5/5

Four tools are well scoped for a focused US earnings assistant. Each supports a distinct step in the workflow without adding redundant or peripheral functionality.

Completeness4/5

The set covers ticker resolution, upcoming schedules, management commentary, and historical earnings reactions, forming a usable end-to-end workflow. Coverage is somewhat limited by the latest-call-only summary and roughly 220-company support, with no dedicated tool for detailed quarterly results or older calls.

Available Tools

4 tools
get_earnings_calendarEarnings calendarA
Read-onlyIdempotent
Inspect

List upcoming US earnings reports for a date range (up to 14 days, US Eastern dates), largest and most-watched companies first. Optional group: bigtech, semiconductors, software, memory, healthcare, space. Use for "이번 주 실적 발표 일정", "다음 주 빅테크 실적 언제야?", "Which chip stocks report next week?". Defaults to the next 7 days. The result is shown as a calendar card.

NameRequiredDescriptionDefault
toNoYYYY-MM-DD, US Eastern. Default: from + 6 days
fromNoYYYY-MM-DD, US Eastern. Default: today
langNoAnswer language. Use "ko" when the user writes in Korean, otherwise "en".ko
groupNoOnly this group of companies, e.g. "bigtech" or "semiconductors". Omit for all companies

Output Schema

NameRequiredDescription
toYes
fromYes
langYes
groupYes
itemsYes
totalYesall matching reports; items may be fewer
disclaimerYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds non-obvious behavior: a hard 14-day maximum range, US Eastern date semantics, default next-7-days window, sort order, and that the result renders as a calendar card. No permission or rate-limit caveats are given, keeping it at 4.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and constraints, then usage examples and output hint. The group enum is repeated from the schema and the example-query list is dense, but each sentence carries routing or constraint information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no prose; annotations cover safety; all four parameters are documented in-schema and reinforced by the description. An agent has everything needed to call this correctly, including defaults and range limits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description still adds value by enumerating the group values as human-readable sectors and by imposing the 14-day range constraint that the schema does not express. Default behavior for `to` aligns with the schema description rather than adding new detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("List upcoming US earnings reports for a date range") plus scope qualifiers: 14-day cap, US Eastern dates, and sort order (largest/most-watched first). This is clearly distinct from get_earnings_call_summary and get_earnings_reactions, which cover past calls/reactions rather than upcoming dates.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides concrete user-question triggers in two languages ("이번 주 실적 발표 일정", "Which chip stocks report next week?"), which gives strong usage context. It does not name alternatives or state when not to use it versus get_earnings_reactions or search_stocks, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_earnings_call_summaryLatest earnings call summaryA
Read-onlyIdempotent
Inspect

Summarize what management said on a US company's latest earnings call or release: one-line takeaway, positives, concerns, and up to three quotes (Korean translation with the English original). Use for "아마존 어닝콜 핵심만 알려줘", "What did Nvidia's CEO say last quarter?". Available for about 220 major companies.

NameRequiredDescriptionDefault
langNoAnswer language. Use "ko" when the user writes in Korean, otherwise "en".ko
stockYesTicker (NVDA) or company name in Korean or English (엔비디아, Nvidia, 구글)

Output Schema

NameRequiredDescription
noteYes
stockYes
quotesYes
sourceYes
concernsYes
announcedYes
one_linerYes
positivesYes
disclaimerYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds valuable context beyond that: the coverage limit of ~220 companies and the exact output composition including Korean translation with English original.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and output structure, followed by useful example utterances and a coverage caveat. Dense but every element serves selection or invocation; the examples are justified by the bilingual use case.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values needn't be spelled out, yet the description still sketches the summary structure helpfully. Combined with the coverage limit and example queries, an agent has enough to call it correctly; only explicit sibling differentiation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so both parameters (stock, lang) are fully documented in the schema, establishing a baseline of 3. The description's mention of Korean translation with English original loosely reinforces the lang parameter but adds no syntax or format detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (summarize) and resource (latest earnings call/release) with clear scope: US companies, ~220 majors. The output shape (takeaway, positives, concerns, quotes) further distinguishes it from siblings like get_earnings_calendar and get_earnings_reactions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides concrete example queries in both Korean and English that show the intended invocation context, plus the availability constraint (~220 major companies). It does not explicitly contrast with sibling tools or state when not to use it, keeping it short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_earnings_reactionsEarnings reactions and next report dateA
Read-onlyIdempotent
Inspect

Show how a US stock moved the day after each of its recent earnings reports (up to the 12 most recent), whether EPS beat or missed estimates, and its next earnings date in Korea and US Eastern time. Use for questions like "엔비디아 실적 발표 언제야?", "마이크로소프트 실적 나오면 주가 어떻게 움직였어?", "Does Tesla usually drop after earnings?". Historical data only; it does not predict prices. The result is shown as an interactive card with the chart, stats, and earnings-call takeaways.

NameRequiredDescriptionDefault
langNoAnswer language. Use "ko" when the user writes in Korean, otherwise "en".ko
limitNoHow many of the most recent reports to return (1-12)
stockYesTicker (NVDA) or company name in Korean or English (엔비디아, Nvidia, 구글)

Output Schema

NameRequiredDescription
callYeslatest earnings-call takeaways, when available
langYes
nextYes
as_ofYes
stockYes
latestYesnumbers from the most recent report
sourceYes
summaryYes
reactionsYes
disclaimerYes
just_reportedYesreported within the last 48h but results not in this data yet

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this as a safe, idempotent, closed-world read, so the safety profile is covered. The description goes further by disclosing the 12-report cap, the timezone convention (Korea and US Eastern), and that the response renders as an interactive card with chart, stats, and earnings-call takeaways — useful context beyond annotations, though it omits any latency or data-freshness expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core capability, then the sample questions, then the historical-data caveat, then the output format — a sensible ordering. The three example questions are somewhat redundant with each other, but they usefully anchor both languages.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description needn't explain return values, yet it still characterizes the card presentation. For a 3-parameter read tool with full schema coverage and rich annotations, this is essentially complete; the only gap is not clarifying how it relates to the earnings-calendar and call-summary siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so ticker/name formats, the ko/en enum, and the 1-12 limit are all already documented. The description reinforces the 'up to 12 most recent' bound and the stock scope but adds no syntax or behavior the schema doesn't already carry, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise verb and resource: how a US stock moved the day after each of its recent earnings reports, EPS beat/miss, and the next earnings date. The scope (up to 12 reports, US stocks, historical only) plus the concrete example questions make it immediately distinguishable from a bare calendar or call-summary tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Sample questions (in Korean and English) show exactly the kind of query this answers, and the explicit negative constraint 'Historical data only; it does not predict prices' warns off misuse. It stops short of naming when to prefer get_earnings_calendar or get_earnings_call_summary, so routing among siblings is still inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_stocksFind a US stockA
Read-onlyIdempotent
Inspect

Find US-listed stocks by ticker or company name, including Korean names and nicknames (e.g. 구글 → GOOGL, 엔비디아 → NVDA). Use when the user names a company and you need its ticker.

NameRequiredDescriptionDefault
langNoAnswer language. Use "ko" when the user writes in Korean, otherwise "en".ko
queryYesTicker or company name to look up, in Korean or English (구글, Alphabet, GOOGL)

Output Schema

NameRequiredDescription
resultsYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuine value by disclosing Korean-name/nickname resolution and the name→ticker direction of the operation. It stays silent on ambiguous or partial matches (single vs. multiple results), which is the main remaining behavioral unknown.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, both load-bearing: the first defines what is searchable and demonstrates the non-obvious Korean alias behavior; the second gives the usage trigger. Nothing is redundant and the core capability is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With full annotation coverage, 100% schema description coverage and an output schema, the description need not explain returns or safety. It is complete for selecting and calling the tool; only disambiguation behavior on fuzzy or multi-match queries is left implicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so both `query` and `lang` are already documented with examples and enum meaning. The description restates the query semantics (ticker, company name, Korean names) but adds no new detail, and says nothing about the `lang` parameter. Baseline 3 applies when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Find US-listed stocks") with a clear scope constraint (US-listed) and concrete resolution examples (구글 → GOOGL). It does not reference the sibling tools, but the purpose is distinct enough from the earnings-oriented siblings that confusion is unlikely.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use when the user names a company and you need its ticker" gives a clear triggering condition tied to user intent. There is no explicit when-not guidance or mention of alternatives (e.g. what to do if the user already has a ticker, or if resolution fails).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Changedget_earnings_calendar1 field changed
      • changedOutput schema / properties / items / items / properties / url / description
        Previous value: -"afterns page for this stock — cite it as the source"New value: +"afterns page for this stock"
    • Changedget_earnings_call_summary1 field changed
      • changedOutput schema / properties / stock / properties / url / description
        Previous value: -"afterns page for this stock — cite it as the source"New value: +"afterns page for this stock"
    • Changedget_earnings_reactions4 fields changed
      • changedOutput schema / properties / just_reported / description
        Previous value: -"reported within the last 48h but results not in this data yet — tell the user and link the source page"New value: +"reported within the last 48h but results not in this data yet"
      • addedOutput schema / properties / latest
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "announced": {
        +          "type": "string"
        +        },
        +        "eps": {
        +          "description": "adjusted EPS when the company reports one, else GAAP; currency in eps_currency",
        +          "type": [
        +            "number",
        +            "null"
        +          ]
        +        },
        +        "eps_currency": {
        +          "enum": [
        +            "USD",
        +            "CNY",
        +            "EUR",
        +            "DKK"
        +          ],
        +          "type": "string"
        +        },
        +        "eps_display": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "eps_estimate": {
        +          "description": "consensus EPS estimate before the report, same currency",
        +          "type": [
        +            "number",
        +            "null"
        +          ]
        +        },
        +        "eps_estimate_display": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "eps_surprise_pct": {
        +          "type": [
        +            "number",
        +            "null"
        +          ]
        +        },
        +        "eps_vs_estimate": {
        +          "anyOf": [
        +            {
        +              "enum": [
        +                "beat",
        +                "miss",
        +                "inline"
        +              ],
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "guidance_display": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "guidance_revenue_usd": {
        +          "description": "company's revenue guidance for the next quarter, when given",
        +          "type": [
        +            "number",
        +            "null"
        +          ]
        +        },
        +        "period_end": {
        +          "type": "string"
        +        },
        +        "revenue_display": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revenue_usd": {
        +          "type": [
        +            "number",
        +            "null"
        +          ]
        +        },
        +        "revenue_yoy_pct": {
        +          "type": [
        +            "number",
        +            "null"
        +          ]
        +        }
        +      },
        +      "required": [
        +        "announced",
        +        "period_end",
        +        "eps",
        +        "eps_currency",
        +        "eps_display",
        +        "eps_estimate",
        +        "eps_estimate_display",
        +        "eps_vs_estimate",
        +        "eps_surprise_pct",
        +        "revenue_usd",
        +        "revenue_display",
        +        "revenue_yoy_pct",
        +        "guidance_revenue_usd",
        +        "guidance_display"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "description": "numbers from the most recent report"
        +}
      • changedOutput schema / properties / stock / properties / url / description
        Previous value: -"afterns page for this stock — cite it as the source"New value: +"afterns page for this stock"
      • changedOutput schema / required
        Previous value: -[
        -  "lang",
        -  "stock",
        -  "next",
        -  "just_reported",
        -  "call",
        -  "reactions",
        -  "summary",
        -  "as_of",
        -  "source",
        -  "disclaimer"
        -]New value: +[
        +  "lang",
        +  "stock",
        +  "next",
        +  "just_reported",
        +  "call",
        +  "reactions",
        +  "latest",
        +  "summary",
        +  "as_of",
        +  "source",
        +  "disclaimer"
        +]
    • Changedsearch_stocks1 field changed
      • changedOutput schema / properties / results / items / properties / url / description
        Previous value: -"afterns page for this stock — cite it as the source"New value: +"afterns page for this stock"
  2. 4 tool updates
    • First observedget_earnings_calendar
    • First observedget_earnings_call_summary
    • First observedget_earnings_reactions
    • First observedsearch_stocks

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Explains why US stocks moved. AI analysis for 'why did Tesla drop?' queries. Covers S\&P 500, NASDAQ 100, Dow 30 (~550 stocks).
    1
    -
  • A
    license
    A
    quality
    A
    maintenance
    Provides AI with real-time stock data from Naver Securities and Yahoo Finance via 47 tools, enabling accurate analysis without API keys for Korean and US markets.
    72
    Academic Free v1.1
  • A
    license
    Not graded
    quality
    B
    maintenance
    Realtime financial context for AI agents: what changed, who is affected, and what to watch next. One suite covering news, events, guidance, filing changes, sentiment, stakeholders, and alerts. Information-efficient responses with evidence for every result. First-class point-in-time safety for backtests. Pairs well with web search and a market-data API. All data is our own.
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables researching one US or KRX stock at a time from an AI chat client, returning SEC EDGAR financials and insider filings alongside unofficial daily price history and roughly 40 computed technical, risk, entry-scenario and EPS-scenario factors. It is read-only, holds no brokerage connection, and labels every value with its source and as-of date.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.