MHTL Warehouse MCP Server

MHTL Warehouse MCP Server

Enables Claude to query a local DuckDB warehouse containing mock motorcycle-loan data, with tools for customer search, insights, and read-only SQL queries.

Category
Visit Server

README

MHTL Warehouse MCP Server

An MCP server (TypeScript) that lets Claude query the local DuckDB warehouse in data/mock.duckdb — a mock motorcycle-loan warehouse with DMS (loan servicing) and LOS (loan origination) tables.

Ask Claude things like:

"Get the insights of the customer Noy Vongphachanh"

and it will look the customer up, pull their contracts, delinquency/NPL status, recent collection notes, and loan applications.

Tools exposed

Tool What it does
list_tables List all tables/views with row counts.
describe_table Show columns + types for a table.
find_customer Search customers by (partial) name or id → returns their oid.
customer_insights The headline tool. Full profile for a customer: identity, contracts, outstanding/overdue balances, NPL flag, recent contact notes, loan applications.
query Run an arbitrary read-only SELECT/WITH query. Auto-applies a LIMIT; blocks anything that writes.

The database is opened read-only, and the query tool rejects any non-SELECT statement and multi-statement input, so nothing can mutate the data.

Setup

npm install
npm run build      # compiles src/ -> dist/

Connect it to Claude Desktop

  1. Build (npm run build).

  2. Copy claude_desktop_config.json from this folder to Claude Desktop's config location (create the folder/file if it doesn't exist):

    • Windows: %APPDATA%\Claude\claude_desktop_config.json (C:\Users\fookl\AppData\Roaming\Claude\claude_desktop_config.json)
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    If you already have other MCP servers configured, merge the mhtl-warehouse entry into your existing mcpServers object instead of overwriting the file.

  3. Fully quit and reopen Claude Desktop.

  4. In a new chat you should see the tools available (plug/tools icon). Try: "Get the insights of the customer Noy Vongphachanh."

How the data links together

  • dms_customer.oid (BIGINT) ← dms_contract.customer (the numeric id).
  • dms_contract.contractiddms_contact_note.contract / dms_contact_legal.contract.
  • LOS ↔ DMS customers share their last 5 id digits 1:1 (C500123L100123), used to attach loan applications.

Configuration

  • WAREHOUSE_DB_PATH — absolute path to the DuckDB file. If unset, the server defaults to ../data/mock.duckdb relative to dist/.

Project layout

src/index.ts   MCP server + tool definitions
src/db.ts      Read-only DuckDB connection + query/normalisation helpers
dist/          Compiled output (run this)
data/          mock.duckdb + parquet warehouse

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured