Pascal connects your internal notes, licensed research, expert calls, and public filings into a single entity-resolved, temporally-aware knowledge graph - exposed as one MCP server to any AI agent.
Analyst notes and expert calls are where this breaks the most - brokers generally include tickers, but internal docs do not follow any consistent naming standard.
Every document ingested gets its own row. Pascal extracts and normalises the entity name as it appears in that source, maps it to a canonical global ticker, and attaches the filing period and timestamp - before any query runs.
| Global Ticker | Canonical Name | Name as it appeared in source | Source Type | Document ID | Date | Current Quarter |
|---|---|---|---|---|---|---|
| NVDA | NVIDIA Corporation | US67066G1040 | Analyst Notes | 83421.json | Apr 25, 2026 | Q1 FY27 |
| NVDA | NVIDIA Corporation | NVIDIA | Public Filing | 10-Q Quarterly Report - SEC Q3 FY26 | Nov 20, 2025 | Q3 FY26 |
| NVDA | NVIDIA Corporation | Blackwell | Expert Call | EC-2026-0415-Semi-047 | Apr 15, 2026 | Q1 FY27 |
| NVDA | NVIDIA Corporation | NVIDIA | Expert Call | EC-2026-0210-Tech-019 | Feb 10, 2026 | Q1 FY27 |
| NVDA | NVIDIA Corporation | Semiconductors | Broker Report | gs_nvda_initiation_coverage_q4fy26.pdf | Apr 2, 2026 | Q1 FY27 |
| NVDA | NVIDIA Corporation | Jensen Huang | Podcast | bg2pod_jensen_nvidia_ai_infra_apr2026.mp3 | Apr 8, 2026 | Q1 FY27 |
| TSM | Taiwan Semiconductor Mfg | CoWoS capacity | Expert Call | EC-2026-0415-Semi-047 | Apr 15, 2026 | Q1 FY26 |
| TSM | Taiwan Semiconductor Mfg | 2330 | Analyst Notes | 62847.json | Mar 28, 2026 | Q1 FY26 |
| TSM | Taiwan Semiconductor Mfg | Taiwan Semi | Expert Call | EC-2026-0418-Fab-032 | Apr 18, 2026 | Q1 FY26 |
| TSM | Taiwan Semiconductor Mfg | Taiwan Semiconductor Manufacturing Co Ltd | Public Filing | 10-K Annual Report - SEC 2026 | Mar 31, 2026 | Q1 FY26 |
| CRM | Salesforce Inc | Salesforce / SFDC | Analyst Notes | 54832.json | Mar 20, 2026 | Q1 FY27 |
| CRM | Salesforce Inc | Agentforce | Expert Call | EC-2026-0330-SaaS-011 | Mar 30, 2026 | Q1 FY27 |
Green dates = latest document per ticker. The "Name as it appeared in source" column shows exactly why cross-source search breaks without this table. Resolution is a deterministic lookup - not an LLM inference at query time.
Every alias extracted, every document linked, every source tracked - grouped by canonical entity. This is what Pascal queries against when a search comes in.
resolve_user → list_filing_periods(NVDA) → finds Richard's latest note (Apr 25, 2026)send_brief(richard@fund.com) → formatted brief with citations delivered to inboxEach step handles one responsibility. Source priority: ① Analyst Notes → ② Expert Calls → ③ Broker Reports.
"Snowflake has an MCP. Bloomberg has an MCP." - Individual MCPs work within one source. They break the moment a query crosses two. Pascal is not a bundle of connectors - it is connectors + document intelligence + knowledge graph + orchestration harness.
| Capability | Individual MCPs (Direct) | Pascal MCP |
|---|---|---|
| Entity resolution | ❌ "Taiwan Semi" ≠ "2330" ≠ "TSMC." Three MCPs treat these as three different companies. | ✅ Entity master pre-computed at ingestion. Deterministic lookup - same input, same output, every time. |
| Missed signals | ❌ If the analyst note isn't tagged NVDA, a NVIDIA search returns zero - even if the note contains critical NVIDIA content. | ✅ Content-level entity extraction at ingestion captures every relevant mention, regardless of how the file was tagged. |
| Cross-source queries | ❌ "Semis" in expert calls ≠ "semiconductors" in analyst notes. Each MCP returns its own result set with no shared taxonomy. | ✅ Unified sector and entity taxonomy. One query resolves to the same entity set across all sources. |
| "Latest" queries | ❌ Semantic similarity - may return a 6-month-old note. "Latest" is guessed by the LLM, non-deterministically. | ✅ Timestamps indexed at ingestion. list_filing_periods grounds every query in real database dates. |
| Agent orchestration | ❌ Claude defaults to one tool. With multiple MCPs connected, Claude tends to answer using just one source and produce a poor result - unless you explicitly tell it which tool to use for each type of information. | ✅ Pascal's MCP handles orchestration automatically. Sub-queries are routed to the right source in the right order - no explicit per-query instructions needed from the user. |
| Context window | ❌ Must dump entity mappings, sector taxonomies, and timestamps into context on every query. Breaks past ~150k tokens. | ✅ All metadata pre-indexed. Resolution is a lookup - zero context overhead per query. |
| Security & governance | ❌ Each system manages its own permissions, identity, and access. N connectors = N governance surfaces. | ✅ One security boundary. Permission-scoped tool parameters. Audit logging across all sources in a single dashboard. |
200+ companies, 7 sources, 10k+ documents → a mapping table that doesn't fit any context window. Quality degrades past ~150k tokens even if it does fit.
Re-resolving entities and time periods from raw context on every query is slow. Pascal's metadata is pre-computed - resolution is a lookup, not LLM inference.
LLM-based resolution may resolve the same company differently on two consecutive queries. Pascal's structured metadata is deterministic - same input, same output, always auditable.