Skip to main content
Glama
advayc

Catalog MCP Server

by advayc
README.md
# Northstar Sourcing Agent

Local-first sourcing workflow with a browser UI, a deterministic agent pipeline, and two MCP-compatible stdio servers.

## Run it

```bash
npm start
```

Open `http://localhost:4173`.

## Agent workflow

`GET /api/requests/:requestId` runs the sourcing agent:

1. Reads the synthetic catalog and price history.
2. Reads the RFQ thread from the Outlook-shaped dataset.
3. Extracts price, MOQ, lead time, validity, and shipping terms.
4. Validates extracted values and flags anomalies.
5. Resolves supplier identity against the catalog.
6. Scores quotes using price, lead time, reliability, and extraction confidence.
7. Writes a comparison record to `data/comparisons.json`.

The agent is deterministic so the demo works without credentials. The extraction boundary is isolated in `server/lib/agent.js`, so model-assisted extraction can be added later without changing the MCP tools or the approval boundary.

## MCP servers

Each server speaks newline-delimited JSON-RPC over stdio:

```bash
npm run mcp:catalog
npm run mcp:outlook
```

Catalog tools: `get_supplier_catalog`, `get_price_history`, `write_comparison_sheet`.

Outlook tools: `search_rfq_threads`, `get_message`, `draft_reply`.

There is intentionally no `send_message` tool. Drafting and sending stay separate so a human approval step can be added without relying on prompt instructions alone.

Maintenance

ActivityMaintained
ResponsivenessNo issues