Skip to main content
Glama

Shopify Liquid MCP Server

๐Ÿš€ Fast, local, offline-first MCP server for Shopify Liquid documentation with 198 comprehensive docs including all tags, filters, and objects.

Python 3.10+ License: MIT Docker MCP

A specialized Model Context Protocol (MCP) server that provides instant access to complete Shopify Liquid documentation for AI assistants like Claude, Cursor, and other MCP-compatible tools.

๐ŸŽฏ Why This MCP Server?

vs. Official Shopify MCP

While Shopify provides an official MCP server that covers all Shopify APIs, this server is specifically optimized for Liquid template development:

Feature

Official Shopify MCP

This (Liquid MCP)

Focus

All Shopify APIs (Admin, Storefront, Functions, etc.)

Liquid templating only

Storage

Remote (queries shopify.dev)

Local (no network needed)

Speed

Network-dependent

Instant (<1ms)

Offline

โŒ Requires internet

โœ… Fully offline

Customization

Fixed documentation

Add your own docs

Coverage

General API docs

198 Liquid-specific docs

Runtime

Node.js

Python

Use Cases

Use Official Shopify MCP for:

  • Admin API/GraphQL development

  • App development with Shopify APIs

  • Functions and POS extensions

  • Real-time schema validation

Use This Liquid MCP for:

  • Theme development with Liquid

  • Liquid template debugging

  • Offline development

  • Faster Liquid reference lookups

  • Project-specific Liquid snippets

Use Both! They complement each other perfectly - official MCP for APIs, this for Liquid.

Related MCP server: DocsetMCP

โœจ Features

  • ๐Ÿš€ Lightning Fast - Local SQLite FTS5 search (<1ms response time)

  • ๐Ÿ“š Complete Coverage - 30 tags, 101 filters, 67 objects (198 total docs)

  • ๐Ÿ”Œ Offline First - No network requests, works anywhere

  • ๐Ÿณ Docker Ready - One command deployment

  • ๐ŸŽจ IDE Integration - Works with VS Code, Cursor, Claude Desktop, Zed

  • ๐Ÿ”ง Customizable - Add your own project-specific Liquid docs

  • ๐Ÿ“– Rich Documentation - Full syntax, parameters, examples for everything

  • ๐Ÿ” Smart Search - Full-text search with snippet highlighting

๐Ÿ“ฆ Installation

pip install git+https://github.com/florinel-chis/shopify-liquid-mcp.git

Option 2: Using Docker

# Pull the image
docker pull florinel-chis/shopify-liquid-mcp:latest

# Or build locally
docker build -t shopify-liquid-mcp .
docker run -it shopify-liquid-mcp

Option 3: Using docker-compose

docker-compose up -d

Option 4: From Source

git clone https://github.com/florinel-chis/shopify-liquid-mcp.git
cd shopify-liquid-mcp
pip install -e .

๐ŸŽฎ Usage

With VS Code

Using Docker

Create or edit .vscode/settings.json:

{
  "mcp.servers": {
    "shopify-liquid": {
      "type": "docker",
      "image": "shopify-liquid-mcp:latest",
      "transport": "stdio"
    }
  }
}

Using Local Installation

Create .mcp.json in your project root:

{
  "mcpServers": {
    "shopify-liquid": {
      "type": "stdio",
      "command": "shopify-liquid-mcp"
    }
  }
}

Or add to VS Code settings:

{
  "mcp.servers": {
    "shopify-liquid": {
      "command": "shopify-liquid-mcp",
      "args": [],
      "transport": "stdio"
    }
  }
}

With Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

Using Docker

{
  "mcpServers": {
    "shopify-liquid": {
      "type": "stdio",
      "command": "docker",
      "args": ["run", "-i", "--rm", "shopify-liquid-mcp:latest"]
    }
  }
}

Using Local Installation

{
  "mcpServers": {
    "shopify-liquid": {
      "command": "shopify-liquid-mcp"
    }
  }
}

With Cursor

Add to Cursor's MCP configuration (Settings > Features > MCP Servers):

{
  "mcpServers": {
    "shopify-liquid": {
      "command": "shopify-liquid-mcp"
    }
  }
}

Or with Docker:

