Version 3.0.0 - Modular, consolidated Model Context Protocol servers for the ChittyOS ecosystem.
Modular Architecture - Completely refactored with:
- ✅ Core module with reusable MCP server base class
- ✅ Dynamic tool loading - add tools without touching core code
- ✅ Integration layer - centralized ChittyOS service clients
- ✅ Chain execution - multi-tool workflow orchestration
- ✅ 15+ tools across 4 domains (evidence, legal, infrastructure, sync)
New Structure:
src/
├── core/ # Shared utilities (BaseMCPServer, ToolLoader, ChainExecutor)
├── integration/ # Service clients (ChittyID, Cloudflare, Notion)
├── tools/ # Modular tools (evidence, legal, infrastructure, sync)
└── servers/ # Server implementations (unified, evidence)
| Component | Status | Description |
|---|---|---|
| Core Module | ✅ Complete | BaseMCPServer, ToolLoader, ChainExecutor, Logger |
| Integration Layer | ✅ Complete | ChittyID, Cloudflare, Notion clients |
| Evidence Tools | ✅ Complete | 4 tools - fully implemented |
| Legal Tools | ✅ Complete | 4 tools - ChittyID integration working |
| Infrastructure Tools | ✅ Complete | 4 tools - Cloudflare API integration |
| Sync Tools | ✅ Complete | 3 tools - device sync framework |
| Unified Server | ✅ Complete | Dynamic loading, chain execution |
| Evidence Server | ✅ Complete | Standalone server using modular tools |
# Install dependencies
npm install# Unified server (all 15+ tools + chain execution)
npm start
# Evidence server only (4 tools)
npm start:evidence
# Development mode with auto-reload
npm run dev
npm run dev:evidence# ChittyOS Core
CHITTY_ID_TOKEN=<service token from ChittyID>
CHITTYID_SERVICE=https://id.chitty.cc
CHITTY_ENV=production
# Cloudflare (optional)
CLOUDFLARE_API_TOKEN=<api token>
CLOUDFLARE_ACCOUNT_ID=bbf9fcd845e78035b7a135c481e88541
# Notion (optional)
NOTION_TOKEN=<integration token>
NOTION_DATABASE_ID=<database id>
# Logging
LOG_LEVEL=INFO # DEBUG|INFO|WARN|ERRORPurpose: Legal evidence processing for case management Case: Arias v. Bianchi (2024D007847) Status: Fully working
Tools (4):
intake_evidence- Process and categorize evidence fileslist_evidence- Query evidence by categoryget_evidence_stats- Get case statisticsstart_intake_monitoring- Watch directory for new files
Features:
- SHA256 duplicate detection
- 14 evidence categories
- Chain of custody tracking
- Real-time file monitoring with chokidar
- Google Drive integration
- PostgreSQL registry (optional)
Evidence path: /Users/nb/Evidence-Intake/2024D007847-Arias-v-Bianchi/
Example:
// Intake evidence
await intake_evidence({
files: ["/path/to/document.pdf"],
category: "07_COURT_FILINGS",
priority: "high"
});Purpose: Multi-domain MCP server with ChittyOS integration Status: Schema complete, implementations are mostly placeholders Version: 3.0.0
Tools (19) - organized by domain:
analyze_performance- Returns mock performance datarisk_assessment- Returns mock risk datamake_executive_decision- Returns template decisionsstrategic_planning- Returns placeholder plansdelegate_task- Returns mock task delegations
generate_chitty_id- ✅ Works (calls id.chitty.cc), has fallbackcreate_legal_case-⚠️ Placeholderanalyze_document-⚠️ Placeholderprocess_payment-⚠️ Placeholdercompliance_check-⚠️ Placeholdersearch_cases-⚠️ Placeholderexecute_workflow-⚠️ Placeholder
deploy_worker- Returns mock deployment resultsmanage_kv_namespace- Returns mock KV operationsmanage_r2_bucket- Returns mock R2 operationsexecute_d1_query- Returns mock query results
register_mcp_server- Returns mock registrationsync_mcp_state- Returns mock sync statusget_synced_servers- Returns empty list
Chain Workflows: 5 chains defined in config/chains.json but not fully orchestrated
Purpose: Remote tool execution and service discovery Language: TypeScript Status: Fully working
Tools (3):
execute_remote_tool- Execute tools on remote MCP serversdiscover_services- List available serviceshealth_check- Check service health
Features:
- Retry logic with exponential backoff
- Service registry for ChittyOS endpoints
- Timeout handling
- Health monitoring
Services registered:
chittyid→ https://id.chitty.ccchittyregistry→ https://registry.chitty.ccchittygateway→ https://gateway.chitty.cc
Example:
await execute_remote_tool({
service: "chittyid",
tool: "mint",
arguments: { entity_type: "PEO" },
config: { timeout: 10000, retries: 3 }
});Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"chittymcp-unified": {
"command": "node",
"args": ["/absolute/path/to/chittymcp/src/servers/unified-server.js"],
"env": {
"CHITTY_ID_TOKEN": "${CHITTY_ID_TOKEN}",
"CLOUDFLARE_API_TOKEN": "${CLOUDFLARE_API_TOKEN}",
"LOG_LEVEL": "INFO"
}
},
"evidence-intake": {
"command": "node",
"args": ["/absolute/path/to/chittymcp/src/servers/evidence-server.js"],
"env": {}
}
}
}Replace /absolute/path/to/ with your actual path.
Legacy servers (still functional):
mcp-evidence-server/index.js→ Usesrc/servers/evidence-server.jsinsteadmcp-unified-consolidated/unified-server.js→ Usesrc/servers/unified-server.jsinstead
-
OpenAI Package -
package.jsonreferences wrong package name- Fix:
cd mcp-unified-consolidated && npm install openai@latest
- Fix:
-
Unified Server Tools - Most tools return placeholder/mock data
- Need real implementations for executive, infrastructure, and sync domains
-
Neon Auth - OAuth flow may timeout
- Run:
neon auth loginbefore using
- Run:
-
Hardcoded Paths - Evidence server uses
/Users/nb/Evidence-Intake- Set
EVIDENCE_BASE_PATHin.envto override
- Set
-
Missing .env - No environment file by default
- Copy
.env.exampleand fill in credentials
- Copy
See TROUBLESHOOTING.md for:
- Diagnostic script usage
- Common error fixes
- LaunchD service issues (macOS)
- Network timeout solutions
- Package dependency fixes
Quick diagnostics:
# Run health check
bash diagnostics.sh
# Auto-fix common issues
bash mcp-repair.sh# Evidence server (watch mode)
cd mcp-evidence-server
npm run dev
# Unified server (watch mode)
cd mcp-unified-consolidated
npm run dev
# MCP Exec (TypeScript compilation)
cd services/mcp-exec
npm run build
npm run devUnified server can be deployed as a Cloudflare Worker:
# Deploy to production
wrangler deploy
# Monitor logs
wrangler tail chittymcp
# Set secrets
wrangler secret put CHITTY_ID_TOKENSee wrangler.toml for configuration.
The Evidence Intake server supports 14 categories:
| Code | Category | Description |
|---|---|---|
| 00 | KEY_EXHIBITS | High-priority evidence |
| 01 | TRO_PROCEEDINGS | TRO proceedings |
| 02 | LLC_FORMATION | Corporate documents |
| 03 | MEMBERSHIP_REMOVAL | Membership proceedings |
| 04 | PREMARITAL_FUNDING | Pre-marital property |
| 05 | PROPERTY_TRANSACTIONS | Real estate |
| 06 | FINANCIAL_STATEMENTS | Financial docs |
| 07 | COURT_FILINGS | Court pleadings |
| 08 | ATTORNEY_CORRESPONDENCE | Attorney letters |
| 09 | PERJURY_EVIDENCE | Perjury evidence |
| 10 | SANCTIONS_RULE137 | Sanctions docs |
| 11 | COLOMBIAN_PROPERTY | Colombian property |
| 12 | LEASE_AGREEMENTS | Leases |
| 98 | DUPLICATES | Duplicate files |
| 99 | UNSORTED | Uncategorized |
Files are automatically categorized based on filename patterns.
CRITICAL: All ChittyIDs must be generated via id.chitty.cc API.
- Format:
CHITTY-{ENTITY}-{SEQUENCE}-{CHECKSUM} - Entities: PEO, PLACE, PROP, EVNT, AUTH, INFO, FACT, CONTEXT, ACTOR
- Never generate IDs locally
- CLAUDE.md - Detailed project overview for Claude Code
- TROUBLESHOOTING.md - Common issues and fixes
- config/chains.json - Chain workflow definitions
chittymcp/
├── src/
│ ├── core/ # Shared core utilities
│ │ ├── mcp-server.js # BaseMCPServer class
│ │ ├── tool-loader.js # Dynamic tool loading
│ │ ├── chain-executor.js # Multi-tool workflows
│ │ └── logger.js # Centralized logging
│ ├── integration/ # ChittyOS service clients
│ │ ├── chittyid-client.js # ChittyID service
│ │ ├── cloudflare-client.js # Cloudflare API
│ │ └── notion-client.js # Notion integration
│ ├── tools/ # Tool modules by domain
│ │ ├── evidence/ # 4 evidence tools
│ │ ├── legal/ # 4 legal tools
│ │ ├── infrastructure/ # 4 infrastructure tools
│ │ └── sync/ # 3 sync tools
│ └── servers/ # Server implementations
│ ├── unified-server.js # Full consolidated server
│ └── evidence-server.js # Standalone evidence server
├── config/
│ ├── chains.json # Workflow chain definitions
│ └── server-config.json # Server configuration
└── Legacy (backwards compatible):
├── mcp-evidence-server/
└── mcp-unified-consolidated/
- Code Reuse: Shared utilities across all servers
- Easy Extension: Add new tools without touching core
- Clean Separation: Tools, integrations, and core separated
- Dynamic Loading: Tools loaded at runtime
- Chain Execution: Complex workflows from simple tools
- Create tool module in
src/tools/<category>/:
// src/tools/mycategory/index.js
export const tools = [{
name: "my_tool",
description: "What my tool does",
inputSchema: { /* ... */ }
}];
export { handlers } from "./handlers.js";
// src/tools/mycategory/handlers.js
export const handlers = {
async my_tool(args) {
return {
content: [{
type: "text",
text: "Result"
}]
};
}
};- Restart server - tools are loaded automatically!
Execute multi-tool workflows defined in config/chains.json:
// Execute a chain
await execute_chain({
chain_name: "legal-workflow",
parameters: {
case_type: "civil",
documents: ["/path/to/filing.pdf"],
client_id: "CHITTY-PEO-..."
}
});Available chains:
executive-decision- Strategic decision-making workflowlegal-workflow- Complete legal case managementinfrastructure-deploy- Cloudflare deploymentcross-sync- Device synchronizationfull-orchestration- All tools combined
v3.0.0 - Completed ✅:
- Modular architecture with core/tools/integration layers
- Dynamic tool loading system
- Chain execution framework
- 15+ tools across 4 domains
- ChittyID integration
- Cloudflare API integration
- Unified and standalone servers
Next (v3.1.0):
- Executive tool AI integration (Anthropic/OpenAI)
- ChittyLedger PostgreSQL integration
- Hot reload for tool modules
- Web API gateway
Future (v4.0.0):
- Multi-platform sync (ChatGPT, CustomGPT)
- Evidence monitoring automation
- Advanced chain orchestration (rollback, parallel execution)
MIT License - see LICENSE
- Documentation: CLAUDE.md and TROUBLESHOOTING.md
- Issues: https://github.com/chittyos/chittymcp/issues
Last Updated: 2025-10-30 Version: 3.0.0 ChittyOS Framework: v1.0.1 MCP SDK: 0.5.0