Skip to main content
Glama

Fabric MCP Server

Model Context Protocol (MCP) server for Fabric - Daniel Miessler's AI-powered content processing framework.

This MCP server allows Claude (via Claude Desktop or Warp CLI) to use Fabric's extensive collection of AI patterns for content analysis, summarization, learning, coding, security analysis, and more.

Quick Start

  1. Install Fabric (if not already installed):

    See the official Fabric installation guide for detailed instructions.

  2. Install yt-dlp (optional, for YouTube transcripts):

    # macOS
    brew install yt-dlp
    
    # Linux/Windows
    pip install yt-dlp
  3. Download and Install:

    • Download fabric-mcp.mcpb from Releases

    • Double-click the file

    • Click "Install" in Claude Desktop

    • Restart Claude Desktop

  4. Try it: Ask Claude: "List all fabric patterns"

Related MCP server: Fabric MCP Server

Features

  • šŸš€ Direct CLI Integration: Uses Fabric CLI directly (no REST API server needed)

  • šŸ”§ 19 Pre-configured Tools: Direct access to commonly-used Fabric patterns plus combined analysis tools

  • šŸŽÆ Generic Pattern Runner: Run any Fabric pattern with run_fabric_pattern

  • šŸ“ŗ YouTube Support: Fetch video transcripts directly (requires yt-dlp)

  • šŸ” Pattern Discovery: List all available patterns dynamically

  • šŸ“ File & URL Analysis: Process files and web content with Fabric patterns

  • šŸ„ Health Check: Verify dependencies and configuration

Prerequisites

1. Install Fabric

If you don't have Fabric installed, follow the official Fabric installation guide.

2. Install yt-dlp (Optional)

Required only if you want to fetch YouTube transcripts:

# macOS
brew install yt-dlp

# Linux
pip install yt-dlp
# Or: sudo apt install yt-dlp (on Ubuntu/Debian)

# Windows
pip install yt-dlp

3. Verify Installation

# Test Fabric
fabric --version
fabric --listpatterns

# Test yt-dlp (optional)
yt-dlp --version

Installation

The easiest way to install:

  1. Download the latest fabric-mcp.mcpb from Releases

  2. Double-click the downloaded file

  3. Claude Desktop will open and prompt you to install

  4. Click Install

  5. Restart Claude Desktop

  6. Done!

The .mcpb file is a self-contained bundle that includes everything needed.

Option 2: Build from Source

If you want to build from source:

git clone https://github.com/mpzarde/fabric-mcp.git
cd fabric-mcp
npm install
npm run build

Then either:

  • Build the .mcpb bundle: ./build-mcpb.sh (creates fabric-mcp.mcpb you can install)

  • Configure manually: See Configuration section below for manual setup

Configuration

For Claude Desktop

Note: If you installed using the .mcpb bundle (Option 1), Claude Desktop configures this automatically. This section is only needed for manual builds.

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "fabric": {
      "command": "node",
      "args": ["/absolute/path/to/fabric-mcp/dist/index.js"]
    }
  }
}

Replace /absolute/path/to/fabric-mcp/ with your actual project path.

Optional environment variables (if needed):

"env": {
  "FABRIC_PATH": "/custom/path/to/fabric",
  "YTDLP_PATH": "/custom/path/to/yt-dlp"
}

For Warp CLI

Note: Manual configuration is required for Warp. Build from source or extract the .mcpb bundle first.

Add to your Warp MCP configuration file:

macOS/Linux: ~/.warp/mcp_config.json

{
  "mcpServers": {
    "fabric": {
      "command": "node",
      "args": ["/absolute/path/to/fabric-mcp/dist/index.js"]
    }
  }
}

Replace /absolute/path/to/fabric-mcp/ with your actual project path.

Optional environment variables (if needed):

"env": {
  "FABRIC_PATH": "/custom/path/to/fabric",
  "YTDLP_PATH": "/custom/path/to/yt-dlp"
}

Restart Claude/Warp

After configuration:

  • Claude Desktop: Restart the application

  • Warp: Restart the terminal or run warp mcp reload

Available Tools

Core Tools

  1. health_check - Check if Fabric, yt-dlp, and other dependencies are installed and configured

  2. list_fabric_patterns - List all available Fabric patterns

  3. run_fabric_pattern - Run any Fabric pattern with custom input

  4. get_youtube_transcript - Fetch transcript from YouTube video

Combined Analysis Tools

These tools streamline common workflows by fetching content and applying patterns in one step. Benefits:

  • āœ… No truncation: Complete content is passed directly to Fabric

  • āœ… More efficient: Single tool call instead of multiple

  • āœ… Better results: Fabric processes the full content without context window limits

  1. analyze_youtube_video - Fetch YouTube transcript and apply a pattern in one step

  2. analyze_file - Read a file and apply a pattern in one step

  3. analyze_url - Fetch URL content and apply a pattern in one step

