v0.23.2 · MCP Protocol
This is a Model Context Protocol server that connects AI assistants like Claude Desktop to Foresight's private markets data and analytics platform. Once connected, you can ask natural-language questions about your funds, portfolio companies, deal flow, and sourcing pipeline — and the assistant will retrieve live data directly from Foresight to answer them.
Typical use cases include:
The tools available to you may vary depending on your licensing agreement.
| Tool | Description |
|---|---|
average | Calculate the average (mean) of an array of numbers |
count | Count the number of items in an array of strings. Returns both total count and distinct count. IMPORTANT: Before using this tool, check if the count is already available in a previous tool response. Maximum 100 items. |
create_fund_scenario | Create a new fund scenario with optional assumptions. Each assumption combines a rule (hold_at_current, exit_at_pct_fmv, exit_at_multiple, exit_at_valuation, write_off) with a scope (specific companyIds, all_without_assumption, or all_without_base_scenario_or_assumption). Exit `value`s are decimal multipliers, NOT percentages (1.0 = 100%, 3.0 = 3×). |
difference | Calculate absolute and percentage differences for pairs of numbers. Returns both absolute difference and percentage change for each pair. |
find_company_fund_metrics_for_fund | Get specific company fund metrics for all companies in a fund. Returns only requested metrics (max 6) for better performance. Use list_company_metrics to discover available metrics, and fund-company custom-field paths (fundCompany.customData.*, discoverable via list_company_info or list_company_metrics) are also accepted and returned per-fund. NOTE: This tool does not support KPI data. If you need KPIs for companies in a fund, first use this tool to get the list of company IDs, then use find_kpis_for_all_companies with those company IDs. |
find_info_for_all_companies | Get specific company info fields across portfolio companies. Returns only requested fields for better performance. Use list_company_info to discover available fields, including non-numeric custom-field paths (customData.*, fundCompany.customData.*). |
find_info_for_all_funds | Get specific fund info fields across all funds. Returns only requested fields (max 6) for better performance. Use list_fund_info to discover available fields. For calculated performance metrics use find_metrics_for_all_funds. |
find_kpis_for_all_companies | Get specific KPIs across portfolio companies. Returns only requested KPIs for better performance. Use list_company_kpis to discover available KPI IDs. |
find_metrics_for_all_companies | Get specific calculated investment metrics across portfolio companies. Returns only requested metrics for better performance. Use list_company_metrics to discover available metrics, including numeric custom-field paths (company.customData.*, fundCompany.customData.*). |
find_metrics_for_all_funds | Get specific fund metrics across all funds. Returns only requested metrics for better performance. Use list_fund_metrics to discover available metrics. |
find_rounds | Query investment rounds by attributes across companies and funds. Use list_round_fields to discover filterable fields. |
find_sourcing_company | Find a company by domain/website or by name alone. Name-only searches may return multiple matches. IMPORTANT: When multiple results are returned, always present ALL results to the user with Name | Domain | Location | Industry for disambiguation. Never auto-select. |
get_company_cap_table | Get cap table and ownership data for a company. By default returns only the primary cap table with totals, per-stakeholder ownership, and per-instrument-type summaries (including liquidation preference stack). Use stakeholders to drill into specific shareholders, includeShareClasses for per-share-class detail (waterfall math), or includeAllSources to see every cap table source. |
get_company_commentary | Get performance commentary for a company. By default returns only the most recent entry. |
get_company_fund_metrics | Get per-fund breakdown of calculated investment and financial metrics for a company. Same as get_company_metrics but grouped by fund or fund type. For single company only. Each fund’s fund-company custom data values are also included (per-fund, not rolled up); note this is not available when groupByFundType is true, since fund-type aggregates do not carry per-fund custom data. |
get_company_historical_financials | Get historical financial data for specific KPIs. Use list_company_kpis to find KPI IDs |
get_company_info | Get info about a company, like identifiers, description, sector, location, people, investment basics, co-investors, and operational details. Customer-specific custom data is also returned here under customData — non-numeric custom fields (text, single/multi-select, dates), including fund-company custom data rolled up across the company’s funds. Numeric custom fields are returned by get_company_metrics instead. Some customers override standard info fields with custom fields, so if a standard field appears missing or empty, look for a similarly named field in customData (and check get_company_metrics for numeric custom fields). Use find_info_for_all_companies for multiple companies, and use list_company_info to discover the available standard and custom fields. |
get_company_investment_thesis | Get the investment thesis for a company. By default returns only the most recent entry. |
get_company_investments | Round-tracker data for a company: one row per financing round the funds participated in, with round valuation (pre/post-money, price per share), ownership %, shares held, and round-level performance. This is round-history data, NOT the transaction ledger. For individual transactions, use get_investment_transactions (investor/deal-team view) or get_ledger_transactions (finance/fund-accounting view). |
get_company_kpis | Get financial and operational KPIs reported by the company. Use find_kpis_for_all_companies for multiple companies. |
get_company_metrics | Get calculated investment and financial metrics for a company, like MOIC, IRR, ownership, valuations. Customer-specific numeric custom fields are also included here — company-level and fund-company-level (rolled up across the company’s funds). Non-numeric custom fields are returned by get_company_info instead. Use find_metrics_for_all_companies for multiple companies. |
get_company_notes | Get published notes linked to a company, most recent first. Returns title, body, and tags for each note. |
get_company_rounds | Get all investment rounds for a specific company with valuation, ownership, and performance data |
get_company_securities | Get a company's holdings broken down by fund and security type, with total cost, fair market value (FMV), and realized value for each. This is the Ledger grouped by Security: one row per security (e.g. "Series B-1 Preferred Shares", "Convertible Note", "Warrants") within each fund. Use this to answer "by fund, by security type, how much cost and FMV" questions. For per-share-class waterfall detail (seniority, liquidation preferences) use get_company_cap_table instead. |
get_deal_lead_companies | Get companies grouped by their deal lead (investment partner). Returns list of deal leads with their associated companies. By default groups by the built-in dealLeadId. Pass customDealLeadField to group by a custom data field instead — useful when a customer tracks deal leads in a custom field rather than the standard one. |
get_deal_lead_metrics | Get aggregated performance metrics for deal leads (partners). Returns IRR, MOIC, DPI, TVPI, RVPI, investment amounts, and company counts grouped by partner. By default groups by the built-in dealLeadId. Pass customDealLeadField to group by a custom data field instead — useful when a customer tracks deal leads in a custom field rather than the standard one. |
get_fund_company_scenarios | Get all financial modeling scenarios for portfolio companies in a fund. Returns scenarios across all users and visibilities (Public, Private, Team). Optional cases filter (Base/Downside/Upside) accepts an array; multiple values are OR-combined (any match). Omit cases to return all. |
get_fund_info | Get descriptive info and terms for a single fund, like legal name, type, vintage, strategy, key dates, currency, general partners, commitments, and waterfall economics. These are the fund's own attributes, not calculated performance — for IRR, DPI, TVPI, and cash flows use get_fund_metrics. Use find_info_for_all_funds for multiple funds and list_fund_info to discover available fields. |
get_fund_metrics | Get fund performance metrics for a single fund. Returns IRR, DPI, TVPI, RVPI, cash flows, and active company counts. Use find_metrics_for_all_funds for multiple funds. |
get_fund_rounds | Get all investment rounds where a specific fund participated |
get_investment_transactions | Investor / deal-team view of a company's transactions (the Transactions tab). Rows speak app-transaction language — Buy, Sell, Note Issuance, SAFE, Secondary Purchase — where one row is roughly one investment decision, with deal attributes (coupon, maturity, valuation cap/discount, exit terms, acquirer). Computed live. Use get_ledger_transactions for the finance/fund-accounting (Investran ledger) view instead. |
get_ledger_transactions | Finance / fund-accounting view of a company's transactions (the Ledger tab). Rows speak Investran ledger language — Investment - Cost, Cash In, Escrow, Realized Gain, Mark-to-Market — where one economic event may decompose into several entries, with the columns finance teams reconcile (FMV, Realized Value, PPS). Served from metric snapshots, so it may lag recent edits until a metrics recalc. Use get_investment_transactions for the investor/deal-team (app-transaction) view instead. |
get_sourcing_company | Get detailed enriched company profile. |
health_check | Check MCP server and Foresight API health status. |
list_company_info | List all available company info fields that can be requested, like identifiers, description, sector, location, people, investment basics, co-investors, and operational details. Non-numeric custom data fields configured by the customer are also listed here under customData.* (company-level) and fundCompany.customData.* (fund-company-level) paths. Numeric custom fields are listed by list_company_metrics instead. Some customers override standard info fields with custom fields, so when a standard field is unavailable or empty, look for a similarly named custom field (and check list_company_metrics for numeric custom fields). |
list_company_kpis | List all available KPIs that can be requested: financial and operational KPIs reported by the companies |
list_company_metrics | List all available calculated investment and financial metrics that can be requested like MOIC, IRR, ownership, valuations. Numeric customer custom fields (company-level under company.customData.* and fund-company-level under fundCompany.customData.*) are also listed here. |
list_fund_info | List all available fund info fields that can be requested — the fund's own descriptive attributes and terms (identity, vintage, strategy, dates, currency, general partners, commitments, waterfall economics). For calculated performance metrics (IRR, DPI, TVPI, cash flows) use list_fund_metrics instead. |
list_fund_metrics | List all available fund metrics that can be requested |
list_funds | List all funds with id, name, and aliases. |
list_portfolio_companies | List all portfolio companies with just id and name. |
list_round_fields | List all available fields on investment round objects for discovery and filtering. Use this to understand what data is available before querying rounds. |
run_fund_scenario | Execute the fund scenario runner (historical actuals + projected future events from company-level scenarios and assumptions) and return the canonical fund-reporting metrics in a `reporting` block (when produced by the runner): gross MOIC and IRR, plus LP net-of-fees-and-carry IRR, TVPI, DPI, and RVPI computed over LP paid-in capital (NVPI is null pending product definition). These LP-net metrics are the figures to report for net performance — they differ from the recycling-adjusted netMoic/netTotalValue concept. Also returns scenario identifiers, any data-quality warnings, and the net-haircut approximation flag. Persists the full run result as lastRunResult, overwriting any prior run. |
search_sourcing_companies | Search for companies using natural language queries. Use for exploratory searches. |
sum | Calculate the sum of an array of numbers. IMPORTANT: Before using this tool, check if the sum is already available in a previous tool response. Maximum 100 items. |
update_fund_scenario | Update fund scenario fields and/or replace its assumptions. Only the creator can update. Any field omitted is left unchanged; passing assumptions replaces the existing list entirely. Exit `value`s on assumption rules are decimal multipliers, NOT percentages (1.0 = 100%, 3.0 = 3×). |
https://mcp.dev.foresightdata.com/mcp
If the custom connector option is unavailable, add the server as a remote MCP server
in your claude_desktop_config.json:
{
"mcpServers": {
"foresight": {
"url": "https://mcp.dev.foresightdata.com/mcp"
}
}
}
Authentication is handled automatically via OAuth discovery
(/.well-known/oauth-protected-resource). No manual token configuration is needed.
For direct integration, send JSON-RPC requests via POST /mcp:
curl -X POST https://mcp.dev.foresightdata.com/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <your-access-token>" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'