MCP Leave Management
Simulates a leave management workflow for employees and managers, including leave application, balance checks, and approval processes.
README
MCP Reverse-Proxy Orchestration POC
Architecture Overview
This demo models a reverse-proxy MCP orchestration pattern.
CoCounselis the intended principal MCP client in the target enterprise model.- For this demo,
Claude Desktopplays that role and connects directly to two domain MCP servers. - Each domain MCP server proxies only its own leaf MCP servers.
- Each domain MCP server can also coordinate cross-leaf MCP work and return one business-level response.
- Each domain MCP acts as an MCP server to the client and an MCP client to downstream integrations.
- Leaf integrations can be MCP servers, HTTP services, agents, or mixed adapters.
flowchart LR
C[Claude Desktop<br/>Demo stand-in for CoCounsel]
C --> HR[HR Domain MCP]
C --> CA[Cloud Audit Domain MCP]
HR --> LM[Leave Management MCP*]
HR --> PY[Payroll MCP*]
CA --> EM[Engagement Manager MCP*]
CA --> GA[Guided Assurance MCP*]
LM --> S1[Leave / HR data]
PY --> S2[Payroll data]
EM --> S3[Engagement data]
GA --> S4[Assurance data]
* In a real implementation, these downstream integrations could be MCP servers, HTTP services, agents, or a mixed set of MCP, HTTP, and SDK calls.
Job of domain MCP (server-facing northbound and client-facing southbound)
- Acting Server to Principal CoCounsel Client
registerTool("list_all_engagements", async (args) => {
return leafClients.engagementManager.callTool("list_all_engagements", args);
});
- Acting Client to the downstream leaf transport
private readonly client = new Client({
name: "cloud-audit-suite-orchestrator-mcp",
version: "1.0.0",
}, {
capabilities: {},
});
this.client.connect(transport)
Why this architecture:
- smaller leaf MCPs are easier to own, change, and validate
- domain MCPs give one clean entry point per business domain
- the client does not need to understand every leaf server directly
- the domain layer can combine relevant leaf responses into one domain-level answer
- transport boundaries stay explicit, which is closer to real enterprise integration
Pros of the reverse-proxy MCP orchestration model:
- better separation of concerns between client, domain, and system-level tools
- easier policy and access control at the domain boundary
- easier onboarding because users connect to a small number of domain servers
- easier leaf replacement or expansion without changing the client model
- more realistic handling of partial data overlap across systems
Developers Note
Current packages:
apps/hr-domain-orchestrator-mcpfor the HR domain connectorapps/cloud-audit-suite-orchestrator-mcpfor the Cloud Audit domain connectorleaf-servers/leave-management-mcpandleaf-servers/payroll-mcpunder HRleaf-servers/engagement-manager-mcpandleaf-servers/guided-assurance-mcpunder Cloud Audit
Root scripts:
npm run buildbuilds both domain stacksnpm run checktypechecks both domain stacks
Claude Desktop demo wiring:
{
"mcpServers": {
"hr-domain-orchestrator-mcp": {
"command": "node",
"args": [
"C:/path/to/mcp-orch-reverse-proxy-poc/apps/hr-domain-orchestrator-mcp/dist/index.js"
]
},
"cloud-audit-suite-orchestrator-mcp": {
"command": "node",
"args": [
"C:/path/to/mcp-orch-reverse-proxy-poc/apps/cloud-audit-suite-orchestrator-mcp/dist/index.js"
]
}
}
}
Developer workflow:
- Run
npm installat the repo root. - Run
npm run buildat the repo root. - Point Claude Desktop to the two domain MCP servers.
- Rebuild after code changes before reconnecting the client.
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.