Capytail

Capytail

Capytail is a local MCP capability router that selects relevant skills before loading context, enabling efficient routing without executing or loading all skills upfront.

Category
Visit Server

README

Capytail

A local MCP capability router that selects relevant skills before loading context.

Capytail is a selector, not an execution gateway. It helps agents avoid loading every skill, agent, or MCP recommendation into context up front.

Status

Experimental 0.1.x.

Use it when you want:

  • compact capability routing;
  • read-only MCP runtime tools;
  • local CLI ingestion for trusted skills;
  • deterministic selection before optional full skill loading.

Do not use it as:

  • an MCP proxy;
  • an agent orchestrator;
  • persistent memory;
  • a RAG/vector database;
  • a remote skill installer.

Install

npm install -g capytail

From source:

npm install
npm run build
node dist/src/cli.js --help

MCP runtime

Start the read-only MCP server:

capytail mcp

Public MCP tools:

Tool Purpose
capytail_route Select relevant capabilities for a request.
capytail_list List compact discovered capabilities.
capytail_get_capability Fetch full content for one selected local skill/agent id.

Normal agent flow:

capytail_route({ request })
→ capytail_get_capability({ id })

route and list return compact metadata only. They do not return full skill bodies.

CLI admin

Add a local skill after a static SkillSpector scan:

capytail add-skill ./my-skill
capytail add-skill ./my-skill --project-root . --name my-skill
capytail add-skill ./my-skill --allow-medium

The CLI uses a fixed scanner path:

$HOME/.pi/agent/tools/skillspector/.venv/bin/skillspector

--skillspector-path is intentionally rejected.

When a skill is accepted, Capytail copies it into:

.capytail/skills/<name>/

Then it enriches the copied SKILL.md with missing routing metadata:

aliases: <name>
triggers: ...
use_when: ...

It also associates the skill with the current project using the existing capability graph:

{
  "graph": {
    "projectId": "project:my-project",
    "edges": [
      {
        "from": "project:my-project",
        "relation": "project_has_skill",
        "to": "skill:project:my-skill"
      }
    ]
  }
}

The original source skill is not modified.

Configuration

Capytail reads capytail.config.json or .capytail/config.json from the project root.

See examples/capytail.config.json.

Benchmarks

In a local corpus of 43 SKILL.md files:

Flow Approx tokens Time
Load all skills ~121k n/a
route only ~1.0k–1.3k ~10–15ms
route + get ~7.4k–40.8k ~63–80ms

See docs/benchmarks.md.

Security model

See SECURITY.md and docs/security-model.md.

Short version:

  • MCP surface is read-only.
  • Skill ingestion is CLI-only.
  • Local paths only.
  • Static SkillSpector scan only, --no-llm.
  • No remote URL ingestion.
  • No dependency installation.
  • No skill execution.

Development

npm test
npm run typecheck
npm run build

License

MIT

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured