Mastering Financial Markets
com.masteringfinancialmarkets/mfmVersion 1.0.0Read-only fundamentals of developed-market listed companies from official filings, with dates.
Status
Responds644 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 14:05 UTC
- Latency
- 644 ms
- Remotes responding
- 1 of 1
- Sign-in
- No sign-in
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 22:14 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://masteringfinancialmarkets.com/ai/mcpResponds644 msNo sign-in
Claude Code
claude mcp add --transport http mfm https://masteringfinancialmarkets.com/ai/mcpClaude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: mfm
Remote MCP server URL: https://masteringfinancialmarkets.com/ai/mcpCursor
{
"mcpServers": {
"mfm": {
"url": "https://masteringfinancialmarkets.com/ai/mcp"
}
}
}VS Code
code --add-mcp '{"name":"mfm","type":"http","url":"https://masteringfinancialmarkets.com/ai/mcp"}'Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
11 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
bond_calculatorSame calculations as the fixed-income page. Supply actual dated positive cash flows including redemption, settlement, currency, and either total outlay (clean price + accrued interest + fees) or annual-effective yield as a fraction. Returns price, annual-effective ACT/365F IRR, Macaulay and modified duration, convexity, DV01, maturity and repricing scenarios. Or select one of the 10 published bond ETFs to read N-PORT exposures and reported curve risks; coupon is not yield. No quota consumed, nothing stored, no advice. Search/fetch clients: bond: settlement=2026-11-04; currency=EUR; price=100; 2027-11-04=105. ETF example: bond: etf=TLT; country=US; haircut=0.1 | No | Yes | Yes | No |
fetchRead one numbered part of a published MFM document or dataset (an id returned by search that starts with "portfolio:" recomputes the portfolio calculator, nothing stored). Company metadata includes verification_level, audit_id, audit_url and controls_performed. metadata.next_id identifies the following part or is null. Audit levels describe programme membership. Company records: amounts are whole units of the currency stated in each period (field currency), never thousands or millions; ratios in metrics are decimals (0.15 = 15%) except anni_* (years), copertura_interessi, conversione_utili_cassa, investimenti_su_ammortamenti and debito_su_patrimonio* (multiples, 1.5 = 1.5 times). years are in ascending order: the latest fiscal year is the LAST element, in the last parts, so follow every next_id before answering. ttm, quarters and interim_reports are separate periods with their own end dates; infrannuale_piu_recente names the most recent interim period and the block that holds it: use that one and never annualise. A null metric has its reason in warnings of the same period; an absent key is not zero. The pe block holds the P/E shown on the site, with the month-end price, its date and currency, earnings per share and the method (pe_ultimo null = not computed, reason in motivo_en); other price-based figures (market value, dividend yield) are not in the record. public_float is the aggregate market value of shares held by non-affiliates declared on the cover of the annual report (SEC: at the end of the second fiscal quarter), not the current market capitalisation; public_float_info gives its date, filing and definition. Two rows with the same fiscal_year (change of year-end) are told apart by period_label. When scheda_conservata_en (Italian: scheda_conservata) is present, the record is retained and no longer updated by the computation: state since when, why and the last financial year before using its figures. A period with perimetro_diverso belongs, wholly or for the li | No | Yes | Yes | No |
list_datasetsList public MFM catalog entries, optionally filtered by kind or verification level, with explicit pagination. Catalog availability does not certify completeness of every financial indicator. | No | Yes | Yes | No |
list_user_proposalsRead the separate public user-proposal history, including final outcomes. These assertions are separate from official audits; next_cursor identifies another results page. | No | Yes | Yes | No |
portfolio_calculatorRun the MFM portfolio calculator, the same as the calculator page of the site, on positions the USER writes in the conversation. Returns, in order: "sintesi" (the page's «In short» box: {titolo, voci:[{chiave, titolo, testo, numeri}], nota}; composition and concentration against the MSCI World index, price paid for owner earnings against the S&P 500, earnings against the 10-year government bond, largest fall in past crises of the same type with name and years, currency exposure, latent tax; figures and comparisons only), then the page summary, A concentration looking through ETFs (HHI, equivalent companies, sectors, countries, MFM weighted X-ray of the latest reports), B currency risk, C latent tax and tax break-even fall (Italian rules for shares and ETFs when residence is IT), D the historical crises linked to the current MFM Market Weather one by one (name and years, fall in local and reference currency, amount on today's values, time under water, return needed to get back to the peak, inflation while waiting, real break-even), with the site's own sentences, formulas, declared limits and warnings. Each row: security = MFM company id (e.g. aapl), "COUNTRY:TICKER" (e.g. US:AAPL), ISIN, company name (e.g. Apple), or for an equity ETF the index it tracks or the ETF name (e.g. "S&P 500", "MSCI World", "Nasdaq-100", "Euro Stoxx 50", "FTSE All-World", "iShares Core MSCI World UCITS ETF"); current_value and book_cost (total amount paid) in the reference currency. Rows that cannot be resolved are listed with the reason (and candidate ids when several companies match) and left out; the others are computed. ISIN codes are recognised through the public OpenFIGI identifier service, as on the site (only the ISIN is sent, at most 10 per request). THE PORTFOLIO IS NOT STORED OR LOGGED: values exist only inside this request (only the codes of companies held directly are counted for the daily limit, without amounts); do not ask the user for personal data. Description only: histori | No | Yes | Yes | No |
quota_statusRead-only: how many complete company pages this MFM account can still read (first 30 days: 10 profiles per day and 30 companies per month; then 10 every 5 minutes, 40 per day and 100 companies per month (UTC day and month; shared by website and AI)) and how many selections (40 per calendar month, shared with the website), with reset times (UTC). Nothing is consumed. Clients that only expose search and fetch get the same answer from search with the query "quota" or from fetch with the id "quota". | No | Yes | Yes | No |
request_updateOn explicit user request: analysis=full queues full calculations for a level 3 company overnight, permanently; five new companies per UTC day per account, globally deduplicated by company. The default analysis=pdf queues PDF/interim reading within 7 days, five requests per month per account. | No | No | Yes | No |
screen_companiesFilter and sort ALL MFM company profiles (about 10,700 listed companies) by the parameters the USER chooses, using the latest twelve months of each profile (the latest fiscal year or, when more recent, the reconstructed trailing twelve months; balance sheet at the end of that period; multi-year growth from the annual history): period_end in each result gives the end of that period, which is not necessarily a fiscal year end. Returns at most 25 companies (default 25) with only the requested summary parameters, the audit level, a link and the exact fetch_id of the complete page; it never returns complete company pages and does not consume the complete-page quota. The order is the one chosen by the user: it is a data selection, not a recommendation, rating or investment advice; say so to the user. Ratios marked [fraction] are decimals (0.15 = 15%) both in filters and in results. Missing values never pass a filter or a sort. Quota per MFM account: 40 selections per calendar month, shared with the website; complete pages read afterwards with fetch count toward first 30 days: 10 profiles per day and 30 companies per month; then 10 every 5 minutes, 40 per day and 100 companies per month (UTC day and month; shared by website and AI) (for more, contact the Observatory). BOND CALCULATOR: search "bond: etf=TLT" or "bond: settlement=2026-11-04; currency=EUR; price=100; 2027-11-04=105". No quota consumed. Metrics: anni_in_utile_5: Profitable years in the last 5; anni_oe_debito: Years of owner earnings to repay debt; anni_oe_debito_imp: Years of owner earnings to repay debt + commitments; anni_utile_debito: Years of earnings to repay debt; anni_utile_debito_imp: Years of earnings to repay debt + commitments; azioni_var3: Change in shares outstanding, 3 years [fraction]; conversione_utili_cassa: Cash conversion; copertura_interessi: Interest coverage ratio; croe_lordo: CROE [fraction]; croe_tangibile: Tangible CROE [fraction]; croic_lordo: CROIC, gross (adjusted FCF) [fraction]; c | No | Yes | Yes | No |
searchSearch MFM public companies, pages and published datasets by keyword, company name or ticker. An empty result means no MFM record matched those words: say that MFM does not publish it under those words and never attribute figures from other sources to MFM. Results contain document identifiers and public URLs; private portfolios and accounts are excluded. SELECTION BY PARAMETERS (for clients that only expose search and fetch): start the query with "screen:" followed by conditions separated by spaces, e.g. "screen: roe_buffett_lordo>0.15 roic_tangibile>=12% debito_su_patrimonio<0.8 country=US,DE level=1,2 sort=roic_tangibile order=desc limit=10". Ratios are fractions (0.15 = 15%; "15%" is accepted); options: country=, sector=, industry=, level=1,2,3, developed=true, name=, sort=metric, order=asc|desc, limit=1-25 (default 25), columns=a,b. Each result is one company with the requested metrics in the title and text and the fetch id of its complete page. The order is the one chosen by the user: a data selection, never a recommendation. Quota per MFM account: 40 selections per calendar month, shared with the website. PORTFOLIO CALCULATOR (same clients): start the query with "portfolio:" followed by settings and lines separated by ";", e.g. "portfolio: residence=IT; currency=EUR; tax=26%; S&P 500 30000/25000; Apple 5000/1000; US:MSFT 4000/3500 USD; MSCI World 20000/18000 hedged" (each line: security current_value/book_cost in the reference currency; company id, COUNTRY:TICKER, ISIN, company name, or the index an equity ETF tracks). One result with the whole calculator summary in its text, the same as the portfolio_calculator tool; nothing is stored. BOND CALCULATOR: search "bond: etf=TLT" or "bond: settlement=2026-11-04; currency=EUR; price=100; 2027-11-04=105". No quota consumed. Metrics: anni_in_utile_5: Profitable years in the last 5; anni_oe_debito: Years of owner earnings to repay debt; anni_oe_debito_imp: Years of owner earnings to repay debt + commitments; anni_util | No | Yes | Yes | No |
submit_feedbackPrepare a technical proposal for the separate public User Register after explicit user publication consent. The author is masked and the declared model is public. Receipt status PENDING_TIMESTAMP is not public acceptance; publication follows verified timestamp proof. This cannot edit financial data or official audits. | No | No | Yes | Yes |
submit_peer_reviewPrepare an evidence-based peer review for the separate 15-day User Register after explicit user publication consent. The author is publicly masked. Financial records and official audits remain unchanged. A proof-pending receipt is not yet public acceptance. | No | No | Yes | Yes |
Details
- Registry status
- Active
- Published
- Oct 27, 2026
- Updated
- Oct 27, 2026
- Repository
- Not given
- Categories (suggested)
- Finance and paymentsSuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
- GDPR
- Not declared