Skip to main content
Glama
vbzvibin

Northern Trust MCP Layer

by vbzvibin
README.md
# Northern Trust MCP Layer - Prototype

This repository implements a "Server of Servers" architecture using the Model Context Protocol (MCP). It features a central Orchestrator that aggregates domain-specific data capabilities (like Performance) into a single, governed interface.

## Repository Structure
- `orchestrator/`: The main gateway server. Handles routing and tool aggregation.
- `domains/performance/`: Sample domain implementation providing fund performance tools.
- `package.json`: Root configuration for managing the workspace.

## Prerequisites
- Node.js (v18+)
- NPM

## Setup Instructions

1. **Install Dependencies**
   Run from the root directory:
   ```bash
   npm install
   ```

2. **Build the Projects**
   ```bash
   npm run build:all
   ```

3. **Run for Testing**

   **Option A: Test individual domains**
   ```bash
   cd domains/performance
   npm run dev
   ```

   **Option B: Test the Orchestrator (Server of Servers)**
   ```bash
   cd orchestrator
   npm run dev
   ```

## Key Features
- **Namespace Routing**: Tools from the Performance domain are automatically prefixed with `perf_` by the orchestrator.
- **Dynamic Discovery**: The orchestrator fetches the tool manifest from domain servers on startup.
- **Type Safety**: Built with TypeScript and Zod for robust schema validation.
- **Standard Protocol**: Compatible with any MCP-compliant client (e.g., Gemini, Claude Desktop).

## Available Tools (via Orchestrator)
- `perf_get_fund_returns`: Returns YTD and 1-year performance.
- `perf_benchmark_comparison`: Compares fund vs benchmark.
- `perf_sharpe_ratio`: Returns risk-adjusted performance metric.

Maintenance

ActivityInactive
ResponsivenessNo issues