Repository navigation
Releases
Proof ledger 2026-11-02
Signed, append-only record of what these companies filed, and what later filings changed.
It shows these lines have not changed since they were sealed. It does not show a figure is right.
{"head":{"seq":27104,"hash":"585c7f20d374266951710bd63a2551eed4b1cb57a4f13b2890a27b3b62897730","at":"2026-11-02T16:04:59.407Z"},"entries":27105,"seals":1,"key_fingerprint":"def4bfa6d17a9d08","added":27103,"restatements_seen":1622,"failed":0}canli-markets-mcp 0.5.0
Beyond the US, from the publishers themselves: four tools, no key. The server now offers 43 read-only market tools.
european_filings: a European company's annual financial report in the European Single Electronic Format (ESEF), from XBRL International's filings.xbrl.org. Find the company by name (matched against about 7,400 filers) or by LEI. It returns the report's own tagged totals (revenue, operating and net profit, EPS, assets, equity, cash, cash flows, dividends), each under the IFRS concept the company used, with comparatives and periods as days.wordsfinds any other tagged figure.reference_rates: from the New York Fed, SOFR, TGCR, BGCR, EFFR (with the Fed's target range) and OBFR, with percentiles and volume. From the ECB, the euro short-term rate and its deposit, refinancing and marginal lending rates. From the Bank of England, SONIA and Bank Rate. From the BIS, about forty central banks' policy rates (policy:JP,policy:Brazil).prediction_markets: what traders on Polymarket and Kalshi pay for an outcome, found by words. Each market gives a probability (the middle of bid and ask, else the last trade), bid, ask, volume and closing date, with each event's resolution rules.crypto_fundamentals: from DefiLlama, a DeFi protocol's value locked (now, by chain and its history), the fees users pay it and the revenue it keeps. Also a chain's value locked, and a stablecoin's supply and its change by chain.
Checked against sources these tools do not read (bench/global/crosscheck.mjs, 2026-10-15):
- ESEF revenue and net profit equal the same companies' Form 20-F facts at the SEC (TotalEnergies, Novo Nordisk and Shell, 2024 and 2025): 12 of 12.
- The ECB's, the Bank of England's and the Fed's rates agree with the policy rates the BIS collects: 9 of 9.
Also:
earnings_releaselists a guide once. A table's point figure that is the midpoint of a range the text states (for the same measure, basis and quarter) is that range restated, not a second guide.verify_claimsshows its rounding rule on the result's own first figure.
Validation: 170 tests on Node 20, 22 and 24, with replayed responses from every publisher. npm publication includes provenance; the MCP Registry entry is updated by the same release job.
Prices on prediction markets are traders' prices, not forecasts; DefiLlama's measures are its adapters' and can differ from a protocol's own reports. Not investment advice.
canli-markets-mcp 0.4.0: statements as filed, guidance as ranges, fact checks
Four tools for the work an analyst does with filings, and for checking the answer. The server now offers 39 read-only market tools.
financial_statements: income statement, balance sheet, cash flow and equity statement exactly as filed, from SEC's rendered XBRL reports; several filings joined by period, and a restated or split-changed line shown beside its first-reported figure instead of mixed into the table.filing_tables: the table in a filing that holds a figure (members, stores, ARPU, guidance tables), and the same table followed through earlier filings.earnings_release: a quarter's results release with guidance parsed into ranges (plus or minus, approximately, respectively), each figure with its quote; results name their segment and what a change is measured against; last quarter's guidance is set against the company's own results for that quarter.verify_claims: a draft's figures checked against the filings: confirmed at the claim's precision, contradicted with the filed figure and what the claimed one matches instead (another year, a quarter, a unit slip), not reported, or not checkable.
Validation: 159 tests with replayed SEC responses; an analyst question set of 87 questions, with truths built without the tools, passes 87 (first runs on releases not used in development: 26 of 32, 9 of 9, 15 of 19 and 6 of 6, defects since fixed). A row-by-row review of the results tables on 26 releases found and fixed further errors before release, including two wrong beat-or-miss rows. npm publication includes provenance; the MCP Registry entry is updated by the same release job.
Parsing results and guidance from press-release prose is by rule: every figure carries its source sentence, which is the authority. This is a tool-level measure, not a model benchmark.
Finance flagship 0.6.0: beyond the US, results drawn as a reader needs them
Flagship release: beyond the US, and results drawn the way a reader needs them. It has 315 tools across seven published packs, 35 prompts, 15 static resources and nine resource templates, behind three discovery tools.
-
Beyond the US, from the publishers themselves (canli-markets-mcp 0.5.0):
european_filingsreads a European company's annual report as it filed it in ESEF.reference_ratesgives SOFR, the effective fed funds rate with the Fed's range, the euro short-term rate and the ECB's rates, SONIA and Bank Rate, and about forty policy rates the BIS collects.prediction_marketsshows what Polymarket and Kalshi traders pay for an outcome.crypto_fundamentalsgives DefiLlama's value locked, fees, revenue and stablecoin supply.- Cross-checked against sources the tools do not read: ESEF figures equal the same companies' Form 20-F at the SEC (12 of 12), and central-bank rates agree with the BIS (9 of 9).
-
New workflow prompts:
global_rates: four central banks' policy rates beside SOFR, the euro short-term rate and SONIA, and the Treasury curve.european_company: a company's latest ESEF annual report.defi_snapshot: stablecoin supply, value locked on Ethereum and Solana, and a protocol's fees and revenue.macro_snapshotnow adds what prediction markets price for the Fed's next decisions, and SOFR against the Fed's range.
-
A viewer that shows what it used to leave out (in clients with MCP Apps):
- grouped figures: a stock's market data and P/E, the next expected earnings date, the latest short interest, the Fed's latest decision, a protocol's fees;
- lists of records as tables, and odds as percentages;
- the Treasury curve over its maturities, and a futures curve by expiration;
- policy rates as steps between decisions.
Charts keep their lines on one scale.
-
Finding the right tool: 41 requests for the eight newest tools were written before measuring. On the first run, the right tool came first 36 times and in the top three 38 times. After two missing phrases were added to the index, those became 38 and 40. Earlier request sets are unchanged.
Validation:
- 53 tests pass on Node 20, 22 and 24, and all seven repository checks passed.
- npm publication with provenance and the MCP Registry entry come from the release job.
- Context: with all packs enabled, initial tools plus instructions measure 1,160 o200k_base tokens, against 39,962 for the seven servers run separately.
- Robustness: a hostile-argument sweep of the markets pack's 43 tools made 590 calls with no findings.
- Desktop bundle: it validates, and its packaged server passed stdio smokes in three configurations.
- Prompts: every new prompt's batch ran against the live sources.
- Viewer: tested in the MCP Apps reference host with live results, dark and light; not yet tried inside a commercial client.
Prediction-market prices are traders' prices, not forecasts. Not investment advice.
Finance flagship 0.5.0: filings as an analyst reads them, fact checks, results drawn in the chat
Substantial flagship release: 311 tools across seven published packs, 32 prompts, 15 static resources and nine resource templates, behind three discovery tools.
- Filings as an analyst reads them (canli-markets-mcp 0.4.0):
financial_statementsreturns statements exactly as filed, several years joined without mixing bases;filing_tablesfinds the table in a filing that holds a figure and follows it through earlier filings;earnings_releasereads a results release, with guidance as ranges and last quarter's guidance set against the company's own results. - Fact checks:
verify_claimschecks a draft's figures against the filings: confirmed, contradicted (with the filed figure and what the wrong one matches: another year, a quarter, a unit slip), not reported, or not checkable. The server's instructions ask agents to check reported figures before answering, and the newfact_checkprompt returns a draft corrected. - Results drawn in the chat: in clients that support MCP Apps,
run_toolresults appear as a page beside the answer: tables, statements as filed, claims with their verdicts, last quarter's guidance as a range with the actual marked, and line charts. One self-contained page, no network access, every string escaped; the model's context is unchanged. - New
financial_historyprompt;company_briefandearnings_previewnow read the latest results release.
Validation: 48 tests pass on Node 20/22/24; all seven repository checks passed; npm publication with provenance and the MCP Registry entry come from the release job. With all seven packs enabled, initial tools plus instructions measure 1,160 o200k_base tokens versus 38,047 separately. The desktop bundle validates and its packaged server passed stdio smokes in three configurations; a hostile-argument sweep of the markets pack made 536 calls with no findings. The viewer was tested in the MCP Apps reference host with live results; it has not yet been tried inside a commercial client. The markets pack's analyst questions (87, truths built without the tools) pass at tool level; no model graded the answers.
Finance flagship 0.4.0: native pack guides and desktop distribution
Substantial combined finance release: 307 tools across seven published packs, 30 prompts, 14 static resources and nine resource templates, behind three discovery tools.
- Pins quant/backtest 0.1.2, fundamentals 0.6.0, research/markets 0.3.0 and validation 0.14.0. Numerical overflow is refused before JSON and success receipts.
- Brings each pack’s native prompts, schemas, methods, sleeve specs, examples and completions into one connection. Guide metadata is prebuilt; handlers load on use. Disabled packs stay hidden and renamed tool routes remain consistent.
- Gathers batched research workflows, wrapped-request bounds, result previews and recoverable table/text paging.
- Adds a dependency-complete Claude Desktop MCPB extension and an attested release workflow.
Validation: 38 tests pass on Node 20/22/24, fresh npm tarball and desktop stdio smokes pass on all three, all seven repository checks passed and the merge ref has zero open CodeQL findings. Dependency audit reports zero vulnerabilities. With all seven packs enabled, initial tools plus instructions measure 1,113 o200k_base tokens versus 35,142 separately; local five-launch startup medians were 75 ms versus 64–90 ms each. Later prompts/results/provider calls/model reasoning are excluded. No worldwide ranking or new model-evaluation claim.
Published and independently verified on npm, with provenance, and in the official MCP Registry. Publishing workflow. All files in the attached actual npm tarball match the signed tag.
Coverage and remaining gaps, measured context.
Install: npx -y canli-mcp@0.4.0. The desktop workflow attaches canli-mcp-0.4.0.mcpb, checksums and Sigstore provenance to this release. Verify its provenance with gh attestation verify canli-mcp-0.4.0.mcpb --repo arhancanli/canlicapital.
canli-research-mcp 0.3.0: resource lookup guards
0.3.0 rejects inherited tool names before converting a resource schema or generating a code example. Names such as constructor and __proto__ now receive a useful unknown-tool error.
The three guided workflows and Python/JavaScript/curl code resources were already included in the npm 0.2.0 artifact. This release retains them; an earlier changelog heading incorrectly presented them as new in 0.3.0. The source changelog is being corrected.
Validation: 86 package tests pass, including resource-name regressions that failed before the lookup fix. Fresh npm installs work on Node 20/22/24; npm provenance and registry publication are verified.
Quant MCP 0.1.2: numerical correctness and explicit refusals
Cumulative quantitative correctness release: fixes integer rounding and studentized-bootstrap/statistical checks, supports summary-input probabilistic/deflated Sharpe with observation guards, and refuses computed NaN/Infinity with field diagnostics before JSON serialization or success receipts.
The package retains 235 tools. The release suite has 46 test groups and 465 reference cases. Captured extreme-input replays produced explicit numerical refusals; this establishes those checks, not universal numerical accuracy.
Published and independently verified as canli-quant-mcp 0.1.2 on npm, with npm provenance, and in the official MCP Registry. Publishing run. Signed source tag at c8b9895.
The attached tarball is the actual npm distribution, verified against its registry SHA1 86c1f9048d2ecf04bb0736ee8558866b37924d1d; SHA256SUMS is attached. Source-only 0.1.1 remains an immutable archive and is superseded by this cumulative npm release.
canli-quant-mcp 0.1.1: signed source archive; cumulative npm update pending
Corrects studentized bootstrap calculations, Sharpe summary-input handling and observation bounds, whole-number rounding, and degenerate variance and forward-value inputs. The quant engine has 235 tools; 45 test groups and 465 independent reference cases pass.
Source and the attached npm-compatible tarball are available from this signed tag. Every packed file was compared byte-for-byte with the tag, and SHA256SUMS is attached.
This signed0.1.1 source archive will not be published separately to npm. The reviewed cumulative0.1.2 candidate includes these corrections plus explicit numerical-result errors, and awaits Trusted Publisher authorization. This GitHub release does not establish npm or MCP Registry publication. No npm provenance is claimed for these locally packed assets. Extreme-number overflow findings remain recorded in the combined-candidate robustness evidence.
canli-markets-mcp 0.3.0: earnings and news from the filings; corrected event times
Earnings dates and company news now come from the companies’ own filings. This release adds earnings_calendar, press-release headlines on company_events and SEC fund-ticker resolution. event_study calibrates each submissions file against the filing index’s Accepted time before assigning an event day.
The server offers 35 read-only market tools. npm publication includes provenance; the official MCP Registry is updated by the same verified release job. Validation: 93 passing tests, with replayed source responses and acceptance-time regressions, and a clean dependency audit.
Estimated future earnings dates are labelled as estimates. Filing acceptance is evidence of publication time, not the time the underlying event occurred.