Pre-configured Pattern Tools

These patterns are exposed as dedicated tools with the fabric_ prefix:

Content Analysis

  • fabric_extract_wisdom - Extract key insights and quotes from content

  • fabric_summarize - Create concise summaries

  • fabric_analyze_claims - Analyze and fact-check claims

  • fabric_analyze_paper - Analyze academic papers

Learning

  • fabric_create_quiz - Generate quiz questions

  • fabric_to_flashcards - Convert content to flashcards

Development

  • fabric_summarize_git_diff - Summarize git diffs for reviews

  • fabric_create_coding_project - Generate project structure from ideas

  • fabric_explain_code - Explain code in simple terms

Security & Operations

  • fabric_analyze_logs - Analyze log files

  • fabric_analyze_incident - Analyze security incidents

Writing

  • fabric_improve_writing - Improve writing quality

Usage Examples

With Claude Desktop

Extract wisdom from a YouTube video:

User: Can you extract the key insights from this video? 
      https://www.youtube.com/watch?v=dQw4w9WgXcQ

Claude: [Uses get_youtube_transcript + fabric_extract_wisdom]

Summarize an article:

User: Summarize this article: [paste article text]

Claude: [Uses fabric_summarize]

Create flashcards from lecture notes:

User: Convert these lecture notes into flashcards: [paste notes]

Claude: [Uses fabric_to_flashcards]

Analyze a git diff:

User: Review this git diff and summarize the changes:
      [paste git diff output]

Claude: [Uses fabric_summarize_git_diff]

Combined Analysis Tools

For efficiency, use the combined tools that fetch and analyze in one step:

User: Extract wisdom from this YouTube video:
      https://www.youtube.com/watch?v=example

Claude: [Uses analyze_youtube_video with pattern='extract_wisdom']
User: Summarize this article:
      https://example.com/article

Claude: [Uses analyze_url with pattern='summarize']
User: Explain the code in /path/to/script.py

Claude: [Uses analyze_file with pattern='explain_code']

Chaining Patterns

Claude can chain multiple patterns together:

User: Get the transcript from this video, extract the wisdom, 
      then create flashcards from it.
      https://www.youtube.com/watch?v=example

Claude: 
[1. Uses get_youtube_transcript]
[2. Uses fabric_extract_wisdom on transcript]
[3. Uses fabric_to_flashcards on extracted wisdom]

Use Cases

Based on Daniel Miessler's Fabric patterns:

Content Processing

  • YouTube video → extract wisdom / summarize

  • Article / blog post → summarize, analyze claims

  • Podcast transcript → extract wisdom, pull quotes

Writing & Development

  • Idea → essay (via create_coding_project or similar patterns)

  • Code diff → PR description (via summarize_git_diff)

  • Meeting notes → user stories (via run_fabric_pattern with agility_story)

Learning

  • Any content → flashcards (via to_flashcards)

  • Dense docs → glossary with analogies

  • Video/article → quiz (via create_quiz)

Security Analysis

  • Malware samples → analysis (via analyze_malware)

  • Log files → threat interpretation (via analyze_logs)

  • Security scans → rules (via run_fabric_pattern)

Troubleshooting

Check server health

Ask Claude: "Run a health check" - this will verify:

  • Fabric installation and version

  • Fabric configuration (API keys, patterns)

  • yt-dlp installation (for YouTube support)

  • Provide installation instructions if anything is missing

Common Issues

Fabric not found

Error: Failed to spawn fabric: ENOENT

Solutions:

  1. Install Fabric following the official installation guide

  2. Verify installation: which fabric and fabric --version

  3. If using a custom Fabric location, set FABRIC_PATH in your MCP config

Pattern not found

Error: Pattern not found: pattern_name

Solutions:

  1. Ask Claude to list all patterns: "List all fabric patterns"

  2. Update patterns: fabric --updatepatterns

  3. Check spelling - use underscores (e.g., extract_wisdom not extractWisdom)

YouTube transcripts not working

Error: Failed to fetch YouTube transcript

Solutions:

  1. Install yt-dlp: brew install yt-dlp (macOS) or pip install yt-dlp

  2. Verify: yt-dlp --version

  3. If using custom location, set YTDLP_PATH in your MCP config

MCP server not appearing in Claude

Solutions:

  1. Verify config file location:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%/Claude/claude_desktop_config.json

  2. Check JSON syntax with a validator

  3. Ensure path to dist/index.js is absolute

  4. Restart Claude Desktop completely

  5. Check logs: ~/Library/Logs/Claude/mcp-server-fabric.log

Pattern execution timeout

Error: Fabric command timed out

Solutions:

  • Large patterns may take time (default: 5 minutes)

  • Check your Fabric API keys and quota

  • Try with a smaller input first

Development

Build

# Build TypeScript only
npm run build

# Build complete .mcpb bundle
./build-mcpb.sh

