{
  "data": {
    "tool": {
      "category": "scheduling",
      "endpoint": "https://agentrynku.pl/api/mcp",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/agentrynku-gpw.json",
      "kind": "mcp",
      "listed": "indexed",
      "liveUrl": "https://www.anchorterminal.com/api/v1/live/agentrynku-gpw.json",
      "markdownUrl": "https://www.anchorterminal.com/tools/agentrynku-gpw.md",
      "mcpTools": {
        "check": {
          "checker": "anchor-check/1.0",
          "totalTokens": 1456,
          "counts": {
            "error": 0,
            "note": 1,
            "warn": 5
          },
          "findings": [
            {
              "rule": "TC07",
              "severity": "warn",
              "tool": "get_quarterly_kpis",
              "message": "the description is about 708 tokens",
              "fix": "Keep the description to what a model needs to choose and call the tool; move the manual to a resource or the docs."
            },
            {
              "rule": "TC11",
              "severity": "warn",
              "tool": "get_financial_ratios",
              "message": "none of its 2 parameters has a description",
              "fix": "Describe each one: format, units, an example, and what happens when it's left out."
            },
            {
              "rule": "TC11",
              "severity": "warn",
              "tool": "get_public_dividends",
              "message": "none of its 2 parameters has a description",
              "fix": "Describe each one: format, units, an example, and what happens when it's left out."
            },
            {
              "rule": "TC11",
              "severity": "warn",
              "tool": "get_public_earnings_calendar",
              "message": "none of its 2 parameters has a description",
              "fix": "Describe each one: format, units, an example, and what happens when it's left out."
            },
            {
              "rule": "TC11",
              "severity": "warn",
              "tool": "search_gpw_companies",
              "message": "none of its 2 parameters has a description",
              "fix": "Describe each one: format, units, an example, and what happens when it's left out."
            },
            {
              "rule": "TC24",
              "severity": "note",
              "message": "5 of 5 tools have no outputSchema",
              "fix": "Declare outputSchema for tools that return structured data, and return structuredContent that matches it."
            }
          ]
        },
        "checkedAt": "2026-10-04T22:25:49Z",
        "count": 5,
        "schemaTokens": 1456,
        "status": "ok",
        "tools": [
          {
            "name": "get_financial_ratios",
            "description": "GPW quarterly financial ratios from published, quality-gated reports: EBITDA, operating, net profit margins, plus equity/assets. Each percentage includes its formula and report basis. Null means missing, withheld or nonpositive denominator. No price-based valuation multiples or TTM estimates.",
            "inputSchema": {
              "properties": {
                "quartersBack": {
                  "default": 8,
                  "maximum": 20,
                  "minimum": 1,
                  "type": "integer"
                },
                "symbol": {
                  "maxLength": 80,
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "symbol"
              ],
              "type": "object"
            },
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true
            }
          },
          {
            "name": "get_public_dividends",
            "description": "Known GPW dividend resolutions from issuer WZA announcements only, with amount per share, currency, status, dates and source URLs. Limited coverage: excludes vendor EODHD history and predictions. An empty result does not mean the company pays no dividend. Latest resolution generation is retained, including cancellations.",
            "inputSchema": {
              "properties": {
                "limit": {
                  "default": 50,
                  "maximum": 100,
                  "minimum": 1,
                  "type": "integer"
                },
                "symbol": {
                  "maxLength": 80,
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "symbol"
              ],
              "type": "object"
            },
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true
            }
          },
          {
            "name": "search_gpw_companies",
            "description": "Find active GPW companies by name, ticker, alias or ISIN before requesting financial data. Returns canonical symbols, ISIN and public company URLs; does not search other markets. Results are bounded and truncated is explicit.",
            "inputSchema": {
              "properties": {
                "limit": {
                  "default": 10,
                  "maximum": 20,
                  "minimum": 1,
                  "type": "integer"
                },
                "query": {
                  "maxLength": 80,
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "query"
              ],
              "type": "object"
            },
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true
            }
          },
          {
            "name": "get_public_earnings_calendar",
            "description": "Get known scheduled GPW reports over the next 1 to 90 days, including today in Warsaw. Covers the public market calendar, without a personal watchlist. Includes source and fetch date, removes dates superseded by published results, and declares truncation. An empty result is not proof that no companies will report.",
            "inputSchema": {
              "properties": {
                "daysAhead": {
                  "default": 90,
                  "maximum": 90,
                  "minimum": 1,
                  "type": "integer"
                },
                "limit": {
                  "default": 50,
                  "maximum": 100,
                  "minimum": 1,
                  "type": "integer"
                }
              },
              "required": [],
              "type": "object"
            },
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true
            }
          },
          {
            "name": "get_quarterly_kpis",
            "description": "Quarterly financial KPIs for a symbol (revenue, EBITDA, net income, EPS, balance sheet, cash flow, adjusted vs reported). Foundation data for predictive scanner / earnings bridge / forecast calibration. Coverage varies by GPW company and quarter. Instruments are resolved from the registry by ticker, alias or ISIN, within the Polish market. Missing data is not zero. Each row includes reportScope (null when unknown); do not assume standalone and consolidated figures are comparable. ⚠️⚠️ UNITS: monetary `...PLN` fields here are in MILLIONS — `revenuePLN: 11872` for KGHM means 11.87 BILLION, not 11872. This differs from `get_forecast`, where `baseline.ttm*PLN` is in BARE units (KGHM 39296000000); the two scales differ by exactly 1e6 (verified 2026-08-05 on 6 companies), so never compare or divide a value from this tool by one from get_forecast without converting first. ⚠️⚠️ CURRENCY: despite the `PLN` suffix, these amounts are in the issuer's REPORTING currency — always read the row's `currency` field, which may be EUR or USD. The suffix is a legacy field name, not a currency assertion. EXCEPTIONS to the million rule: `epsPLN` and `adjustedEpsPLN` are per-share and therefore in bare currency units. ⚠️⚠️ DATA QUALITY: every row carries `dataQuality` with `flagRule` (our detector's rule, null when clean), `manualVerdict` (`legit` = a human confirmed the number at the source, `confirmed_bad` = a human rejected it) and `blocksComputation` (the SHARED predicate the forecast pipeline itself applies). A row with `blocksComputation: true` is one WE do not trust: quote it only with that caveat, and never feed it into a TTM sum or a growth rate. Measured 2026-08-09: of 4665 polish-stocks rows, 257 carry a detector flag and 257 have `blocksComputation: true` - the two counts match by coincidence, not by definition: the blocked set drops one flagged row a human confirmed as `legit` and adds one row a human rejected as `confirmed_bad` without any detector flag. Always read `blocksComputation`, never infer it from `flagRule`. ⭐ PROVENANCE (ARCH-3.5): every row also carries `values.\u003cfield\u003e` = {value, currency, unit ('mln' for money, absent for per-share), asOf, source (producer label), evidenceCount, sourceUrl}. Prefer `values` over the bare `...PLN` fields: it names the currency and unit explicitly, and a field with no complete provenance is ABSENT from `values` rather than null or 0. The bare `...PLN` fields are legacy and will be removed. `withheld` lists fields returned as null (flat fields and `values`) because a data-quality flag withholds them, each with `field`, `rule` and a Polish `reason`: a profit-read flag withholds net income, parent net income, EBIT, EBITDA, EPS and their adjusted variants while revenue stays, so never read those nulls as \"not reported\".",
            "inputSchema": {
              "properties": {
                "quartersBack": {
                  "default": 8,
                  "description": "How many recent quarters to return. Default 8, max 20.",
                  "maximum": 20,
                  "minimum": 1,
                  "type": "integer"
                },
                "symbol": {
                  "description": "Required. XTB-style 'KGH.PL' canonicalized.",
                  "type": "string"
                }
              },
              "required": [
                "symbol"
              ],
              "type": "object"
            },
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true
            }
          }
        ]
      },
      "name": "Agent Rynku - Warsaw Stock Exchange (GPW) data for your agent",
      "note": "Indexed from the official MCP registry: facts and our own checks, not reviewed, so no score, grade or rank.",
      "packages": [
        {
          "registryType": "npm",
          "identifier": "agentrynku-mcp",
          "version": "1.1.0",
          "transport": "stdio"
        }
      ],
      "pageJsonUrl": "https://www.anchorterminal.com/tools/agentrynku-gpw.json",
      "popularity": {
        "githubStars": 0,
        "npmWeekly": 177
      },
      "registryName": "pl.agentrynku/gpw",
      "remotes": [
        {
          "type": "streamable-http",
          "url": "https://agentrynku.pl/api/mcp"
        }
      ],
      "repository": "https://github.com/krystiangw/agentrynku-mcp",
      "reviewed": false,
      "slug": "agentrynku-gpw",
      "source": "the official MCP registry",
      "sourceUrl": "https://registry.modelcontextprotocol.io/v0.1/servers?search=pl.agentrynku/gpw",
      "summary": "GPW financials, ratios, company search, earnings calendar and WZA dividends. No account required.",
      "updatedAt": "2026-10-04T21:12:28Z",
      "url": "https://www.anchorterminal.com/tools/agentrynku-gpw",
      "vendor": "agentrynku.pl",
      "vendorUrl": "https://agentrynku.pl/mcp",
      "version": "1.1.0",
      "websiteUrl": "https://agentrynku.pl/mcp",
      "where": "both",
      "why": [
        "vendor"
      ]
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/agentrynku-gpw",
    "json": "https://www.anchorterminal.com/tools/agentrynku-gpw.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/agentrynku-gpw.md",
    "slim": "https://www.anchorterminal.com/tools/agentrynku-gpw.min.md"
  },
  "markdown": "# Agent Rynku - Warsaw Stock Exchange (GPW) data for your agent\n\n\u003e Indexed, not reviewed: facts from the official MCP registry and our own checks. No score, grade or rank, and not in the rankings until the panel reviews it. How the index works: https://www.anchorterminal.com/indexed/\n\n- Kind: MCP server, by agentrynku.pl (https://agentrynku.pl/mcp)\n- Category: Calendars \u0026 scheduling (https://www.anchorterminal.com/categories/scheduling.md)\n- Listed because: It's published in the registry under agentrynku.pl, a namespace the registry only gives to whoever proves they control that domain.\n- What the official MCP registry says: GPW financials, ratios, company search, earnings calendar and WZA dividends. No account required.\n\n## Facts\n\n- MCP registry: `pl.agentrynku/gpw` 1.1.0\n- Endpoint: https://agentrynku.pl/api/mcp (streamable HTTP)\n- Package: npm `agentrynku-mcp` (stdio)\n- Source: https://github.com/krystiangw/agentrynku-mcp\n- Website: https://agentrynku.pl/mcp\n- npm downloads a week: 177\n- GitHub stars: 0\n- Registry entry updated: 2026-10-04\n\n## Tools\n\n- Tools it lists (5, about 1,456 tokens of context, `tools/list` without credentials over MCP 2025-11-25, checked 2026-10-04 22:25 UTC):\n  - `get_financial_ratios` (read-only): GPW quarterly financial ratios from published, quality-gated reports: EBITDA, operating, net profit margins, plus equity/assets. Each percentage includes its…\n  - `get_public_dividends` (read-only): Known GPW dividend resolutions from issuer WZA announcements only, with amount per share, currency, status, dates and source URLs. Limited coverage: excludes…\n  - `search_gpw_companies` (read-only): Find active GPW companies by name, ticker, alias or ISIN before requesting financial data. Returns canonical symbols, ISIN and public company URLs; does not…\n  - `get_public_earnings_calendar` (read-only): Get known scheduled GPW reports over the next 1 to 90 days, including today in Warsaw. Covers the public market calendar, without a personal watchlist.…\n  - `get_quarterly_kpis` (read-only): Quarterly financial KPIs for a symbol (revenue, EBITDA, net income, EPS, balance sheet, cash flow, adjusted vs reported). Foundation data for predictive…\n- How its tools read to an agent (0 errors, 5 warnings, 1 note, about 1,456 tokens; rules at https://www.anchorterminal.com/check.md; not part of the score):\n  - warn TC07 get_quarterly_kpis: the description is about 708 tokens\n  - warn TC11 get_financial_ratios: none of its 2 parameters has a description\n  - warn TC11 get_public_dividends: none of its 2 parameters has a description\n  - warn TC11 get_public_earnings_calendar: none of its 2 parameters has a description\n  - warn TC11 search_gpw_companies: none of its 2 parameters has a description\n  - note TC24 server: 5 of 5 tools have no outputSchema\n\n- JSON: https://www.anchorterminal.com/api/v1/tools/agentrynku-gpw.json\n- Being indexed says nothing about quality, and nobody can pay for it. Ask for a review: https://www.anchorterminal.com/builders/#claiming\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Indexed",
        "url": "https://www.anchorterminal.com/indexed/"
      },
      {
        "name": "Agent Rynku - Warsaw Stock Exchange (GPW) data for your agent",
        "url": ""
      }
    ],
    "description": "Agent Rynku - Warsaw Stock Exchange (GPW) data for your agent, an MCP server by agentrynku.pl, listed from the official MCP registry. Indexed, not reviewed: facts and our own checks, no score or ranking. GPW financials, ratios, company search, earnings calendar and WZA…",
    "facts": [
      "not reviewed",
      "not ranked",
      "facts only"
    ],
    "h1": "Agent Rynku - Warsaw Stock Exchange (GPW) data for your agent",
    "image": "https://www.anchorterminal.com/assets/og/indexed.png",
    "path": "/tools/agentrynku-gpw",
    "published": "",
    "section": "indexed",
    "title": "Agent Rynku - Warsaw Stock Exchange (GPW) data for your agent",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/tools/agentrynku-gpw"
  },
  "tokens": {
    "markdown": 950,
    "slim": 880
  },
  "version": 1
}
