Custom Domain MCP Server
MCP server: Custom Domain MCP Server
Installation
npx custom-domain-mcp-serverAsk AI about Custom Domain MCP Server
Powered by Claude ยท Grounded in docs
I know everything about Custom Domain MCP Server. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
๐ง Financial Wellness & Personalization MCP Server
Version: 1.0.0
๐ Overview
The Financial Wellness & Personalization MCP Server is a modular financial analysis and planning engine built on the Model Context Protocol (MCP). It exposes a set of intelligent tools to handle various aspects of personal finance โ including budgeting, debt management, expense categorization, and net worth calculation โ through a standardized protocol interface.
This server enables AI agents or client applications to interact with financial data models and generate personalized insights, forecasts, and synthetic (dummy) financial profiles for testing or personalization.
โ๏ธ Core Features
- ๐ฐ Budgeting Tool โ Generate and analyze personal budgets.
- ๐ค Financial Profile Tool โ Create and manage user financial profiles.
- ๐ฒ Random Profile Generator โ Produce realistic synthetic financial data.
- ๐งพ Expense Categorization โ Classify transactions into intuitive spending categories.
- ๐ณ Debt Repayment Planner โ Model repayment strategies and schedules.
- ๐ Net Worth Calculator โ Compute total financial standing (assets vs. liabilities).
- ๐ฎ Cash Flow Forecasting โ Predict upcoming income and expenses.
- ๐ง MCP Prompt Integration โ Generate dummy profiles via prompt instructions.
- โ Goal-Based Recommendations โ Suggest actionable steps for achieving goals.
- โ Synthetic Profile Generation โ Produce realistic dummy financial data for testing or personalization.
๐๏ธ Project Structure
Server/
โ
โโโ src/
โ โโโ data/
โ โ โโโ financial.profiles.json
โ โ
โ โโโ lib/
โ โ โโโ financial-profile-analyzer/
โ โ โ โโโ calculate-risk-tolerance.ts
โ โ โ โโโ created-at.ts
โ โ โ โโโ finance-profiles.ts
โ โ โ โโโ goal-based-recoms.ts
โ โ โ โโโ recommendations.ts
โ โ โ
โ โ โโโ functions/
โ โ โโโ get-predict-dates.ts
โ โ
โ โโโ server.ts
โ โ
โ โโโ tools/
โ โโโ budgeting-tool.ts
โ โโโ cash-flow-forecast.ts
โ โโโ debt-repayments.ts
โ โโโ expense-categorization.ts
โ โโโ financial-profile-tool.ts
โ โโโ net-worth.ts
โ โโโ random-financial-profile.ts
โ
โโโ .gitignore
โโโ package.json
โโโ package-lock.json
โโโ tsconfig.json
โโโ README.md
Each tool module registers an MCP-compliant tool with the server and exposes specific functionality related to financial planning or analysis.
๐งฉ Architecture
1. MCP Server
The project uses the @modelcontextprotocol/sdk package to define and manage an MCP (Model Context Protocol) server:
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
The server defines:
- Tools โ modular functions for financial tasks.
- Prompts โ structured AI-driven instructions.
- Resources โ potential shared data or model definitions (currently unused).
2. Transport Layer
The server communicates using standard I/O (stdio):
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
This allows it to easily integrate with CLI tools or MCP clients.
3. Tool Registration
Each financial module is registered with the MCP server:
registerFinancialProfileTool(server);
registerBudgetingTool(server);
registerGenerateRandomFinancialProfileTool(server);
registerExpenseCategorizationTool(server);
registerDebtRepaymentTool(server);
registerNetWorthTool(server);
registerCashFlowTool(server);
Each registerXYZTool() function:
- Defines an MCP tool schema.
- Provides input validation (via
zod). - Exposes a handler that executes the toolโs logic.
4. Prompts
A built-in prompt generate-dummy-financial-profile creates a realistic synthetic profile with fields like:
{
"name": "Jane Doe",
"age": 32,
"goals": [{"name": "Emergency Fund", "amount": 5000}],
"income": {"salary": 75000, "freelance": 5000, "consulting": 0},
"debts": [{"name": "Student Loan", "monthly_payment": 250, "interestRate": 15.5}],
"transactionAggregates": [
{"category": "Groceries", "totalAmount": 400, "month": "October"}
],
"recurringMerchants": [
{"name": "Netflix", "amount": 15, "frequency": "monthly"}
],
"payDates": [{"date": "2025-11-01", "category": "Salary"}],
"sessionContext": {}
}
๐ Installation
1. Clone the repository
git clone https://github.com/NuffSaid-Bore/Custom-Domain-MCP-Server.git
cd Custom-Domain-MCP-Server
2. Install dependencies
npm install
3. Run the MCP server
nmp run server:inspect
4. Run the build watch
nmp run server:build:watch
The server will start and wait for communication via stdio.
๐ง Usage
This MCP server is designed to be embedded or connected to AI systems that understand the Model Context Protocol.
Example MCP Client Integration
If using an MCP-compatible client (like a LangChain or LLM runtime):
const { McpClient } = require("@modelcontextprotocol/sdk/client");
const client = new McpClient("stdio", { command: "node", args: ["index.js"] });
await client.connect();
const profile = await client.prompt("generate-dummy-financial-profile");
console.log(profile);
๐งฐ Tool Descriptions
| Tool | File | Purpose |
|---|---|---|
| Financial Profile Tool | tools/financial-profile-tool.js | Manage userโs financial profile data (income, expenses, debts, etc.). |
| Budgeting Tool | tools/budgeting-tool.js | Generate or evaluate personal budgets. |
| Random Financial Profile Generator | tools/random-financial-profile.js | Create realistic dummy financial profiles. |
| Expense Categorization Tool | tools/expense-categorization.js | Categorize raw transaction data into spending categories. |
| Debt Repayment Tool | tools/debt-repayment.js | Simulate repayment strategies and payoff timelines. |
| Net Worth Tool | tools/net-worth.js | Calculate net worth based on assets and liabilities. |
| Cash Flow Forecast Tool | tools/cash-flow-forecast.js | Predict cash flow patterns over time. |
๐งพ Example: Budgeting Tool
Example schema and usage (simplified):
{
"income": {"salary": 10000, "freelance": 500, "consulting": 500},
"recurringMerchants": [
{"category": "Rent", "amount": 1500, "month": "November" },
{"category": "Utilities", "amount": 200, "month": "November"},
{"category": "Groceries", "amount": 400, "month": "November"}
]
}
The tool might return:
{
"totalIncome": 11000,
"totalExpenses": 2100,
"savings": 2900,
"savingsRate": 0.58
}
๐งฉ Technologies Used
- Node.js (v18+)
- Model Context Protocol SDK
- Zod for schema validation
- ES Modules for modern import/export syntax
๐ ๏ธ Development
To extend this server:
-
Create a new tool in
/tools/your-new-tool.js. -
Define input/output schemas using
zod. -
Register the tool in
index.js:import { registerYourNewTool } from "./tools/your-new-tool"; registerYourNewTool(server);
๐ค Contributing
- Fork the repository.
- Create a new feature branch.
- Commit your changes.
- Open a Pull Request with a clear description of your improvement.
๐งญ Future Roadmap
- ๐ Add authentication for multi-user sessions.
- ๐ Integrate external financial APIs (Plaid, Yodlee, etc.).
- ๐ฌ Add NLP-based expense categorization.
- ๐งฎ Introduce investment and retirement planning modules.
