canli-mcp / How it works
How canli-mcp works, and how it is tested
canli-mcp is one program that runs on your machine and gives an AI model finance tools. The model asks it for what it needs, it reads the public source or does the sum, and every answer says where it came from.
On a question
What happens when you ask
- The model sees a short list. 5 tools instead of 388, which costs 2,524 tokens of context on each request. All 388 listed side by side across the seven servers would cost 70,862.
- It searches.
find_tooltakes plain words, such as "who owns this company", and returns the tools that fit.describe_toolgives one tool's arguments. - It runs them.
run_toolruns one tool or up to 25 at once, on your machine. Calculations stay there. A data tool sends only the company, series or symbol you asked about, to the source named below. - It gets an answer it can check. Figures come with the filing, sentence or table row they were read from, and a hash of the document received, so anyone can fetch it again and compare.
- You can see it. Where the app supports it, the result opens as a chart or table you can use in the chat, and the model reads a summary of it.
The data
Where the numbers come from
From the body that publishes them, with no key and no account: the SEC for filings, insiders and funds; the Treasury, the Fed, FRED, the ECB, the Bank of England, Japan's Ministry of Finance and the Bank of Canada for rates; the World Bank, the OECD and the BIS for the world economy; the FDIC for banks; the CFPB, the FDA, NHTSA, the Treasury's sanctions office and the Federal Register for public records; Cboe for delayed options data; Yahoo Finance for prices. Prices and options are not the original exchange feed.
The local server fetches from these sources directly. The exceptions are point-in-time SEC fundamentals and the research record, which come from copies published on canlicapital.com; those requests carry the company, measure or search words, never your own data. The hosted connector at https://canlicapital.com/mcp/canli runs the public-data and computing tools for people who cannot install anything; the privacy policy says what it sees.
Being wrong out loud
It refuses instead of guessing
Testing
How it is tested, failures included
The test that finds real problems is a new one. So each round takes releases the tools have never seen, writes down the right answers from the text first, and only then runs the tools. The first score stays on the record. As of 2026-10-30, on canli-markets-mcp 0.8.2, the 119 analyst questions all pass. Run live against SEC EDGAR. Tool level: no model reads the answers. The expected figures come from sources the tools do not read: SEC's XBRL API, a separate table parser, and the releases' own words.
| Set | What it is | First run | After fixes |
|---|---|---|---|
| dev | Companies and releases the tools were built on | 21 of 21 | No fixes needed |
| fresh | Releases never used while building | 26 of 32 | 32 of 32 |
| fresh-2 | More releases, run once after those fixes | 9 of 9 | No fixes needed |
| verify | Claims to fact-check, some true and some wrong on purpose | 15 of 19 | 19 of 19 |
| trap | False premises, such as a year not reported. Passing means refusing | 6 of 6 | No fixes needed |
| fresh-3 | Outlooks from 12 releases of the third-quarter season | 12 of 14 | 14 of 14 |
| fresh-4 | 12 questions on releases filed 2026-10-29, scored on the row's own low and high | 7 of 12 | 12 of 12 |
| fresh-5 | 6 more from that day, written first and run once after the fixes | 6 of 6 | No fixes needed |
A score on a set that has already led to fixes no longer says much about new questions, which is why the next set is written first. Other checks: a cross-check of 21 figures. European filings, central-bank rates, odds and crypto set against sources those tools do not read. A live check of the data tools runs every night, so a source that changes its format shows up the next morning. Before a release, a sweep sends hostile arguments to the tools. Against other servers, the head-to-head benchmark gives the same model the same questions; we wrote those questions, so its page lists the caveats, and an outside benchmark is still to come.
What testing has caught
Limits