{
  "mcpServers": {
    "shopify-liquid": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "shopify-liquid-mcp:latest"]
    }
  }
}

With Zed Editor

Create .zed/settings.json:

{
  "context_servers": {
    "shopify-liquid": {
      "command": "shopify-liquid-mcp"
    }
  }
}

With Continue.dev

Edit ~/.continue/config.json:

{
  "mcpServers": [
    {
      "name": "shopify-liquid",
      "command": "shopify-liquid-mcp"
    }
  ]
}

๐Ÿ› ๏ธ Available Tools

Once configured, your AI assistant has access to 7 specialized tools:

1. search_liquid_docs(queries: List[str])

Full-text search across all Shopify Liquid documentation.

Example:

AI: I'll search for "for loop" in the documentation...

2. get_liquid_tag(tag_name: str)

Get complete documentation for a specific tag.

Example:

AI: Let me get the documentation for the 'for' tag...

3. get_liquid_filter(filter_name: str)

Get complete documentation for a specific filter.

Example:

AI: I'll look up the 'upcase' filter documentation...

4. get_liquid_object(object_name: str)

Get complete documentation for a specific object.

Example:

AI: Let me check the 'product' object properties...

5. list_liquid_tags()

List all 30 available tags organized by category.

6. list_liquid_filters()

List all 101 available filters organized by category.

7. list_liquid_objects()

List all 67 available objects organized by category.

๐Ÿ’ฌ Example Queries

Try asking your AI assistant:

Getting Documentation:

  • "Show me documentation for the for loop tag"

  • "How does the money filter work in Liquid?"

  • "What properties are available on the product object?"

Searching:

  • "Search for documentation about cart functionality"

  • "Find all filters related to dates"

  • "What objects can I use for collections?"

Listing:

  • "List all Shopify Liquid tags"

  • "Show me all available string filters"

  • "What iteration tags are available?"

Building:

  • "Help me display products in a grid"

  • "How do I format dates in Liquid?"

  • "Show me how to work with the cart"

๐Ÿ“Š Documentation Coverage

Complete Reference

  • 30 Liquid Tags

    • Control flow: if, unless, case, else

    • Iteration: for, break, continue, cycle, tablerow, paginate

    • Variables: assign, capture, increment, decrement, echo

    • Theme: layout, section, sections, render, include, content_for

    • HTML/Assets: form, style, stylesheet, javascript

    • Syntax: comment, raw, liquid, doc

  • 101 Liquid Filters

    • String (24): upcase, downcase, capitalize, append, prepend, etc.

    • Array (13): join, sort, reverse, map, where, size, etc.

    • Math (11): plus, minus, times, divided_by, modulo, etc.

    • Money (4): money, money_with_currency, etc.

    • Image (5): image_url, image_tag, etc.

    • Color (9): color_darken, color_lighten, etc.

    • And more...

  • 67 Liquid Objects

    • Store: shop, settings, theme, brand

    • Products: product, variant, collection, collections

    • Cart: cart, line_item, checkout

    • Customer: customer, address, company

    • Content: page, blog, article, comment

    • Media: image, video, media, model

    • And more...

๐Ÿณ Docker Usage

Quick Start

# Build the image
docker build -t shopify-liquid-mcp .

# Run the server
docker run -it --rm shopify-liquid-mcp

# Run with persistent data
docker run -it --rm -v mcp-data:/data shopify-liquid-mcp

Using docker-compose

# Start the server
docker-compose up -d

# View logs
docker-compose logs -f

# Stop the server
docker-compose down

# Shell access
docker-compose exec shopify-liquid-mcp bash

Custom Documentation

Add your project-specific Liquid docs:

# Create custom docs directory
mkdir custom-docs

# Add your .md files
cp my-snippets.md custom-docs/

# Mount in docker-compose.yml
volumes:
  - ./custom-docs:/docs/custom:ro

๐Ÿ”ง Development

Running Tests

# Run all tests
pytest

# Run specific test
pytest tests/test_ingest.py

# Run with coverage
pytest --cov=shopify_liquid_mcp

Manual Testing

# Test the server
python test_server.py

# Test indexing
python -m shopify_liquid_mcp.ingest

