SkillMesh MCP Server

1

Add it to Claude Code

Run this in a terminal.

Run in terminal
claude mcp add skill-mesh -- uvx --from "skillmesh[mcp]" skillmesh-mcp
README.md

Stop stuffing hundreds of tools into your LLM prompt. Route to the right ones.

SkillMesh

Stop stuffing hundreds of tools into your LLM prompt. Route to the right ones.

SkillMesh is a retrieval router for agent tool catalogs. Instead of loading every skill/tool into every prompt, it selects the best few cards for the query and injects only those.

Why Teams Adopt SkillMesh

  • Keeps prompts small as your catalog grows (top-K instead of full dump)
  • Improves tool selection quality on multi-domain tasks
  • Cuts token cost per call by avoiding irrelevant tool context
  • Works with Claude (MCP), Codex (skill bundle), and local CLI workflows
  • Standardized OpenAI-style function schemas for tool expansion

The Problem

LLM agents break when you load every tool into the prompt. Token counts explode, accuracy drops, and cost scales linearly with your catalog size. Teams with 50+ skills end up with bloated system prompts that confuse the model and burn budget.

SkillMesh solves this with retrieval-based routing: given a user query, it selects only the top-K most relevant expert cards and injects them into the prompt — keeping context small, accurate, and cheap.

High-Value Use Cases

  • Internal AI assistants with large tool/skill catalogs (50+ cards)
  • Multi-step workflows crossing domains (data -> ML -> infra -> reporting)
  • Teams using MCP where tool overload hurts selection quality
  • Role-based execution flows (Data-Analyst, Financial-Analyst, AWS-Engineer)

SkillMesh vs Static Skill Docs

Static SKILL.md only SkillMesh routing
Prompt strategy Load broad instructions every turn Inject only relevant top-K cards
Scale behavior Gets noisy as catalog grows Remains focused with retrieval
Multi-domain tasks Manual tool prompting Query-driven cross-domain routing
Expansion Add docs and hope model picks right one Add cards + retrieval handles selection

Before vs After

Without SkillMesh With SkillMesh
Prompt tokens ~50,000+ (all tools loaded) ~3,000 (top-K only)
Tool selection Model guesses from a huge list BM25+Dense retrieval picks the best match
Cost per call High (full catalog every time) Low (only relevant cards)
Accuracy Degrades as catalog grows Stays consistent
Multi-domain tasks Confusing for the model Routed precisely (clean + train + deploy)

How It Works

User Query
    │
    ▼
┌─────────────────────┐
│  BM25 + Dense Index  │  ← Scores every card in your registry
└─────────┬───────────┘
          │
          ▼
┌─────────────────────┐
│   RRF Fusion Rank    │  ← Merges sparse + dense rankings
└─────────┬───────────┘
          │
          ▼
┌─────────────────────┐
│   Top-K Card Select  │  ← Returns the K best expert cards
└─────────┬───────────┘
          │
          ▼
┌─────────────────────┐
│  Agent acts as expert │  ← Full instructions injected into prompt
└─────────────────────┘

Each card contains: execution behavior, decision trees, anti-patterns, output contracts, and composability hints — everything the agent needs to act as a domain expert.

One-line MCP install (Claude Desktop / Claude Code)

Add this to your Claude Desktop config (claude_desktop_config.json) or Claude Code MCP settings:

{
  "mcpServers": {
    "skillmesh": {
      "command": "uvx",
      "args": ["--from", "skillmesh[mcp]", "skillmesh-mcp"]
    }
  }
}

No env vars. No file paths. No cloning. The bundled registry is included in the package.

Requires uv to be installed.

60-Second Demo

git clone https://github.com/varunreddy/SkillMesh.git
cd SkillMesh
pip install -e .
skillmesh emit \
  --provider claude \
  --registry examples/registry/tools.json \
  --query "clean messy sales data, train a baseline model, and generate charts" \
  --top-k 5

Output (truncated):

<context>
  <card id="data.data-cleaning" title="Data Cleaning and Validation Expert">
    # Data Cleaning and Validation Expert
    Specialist in detecting and correcting data quality issues...
  </card>
  <card id="ml.sklearn-modeling" title="Scikit-learn Modeling and Evaluation">
    ...
  </card>
  <card id="viz.matplotlib-seaborn" title="Visualization with Matplotlib and Seaborn">
    ...
  </card>
</context>

Only the relevant experts are injected — the rest of the 100+ card catalog stays out of the prompt.

Integrations

Platform Method Status Docs
Claude Code MCP server Supported Setup guide
Claude Desktop MCP server Supported [Setup guide](docs/integr

Configuration

claude_desktop_config.json
{"mcpServers": {"skillmesh": {"command": "uvx", "args": ["--from", "skillmesh[mcp]", "skillmesh-mcp"]}}}

Try it

Clean messy sales data, train a baseline model, and generate charts.
Help me perform a multi-step workflow involving data analysis and infrastructure deployment.
Find the most relevant expert cards for a financial analysis task from my catalog.

Frequently Asked Questions

What are the key features of SkillMesh?

Retrieval-based routing to select top-K relevant expert cards. Reduces prompt size by injecting only necessary tool context. Improves tool selection quality for multi-domain tasks. Supports Claude MCP, Codex skills, and OpenAI-style function schemas. Uses BM25 and dense retrieval for accurate tool matching.

What can I use SkillMesh for?

Managing internal AI assistants with large tool catalogs exceeding 50 cards. Executing multi-step workflows that cross domains like data, ML, and infrastructure. Optimizing token costs for teams using MCP where tool overload hurts performance. Implementing role-based execution flows for specialized agents.

How do I install SkillMesh?

Install SkillMesh by running: uvx --from skillmesh[mcp] skillmesh-mcp

What MCP clients work with SkillMesh?

SkillMesh works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep SkillMesh docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare