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.
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
-
Build (
npm run build). -
Copy
claude_desktop_config.jsonfrom 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-warehouseentry into your existingmcpServersobject instead of overwriting the file. - Windows:
-
Fully quit and reopen Claude Desktop.
-
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.contractid←dms_contact_note.contract/dms_contact_legal.contract.- LOS ↔ DMS customers share their last 5 id digits 1:1
(
C500123↔L100123), used to attach loan applications.
Configuration
WAREHOUSE_DB_PATH— absolute path to the DuckDB file. If unset, the server defaults to../data/mock.duckdbrelative todist/.
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
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.