🎯

fp-ts

🎯Skill

from manutej/crush-mcp-server

VibeIndex|
What it does

fp-ts skill from manutej/crush-mcp-server

fp-ts

Installation

npm runRun npm script
npm run build
πŸ“– Extracted from docs: manutej/crush-mcp-server
6
-
Last UpdatedNov 29, 2025

Skill Details

SKILL.md

Overview

# Crush MCP Server

Multi-model AI orchestration through Model Context Protocol

Transform Crush CLI into an intelligent MCP tool for Claude Code, enabling meta-orchestration across multiple AI models with automatic strategy selection.

[![Tests](https://img.shields.io/badge/tests-12%2F12%20passing-brightgreen)]() [![TypeScript](https://img.shields.io/badge/TypeScript-5.3-blue)]() [![MCP](https://img.shields.io/badge/MCP-0.5.0-purple)]()

---

What is This?

An MCP server that exposes Crush CLI's multi-model orchestration capabilities to Claude Code and other MCP clients. Choose from 4 execution strategies based on your speed, cost, and quality needs.

```

Claude Code β†’ Crush MCP Server β†’ Crush CLI β†’ Multiple AI Models

↑

(This Project)

```

---

Features

✨ 4 Execution Strategies

  • Fast: Single model, <10s, <$0.005 (grok-3-mini)
  • Balanced: Two models, <30s, ~$0.015 (grok β†’ haiku)
  • Quality: Multi-model with iteration, <60s, ~$0.06 (grok β†’ sonnet β†’ refinement)
  • Cost-Optimized: Budget-constrained, customizable max cost

🎯 MCP Tools

  • crush_execute - Execute prompts with intelligent model routing
  • crush_evaluate - Estimate cost/time/quality before execution

πŸ§ͺ Fully Tested

  • 12/12 unit tests passing
  • Comprehensive strategy coverage
  • TDD approach with Vitest

---

Quick Start

Install (2 minutes)

```bash

cd /Users/manu/Documents/LUXOR/crush-mcp-server

npm install

npm run build

npm link

```

Add to Claude Code

Already configured! βœ… Added to ~/.claude/settings.json

Next step: Restart Claude Code to load the server.

Test It

```

Use crush_execute with fast strategy to explain REST APIs in 2 sentences.

```

πŸ“– Full guide: See [QUICKSTART.md](QUICKSTART.md)

---

Architecture

Strategy Pattern

```typescript

interface Strategy {

execute(prompt: string, maxCost?: number): Promise;

}

class Orchestrator {

private strategies: Map;

async execute(request: ExecuteRequest): Promise {

const strategy = this.strategies.get(request.strategy || 'balanced');

return await strategy.execute(request.prompt, request.max_cost);

}

}

```

Execution Flow

```

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β”‚ 1. User Prompt β†’ Claude Code β”‚

β”‚ "Design a REST API using quality strategy" β”‚

β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

β”‚ MCP Protocol

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β”‚ 2. Crush MCP Server (This Project) β”‚

β”‚ - Parse strategy from request β”‚

β”‚ - Route to appropriate Strategy implementation β”‚

β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

β”‚

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β”‚ 3. Quality Strategy β”‚

β”‚ Step 1: grok-3-mini (outline) β†’ Cost: $0.002 β”‚

β”‚ Step 2: claude-sonnet-4-5 (detail) β†’ Cost: $0.045 β”‚

β”‚ Step 3: iterative refinement β†’ Cost: $0.016 β”‚

β”‚ β”‚

β”‚ Quality Score: 0.87 (target: 0.75) β”‚

β”‚ Total Cost: $0.063 β”‚

β”‚ Execution Time: 42s β”‚

β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

β”‚ Formatted Response

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β”‚ 4. Return to User via Claude Code β”‚

β”‚ { β”‚

β”‚ result: "...", β”‚

β”‚ metadata: { β”‚

β”‚ models_used: ["grok-3-mini", "claude-sonnet-4-5"], β”‚

β”‚ total_cost: 0.063,