Watch mode

npm run watch

Testing locally

# Build the project
npm run build

# Test the MCP server
node dist/index.js
# Server will run on stdio and wait for MCP protocol messages

# Or use the health check to verify dependencies
echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"health_check","arguments":{}}}' | node dist/index.js

Architecture

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  Claude/Warp    │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
         │ MCP Protocol (stdio)
         ā–¼
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  MCP Server     │ ← This project
│  (Node.js)      │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
         │ Direct CLI calls
         ā–¼
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  Fabric CLI     │
│  (fabric cmd)   │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
         │
         ā–¼
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  AI Patterns    │
│  OpenAI/etc.    │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜

The MCP server:

  1. Exposes Fabric patterns as MCP tools

  2. Calls Fabric CLI directly with pattern names and input

  3. Returns results back to Claude/Warp

  4. No REST API server needed - uses CLI interface

Resources

License

MIT

Contributing

Contributions welcome! Please open an issue or PR.

Credits

Available Tools

19 tools
analyze_fileA

Read a file and analyze it with a Fabric pattern in one step. This ensures the complete file content is processed without truncation. Useful for analyzing documents, code files, logs, etc.

Inputs: pattern (required), file_path (required).

analyze_urlA

Fetch content from a URL and analyze it with a Fabric pattern in one step. Works with articles, documentation, blog posts, etc. This ensures complete content is processed without truncation.

Inputs: url (required), pattern (required).

analyze_youtube_videoA

Fetch a YouTube transcript and analyze it with a Fabric pattern in one step. This ensures the complete transcript is processed without truncation. Use this instead of calling get_youtube_transcript and then a pattern separately.

Inputs: url (required), pattern (required).

fabric_analyze_claimsB

Analyze and fact-check claims made in content

Inputs: input (required).

fabric_analyze_incidentC

Analyze security incidents or system failures

Inputs: input (required).

fabric_analyze_logsC

Analyze log files for issues and patterns

Inputs: input (required).

fabric_analyze_paperC

Analyze academic papers or technical documents

Inputs: input (required).

fabric_create_coding_projectB

Generate project structure and planning from an idea

Inputs: input (required).

fabric_create_quizB

Generate quiz questions from content for learning

Inputs: input (required).

fabric_explain_codeC

Explain code in simple terms

Inputs: input (required).

fabric_extract_wisdomA

Extract key insights, quotes, and wisdom from any content (articles, videos, podcasts)

Inputs: input (required).

fabric_improve_writingC

Improve writing quality and clarity

Inputs: input (required).

fabric_summarizeB

Create a concise summary of content

Inputs: input (required).

fabric_summarize_git_diffA

Summarize git diff output for code reviews

Inputs: input (required).

fabric_to_flashcardsC

Convert content into flashcards for studying

Inputs: input (required).

get_youtube_transcriptB

Fetch transcript from a YouTube video URL

Inputs: url (required).

health_checkA

Check if Fabric, yt-dlp, and other dependencies are installed and configured correctly. Provides installation instructions if needed.

Inputs: no named parameters.

list_fabric_patternsA

List all available Fabric patterns

Inputs: no named parameters.

run_fabric_patternA

Run any Fabric pattern with custom input. Use this for patterns not covered by specific tools.

Inputs: input (required), pattern (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.1/5.0

    Scored across 19 tools

    Disambiguation4/5

    Each tool has a clear primary purpose, but run_fabric_pattern overlaps with the specific fabric_* tools, and analyze_youtube_video duplicates the combination of get_youtube_transcript and a pattern. These overlaps are mostly resolved by explicit guidance, leaving minor ambiguity.

    Naming Consistency3/5

    Naming is mixed: some tools use the fabric_ prefix (fabric_create_coding_project, fabric_summarize) while others do not (health_check, analyze_file). Verbs are clear and readable, but the lack of a uniform prefix or verb-object structure across all tools makes the set less predictable.

    Tool Count3/5

    With 19 tools, the server is slightly heavy. Many specific fabric_* pattern wrappers could be handled by the generic run_fabric_pattern, making the count feel padded. However, the wide range of content analysis tasks justifies the number to some extent.

    Completeness5/5

    The generic run_fabric_pattern ensures any Fabric pattern can be executed, covering missing specific patterns. Health check and list_fabric_patterns support the operational lifecycle, and content ingestion via transcript, file, and URL is comprehensive. No obvious dead ends exist.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Enables integration of Chronulus AI Forecasting & Prediction Agents with Claude, allowing users to access AI-powered forecasting and prediction capabilities directly through Claude's interface.
      9
      111
      Python
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Enables Claude and Cursor to access agent memory, shared knowledge graphs, and decision audit through MCP.
      12
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables Claude to learn a user's writing style from personal samples and retrieve style context, exemplars, and profiles for rewriting and code-comment guidance through MCP.
      5 npm
      MIT