# Check database
sqlite3 ~/.mcp/shopify-liquid-docs/database.db "SELECT COUNT(*) FROM liquid_docs;"

Reindexing Documentation

# Force reindex
python -m shopify_liquid_mcp.ingest --force

# Custom database location
SHOPIFY_LIQUID_DB_PATH=/custom/path/db.sqlite python -m shopify_liquid_mcp.ingest

๐Ÿ“– Documentation

๐Ÿค Contributing

Contributions welcome! Please read our Contributing Guide.

Quick Start

# Fork and clone
git clone https://github.com/florinel-chis/shopify-liquid-mcp.git
cd shopify-liquid-mcp

# Create virtual environment
python -m venv venv
source venv/bin/activate  # or `venv\Scripts\activate` on Windows

# Install for development
pip install -e ".[dev]"

# Run tests
pytest

# Make changes and submit PR

๐Ÿ“œ License

MIT License - see LICENSE file for details.

๐Ÿ™ Acknowledgments

๐Ÿ“ž Support

โญ Star History

Star History Chart


Made with โค๏ธ for the Shopify theme development community

Available Tools

7 tools
get_liquid_filterA

Get documentation for a specific Shopify Liquid filter.

Args: filter_name: Name of the filter (e.g., 'upcase', 'date', 'money')

Returns: Complete filter documentation

Inputs: filter_name (required). Returns: result

get_liquid_objectB

Get documentation for a specific Shopify Liquid object.

Args: object_name: Name of the object (e.g., 'product', 'cart', 'shop')

Returns: Complete object documentation

Inputs: object_name (required). Returns: result

get_liquid_tagA

Get documentation for a specific Shopify Liquid tag.

Args: tag_name: Name of the tag (e.g., 'if', 'for', 'assign')

Returns: Complete tag documentation

Inputs: tag_name (required). Returns: result

list_liquid_filtersA

List all available Shopify Liquid filters.

Returns: List of all filter names with titles organized by category

Inputs: no named parameters. Returns: result

list_liquid_objectsB

List all available Shopify Liquid objects.

Returns: List of all object names with titles organized by category

Inputs: no named parameters. Returns: result

list_liquid_tagsA

List all available Shopify Liquid tags.

Returns: List of all tag names with titles

Inputs: no named parameters. Returns: result

search_liquid_docsB

Search Shopify Liquid documentation using full-text search.

Args: queries: List of search terms (maximum 3)

Returns: Formatted search results with snippets

Inputs: queries (required). Returns: result

Tool Schema Changelog

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

Loading tool schema changelogโ€ฆ

    TDQS

    A4/5.0

    Scored across 7 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no ambiguity: three 'get' tools retrieve specific documentation for filters, objects, and tags respectively; three 'list' tools enumerate all available items in those categories; and one 'search' tool performs full-text queries. The boundaries between tools are well-defined, preventing misselection.

    Naming Consistency5/5

    Tool names follow a highly consistent verb_noun pattern throughout: all start with 'get_', 'list_', or 'search_' followed by 'liquid_' and the specific resource type (filter, object, tag, docs). There are no deviations in style or convention, making the set predictable and readable.

    Tool Count5/5

    With 7 tools, the count is well-scoped for the server's purpose of providing Shopify Liquid documentation. It covers key operations (retrieve specific items, list all items, search) across the main documentation categories (filters, objects, tags), with each tool earning its place without redundancy or bloat.

    Completeness5/5

    The tool surface is complete for the domain of Shopify Liquid documentation lookup. It offers full CRUD-like coverage: 'list' tools for discovery, 'get' tools for detailed retrieval, and a 'search' tool for flexible queries. There are no obvious gaps or dead ends, enabling agents to handle all typical documentation needs effectively.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Provides AI assistants with instant access to local Dash documentation docsets and cheatsheets, enabling offline documentation searches across 165+ programming languages, frameworks, and developer tools directly within conversations.
      10
      MIT
    • A
      license
      C
      quality
      B
      maintenance
      Enables searching, fetching, and customizing Mechanic tasks and documentation for Shopify automation. Provides offline access to bundled task library and docs with tools for task code, docs content, and similar task suggestions.
      6
      27 npm
      MIT