Fabric Atelier is a blazingly fast Model Context Protocol (MCP) server that exposes Fabric's 200+ AI patterns as discoverable, executable tools for AI assistants like Claude Desktop, Windsurf, Cline, and other MCP clients.
Built with Rust and Apache Arrow, Atelier delivers sub-millisecond pattern discovery through vectorized semantic search, making Daniel Miessler's thoughtfully crafted patterns accessible to the entire MCP ecosystem.
An atelier (French: workshop) is where craftsmen create with precision and artistry. Just as Fabric organizes AI prompts into reusable patterns, Atelier serves as the workshop where these patterns are discovered, orchestrated, and delivered to AI assistants with exceptional performance.
- π Blazingly Fast - Built with Rust for maximum performance
- π― 226 Patterns - All Fabric patterns accessible via MCP
- π³ Docker Ready - Pull and run in seconds
- π€ LLM Powered - Ollama, OpenAI, or Anthropic support
- π¦ Rust Performance - 281MB Docker image, <50ms startup
- π Auto-Sync - Git submodule keeps patterns up-to-date with Fabric
- π Secure - Non-root Docker user, minimal dependencies
- π Benchmarked - 5,000+ req/s, comprehensive performance testing
fabric-atelier/
βββ src/ # Rust source code
β βββ mcp/ # MCP protocol implementation
β βββ fabric/ # Pattern loader & executor
β βββ vector/ # Arrow-based semantic search
β βββ main.rs
βββ data/
β βββ fabric/ # Git submodule β danielmiessler/fabric
β β βββ data/patterns/ # 200+ Fabric patterns (auto-synced)
β βββ embeddings.parquet # Cached pattern embeddings
βββ docs/
βββ media/ # Project assets
Pull from Docker Hub:
docker pull copyleftdev/fabric-atelier:latestConfigure Claude Desktop:
{
"mcpServers": {
"fabric-atelier": {
"command": "docker",
"args": ["run", "-i", "--rm", "copyleftdev/fabric-atelier:latest"]
}
}
}Test it:
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' | \
docker run -i --rm copyleftdev/fabric-atelier:latestPrerequisites:
- Rust 1.90+ (
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh) - Local LLM (Ollama) or API keys (OpenAI/Anthropic)
Installation:
# Clone with submodules
git clone --recursive https://github.com/copyleftdev/fabric-atelier.git
cd fabric-atelier
# Build release binary
cargo build --release
# Binary location: target/release/fabric-atelierClaude Desktop (macOS):
code ~/Library/Application\ Support/Claude/claude_desktop_config.jsonClaude Desktop (Linux):
code ~/.config/Claude/claude_desktop_config.jsonWindsurf IDE: See WINDSURF_SETUP.md for detailed Windsurf configuration.
Add this configuration:
{
"mcpServers": {
"fabric-atelier": {
"command": "/absolute/path/to/fabric-atelier/target/release/fabric-atelier"
}
}
}Restart Claude Desktop and look for the π icon to verify connection.
User: "Find me a Fabric pattern for analyzing security papers"
Claude: [Uses fabric_find_pattern tool]
β Suggests: analyze_threat_report, analyze_paper, extract_wisdom
User: "Use fabric_extract_wisdom to analyze this article: [content]"
Claude: [Executes pattern and returns insights]
fabric_find_pattern- Semantic search for patternsfabric_<pattern_name>- Execute any Fabric pattern (200+ tools)fabric_summarize- Summarize contentfabric_extract_wisdom- Extract insights from articles/videosfabric_analyze_claims- Fact-check and analyze claimsfabric_improve_writing- Enhance writing qualityfabric_explain_code- Explain code snippets- ... and 195+ more!
Fabric Atelier loads all patterns from the data/fabric/data/patterns/ directory (synced via git submodule).
Pattern descriptions are embedded using OpenAI/Anthropic APIs and cached in Parquet format using Apache Arrow for instant access.
The server implements the Model Context Protocol, exposing patterns as tools that AI assistants can discover and execute.
When a tool is called, Atelier executes the corresponding Fabric pattern via CLI and returns the result.
Fabric Atelier uses a git submodule to reference Daniel Miessler's Fabric repository:
# Update to latest Fabric patterns
git submodule update --remote data/fabric
# Rebuild embeddings after update
cargo run --bin generate-embeddingsThis approach:
- β Keeps patterns in sync with upstream Fabric
- β Respects Fabric's MIT license
- β No data duplication
- β Single source of truth
| Metric | Fabric Atelier | Notes |
|---|---|---|
| Docker image | 281 MB | Multi-stage build with cargo-chef |
| Startup time | <50 ms | Pattern loading included |
| Memory usage | ~30 MB | Runtime footprint |
| Throughput | 5,000-7,000 req/s | Concurrent request handling |
| Pattern loading | ~11 ms | 226 patterns from disk |
| Request latency | ~380 Β΅s | Sub-millisecond response |
Benchmarked with comprehensive performance testing.
The project follows a modular Rust architecture with MCP protocol implementation, pattern loading, and semantic search capabilities.
# Development build
cargo build
# Release build (optimized)
cargo build --release
# Run tests
cargo test
# Run benchmarks
cargo bench# Set API key
export OPENAI_API_KEY=your_key_here
# Generate embeddings for all patterns
cargo run --bin generate-embeddings
# Output: data/embeddings.parquetFor detailed technical documentation, see the docs/ directory:
- ARCHITECTURE.md - System architecture and design
- BUILD_SYSTEM.md - Build configuration and optimization
- MCP_SCHEMA_DOCUMENTATION.md - MCP protocol implementation
- WINDSURF_SETUP.md - Windsurf IDE integration guide
- Basic MCP server implementation
- Pattern loading from Fabric submodule
- Git submodule integration
- Apache Arrow vector search
- Parquet embedding cache
- SIMD-accelerated similarity search
- Pattern chaining support
- YouTube transcript integration
- Custom pattern support
- Performance benchmarks
Contributions welcome! Please open an issue or pull request on GitHub.
Fabric Atelier aligns with Fabric's core philosophy:
"AI isn't a thing; it's a magnifier of a thing. And that thing is human creativity."
By making Fabric's patterns accessible through MCP, we extend this vision of human augmentation to every AI assistant that supports the protocol.
- Daniel Miessler - Creator of Fabric
- Model Context Protocol - Anthropic's open protocol for AI tool integration
- Apache Arrow - High-performance columnar data format
MIT License - see LICENSE for details.
Fabric patterns are licensed under MIT by danielmiessler/fabric.
Built with π¦ Rust and β€οΈ for the Fabric community
