QuantLink AI · Agent Platform

A quant desk, opened to AI agents.

QuantLink's MCP platform is the layer where AI agents research, evaluate, and refine investment strategies with the tools of a quant desk. Beside it sits a governed data server that gives agents and notebook kernels authenticated, entitlement-checked access to 789 datasets. Kanav Mehta owned the platform as lead engineer, from tool contracts and storage design to fail-closed authentication and end-to-end verification on staging.

The desk's machinery, one tool call away.

Agents work through the same gated machinery a quant researcher uses, not a simplified sandbox.

  • 38 agent tools cover AutoML runs, DAG execution, a blocking leakage and overfit evaluation gate, feature-store queries, knowledge-graph search, DCF valuation, and nine notebook operations.
  • A dependency-free JSON-RPC stdio server connects the full platform to Claude Code or Cursor in one command; its HTTP twin shares a single MCP wire contract, with one sanitizer making NumPy scalars and non-finite values JSON-safe on both transports.
  • The data server lets an agent search the catalog, inspect schemas, preview a request, look up valid parameter values, fetch, and query in SQL across 789 datasets, guided by 6 resources and 3 prompts.

Every byte authenticated, every dataset entitled.

  • Fail-closed by construction: with no token verifier installed, the MCP endpoint falls back to the API-key gate rather than opening up; anonymous calls get a 401 with RFC 9728 metadata pointing at the service's own public origin, and caller identity always comes from the verified token (notebook grant, user JWT, or service key).
  • 19 dataset-fetching routes sit behind JWT, with fail-closed per-dataset access checks on fetch, preview, query, and spec compilation; the same gate covers the SQL relay and the notebook-kernel data broker, and 115 warehouse datasets (all 52 bulk sets included) dispatch through the authorized catalog.
  • Large results never flood an agent's context: each fetch is written once to Parquet under a deterministic query key, the agent gets a bounded preview plus a handle, and follow-up DuckDB SQL (capped at 10,000 rows) or an Arrow stream reads the snapshot without another provider call. Tool errors pass through structure-aware secret redaction, pinned by a catalog-wide test.

Fast enough for an agent loop, proven on staging.

  • A shared provider rate limiter and a five-minute TTL cache cut a parameter lookup from 1.35 s to 0.16 s, so agents can explore valid inputs without metered spend.
  • Notebook kernels reach the server with a scoped grant (20-minute lifetime, refreshed at 15 minutes and replayed silently so credentials never appear in cell output): a fetch returned in 0.4 s and a follow-up query in 0.6 s.
  • Continuity lives in model-visible handles passed as tool arguments, the pattern the stateless MCP revision standardizes. The server shipped with 165 MCP tests and 3,636 further unit and service tests passing, then was verified end to end on staging with an MCP SDK client: auth, fetch, query by handle, and Arrow read-back.