Skip to content

pdaxt/dataxlr8-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DataXLR8 Rust — Micro MCP Platform

Rewriting the entire DataXLR8 TypeScript monorepo into independent Rust MCP servers for near-zero latency, minimal memory footprint, and total independence.

What This Is

DataXLR8 is a business operations platform built on the Model Context Protocol (MCP). It provides 150+ AI-callable tools for CRM, sales, project management, meetings, analytics, and more.

This project rewrites everything from TypeScript/Node.js to Rust, resulting in:

Metric TypeScript (current) Rust (target)
Tool call latency ~10ms ~0.2ms
Memory per MCP ~110MB ~10MB
Binary size ~100MB (node_modules) ~6.5MB
Cold start ~500ms ~5ms
Dependencies npm ecosystem Single static binary

Current Status

Completed (Phase 0)

Component Repo Status
Shared core library dataxlr8-mcp-core Done — DB pool, config, errors, logging
Feature flags MCP dataxlr8-features-mcp Done — 8 tools, 6.5MB binary
Code review & fixes docs/ASSESSMENT.md Done — all critical bugs fixed

Remaining (21 MCPs + Gateway)

See docs/PLAN.md for the full migration plan and phase breakdown.

Architecture

┌─────────────────────────────┐
│   dataxlr8-gateway-mcp      │  ← Single HTTP endpoint
│   (spawns & manages all)    │     for Claude Desktop / web app
└──────────┬──────────────────┘
           │ stdio
    ┌──────┼──────┬──────┬──────┐
    │      │      │      │      │
 features deals  meet  portal  ...   ← 22 Rust MCP binaries
    │      │      │      │      │
    └──────┴──────┴──────┴──────┘
           │
    ┌──────▼──────┐
    │ PostgreSQL  │  ← Single database
    │ (shared)    │     Schema namespaces per MCP
    └─────────────┘

See docs/ARCHITECTURE.md for detailed design decisions.

Repos

# Repository Purpose Tools
0 dataxlr8-mcp-core Shared Rust library N/A
1 dataxlr8-features-mcp Feature flag management 8
2-22 To be built See PLAN.md 140+
23 dataxlr8-gateway-mcp Auto-connector gateway N/A

Quick Start

See docs/SETUP.md for full setup instructions.

# Prerequisites: Rust, PostgreSQL

# Clone
git clone https://github.com/pdaxt/dataxlr8-mcp-core.git
git clone https://github.com/pdaxt/dataxlr8-features-mcp.git

# Configure
cd dataxlr8-features-mcp
echo 'DATABASE_URL=postgres://dataxlr8:dataxlr8@localhost:5432/dataxlr8' > .env

# Build & run
cargo build --release
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | ./target/release/dataxlr8-features-mcp

Documentation

Document Description
BRD.md Business Requirements Document — single source of truth
STATUS.md Live status dashboard — auto-updated per verified MCP
ACCEPTANCE.md Acceptance criteria — test protocol for every MCP
PLAN.md Migration plan — 7 phases, 24 repos
ARCHITECTURE.md System design — gateway, schemas, stack choices
ASSESSMENT.md Code review findings — bugs found and fixed
SETUP.md Getting started — PostgreSQL, build, test

Per-MCP Specs (docs/mcps/)

MCP Phase Spec
mcp-core 0 core.md
features-mcp 0 features.md
contacts-mcp 1 contacts.md
commissions-mcp 1 commissions.md
email-mcp 1 email.md
moderation-mcp 1 moderation.md
supplier-mcp 2 supplier.md
quotation-mcp 2 quotation.md
rooming-mcp 2 rooming.md
portal-mcp 2 portal.md
pdf-mcp 2 pdf.md
employees-mcp 3 employees.md
deals-mcp 3 deals.md
training-mcp 3 training.md
booking-mcp 3 booking.md
meet-mcp 4 meet.md
recording-mcp 4 recording.md
transcript-mcp 4 transcript.md
analytics-mcp 4 analytics.md
calendar-mcp 4 calendar.md
notification-mcp 4 notification.md
copilot-mcp 5 copilot.md
ai-analysis-mcp 5 ai-analysis.md
gateway-mcp 5 gateway.md

Tech Stack

  • MCP SDK: rmcp v0.17 (official Rust MCP SDK)
  • Database: sqlx v0.8 + PostgreSQL
  • Async: tokio
  • Serialization: serde
  • Logging: tracing

The Features MCP (Proof of Concept)

The first completed MCP manages feature flags with 8 tools:

Tool Description
get_all_flags Get all feature flags with overrides
get_flag Get a specific flag by name
check_flag Check if enabled (respects user/role overrides)
check_flags_bulk Check multiple flags at once
create_flag Create a new feature flag
update_flag Update a flag's status/description
delete_flag Delete a flag and all overrides
set_override Set role/user override for a flag

Override priority: user override > role override > global setting

Unknown flags default to disabled (fail-closed security).


Built with Rust. Powered by rmcp.

About

DataXLR8 Rust Micro MCP Platform — rewriting TypeScript monorepo into independent Rust MCP servers

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors