Skip to main content
Glama
Claude Rules MCP Server

Claude Rules MCP Server

by jeremykenedy

Table of Contents

Related MCP server: Skills MCP Server

About

An MCP (Model Context Protocol) server that reads Claude Code skills and rules from the filesystem and exposes them as tools. Supports HTTP and stdio transports with optional token authentication and Cloudflare Tunnel for remote access.

Features

  • Serves 484 skills with progressive disclosure (metadata first, full content on demand)

  • 17 global rules accessible individually or concatenated

  • Project-level rule discovery across multiple repositories

  • Keyword search across all skills and rules

  • Monitor summary integration (Gmail and court monitors)

  • Token authentication for HTTP transport

  • Dual transport: HTTP for containers/web, stdio for Claude Desktop

Requirements

  • Node.js 20+

  • npm 10+

  • Docker (for container deployment)

Installation

npm install claude-rules-mcp

Or run directly without installing:

npx claude-rules-mcp init

Manual

git clone https://github.com/jeremykenedy/claude-rules-mcp-server.git
cd claude-rules-mcp-server
npm install
npm run build

Quick Start

Run the interactive setup wizard:

npx claude-rules-mcp init

The wizard walks through transport selection, paths, and token auth. It creates a .env file with your configuration.

Then start the server:

npx claude-rules-mcp run

Tools

Tool

Description

rules_get_manifest

Returns the full skills manifest (names and descriptions, not file contents)

rules_list_skills

Lists all skills with optional keyword filter

rules_get_skill

Reads the full SKILL.md for a specific skill by name

rules_get_skill_references

Lists and reads reference files for a skill

rules_list_global_rules

Lists all 17 global rule names

rules_get_global_rule

Reads a specific global rule by name

rules_get_global

Concatenates all 17 rule files into one response

rules_get_project

Reads project-level CLAUDE.md and .claude/rules/

rules_list_projects

Scans for projects with .claude/ directories

rules_search

Keyword search across skill descriptions and rule contents

read_monitor_summary

Reads the latest Gmail/court monitor summary

Configuration

Variable

Default

Description

TRANSPORT

stdio

http or stdio

PORT

3456

HTTP port

CLAUDE_DATA_PATH

/data/.claude

Path to skills, rules, and manifest

CLAUDE_PROJECTS_DIR

/data/sites

Path to project directories

MCP_SECRET

(none)

Token for HTTP authentication (recommended for remote)

Docker Deployment

docker build -t claude-rules-mcp:latest .

docker run -d \
  --name claude-rules-mcp \
  --restart unless-stopped \
  -p 3456:3456 \
  -e TRANSPORT=http \
  -e PORT=3456 \
  -e CLAUDE_DATA_PATH=/data/.claude \
  -e CLAUDE_PROJECTS_DIR=/data/sites \
  -e MCP_SECRET=your-secret-token \
  -v /path/to/.claude:/data/.claude:ro \
  -v /path/to/sites:/data/sites:ro \
  claude-rules-mcp:latest

Health check:

curl http://localhost:3456/health

Claude Desktop Setup

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "claude-rules": {
      "command": "npx",
      "args": ["-y", "claude-rules-mcp", "run"]
    }
  }
}

For remote via SSH:

{
  "mcpServers": {
    "claude-rules": {
      "command": "ssh",
      "args": [
        "user@your-server",
        "cd /path/to/server && TRANSPORT=stdio node dist/index.js"
      ]
    }
  }
}

Claude.ai Web Setup

Settings > Customize > Connectors > + > Add custom connector:

Name: Claude Rules
URL: https://your-domain.com/mcp?token=your-secret-token

Testing

# Health check
curl http://localhost:3456/health

# Test with token
curl -X POST "http://localhost:3456/mcp?token=your-token" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}'

License

This package is open-sourced software licensed under the MIT license.

Available Tools

11 tools
read_monitor_summaryA

Read the latest monitor summary (Gmail job/legal alerts + Oregon court case updates). Check this at the start of every conversation to see if there are new job leads, legal updates, or urgent items.

Inputs: no named parameters.

rules_get_globalGet All Global RulesA
Read-onlyIdempotent

Reads and concatenates ALL 17 global rule files into one response. Use this to load your complete global ruleset into context at once. For a single rule, use rules_get_global_rule instead.

Returns: All 17 rules concatenated with section headers.

Inputs: no named parameters.

rules_get_global_ruleGet Global RuleA
Read-onlyIdempotent

Reads a specific global rule file by name from ~/.claude/rules/{name}.md.

Args:

  • rule_name (string): Rule name without .md (e.g. "php", "laravel", "conventions", "testing") Valid: artisan-commands, banners, commands, conventions, echo-broadcasting, horizon, laravel, license, livewire, package-standards, pest, php, readme, socialite, tailwind, testing, vibe-flow

Returns: Full rule file content.

Inputs: rule_name (required).

rules_get_manifestGet Skills ManifestA
Read-onlyIdempotent

Returns the full skills-manifest.json — names and descriptions for all 484 skills plus 17 global rule names. Use this first to discover what is available before fetching individual skills or rules. Returns structured JSON: { total_skills, total_rules, skills[], rules[] }

Inputs: no named parameters.

rules_get_projectGet Project RulesA
Read-onlyIdempotent

Reads CLAUDE.md and all .claude/rules/*.md files for a specific project.

Args:

  • project_name (string): Project folder name under ~/sites (e.g. "laravel-auth-modernized", "greenboard")

Returns: Project CLAUDE.md and all project-level rule files concatenated.

Inputs: project_name (required).

rules_get_skillGet SkillA
Read-onlyIdempotent

Reads the full SKILL.md for a specific skill by name.

Args:

  • skill_name (string): Exact skill name (e.g. "vue-expert", "php-pro", "laravel-auth")

Returns: Full SKILL.md content.

Inputs: skill_name (required).

rules_get_skill_referencesGet Skill ReferencesA
Read-onlyIdempotent

Lists or reads reference files for a specific skill. Many skills have 5-7 deep-dive reference docs in their references/ subdirectory.

Args:

  • skill_name (string): Exact skill name

  • filename (string, optional): Specific reference filename to read. If omitted, lists all references.

Returns: List of reference filenames, or full content of a specific reference file.

Inputs: skill_name (required), filename.

rules_list_global_rulesList Global RulesA
Read-onlyIdempotent

Lists all 17 global rule names available in ~/.claude/rules/. Rules: artisan-commands, banners, commands, conventions, echo-broadcasting, horizon, laravel, license, livewire, package-standards, pest, php, readme, socialite, tailwind, testing, vibe-flow. Use rules_get_global_rule to read a specific rule.

Inputs: no named parameters.

rules_list_projectsList Projects with Claude RulesA
Read-onlyIdempotent

Scans the projects directory and lists all projects that have a .claude/ directory.

Returns: List of project names with Claude rules configured.

Inputs: no named parameters.

rules_list_skillsList All SkillsA
Read-onlyIdempotent

Lists all 484 skills with names and descriptions, read from the manifest (fast — no filesystem scan). Optionally filter by category or keyword.

Args:

  • filter (string, optional): Filter by name or description keyword (case-insensitive)

Returns: Formatted skill list with descriptions.

Inputs: filter.

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A4.4/5.0

    Scored across 11 tools

    Disambiguation5/5

    Each tool targets a clearly distinct operation: reading summaries, getting global rules (single or all), listing rules, skills, projects, getting skill references, and searching. No two tools have overlapping purposes.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern in snake_case, with a uniform 'rules_' prefix for most tools. The exception 'read_monitor_summary' still uses verb_noun, maintaining overall consistency.

    Tool Count5/5

    11 tools is well-scoped for the server's domain (reading rules, skills, projects, monitor). Each tool provides a necessary distinct operation without redundancy.

    Completeness5/5

    The tool surface covers all read operations for rules, skills, projects, and monitor summaries, plus search and listing. While write operations are absent, the server's apparent purpose is read-only access, making it complete for that use case.

    Maintenance

    ActivitySlowing
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      Not graded
      maintenance
      An MCP server that transforms Claude-style skills and resources into callable tools for any MCP-compatible agent or client. It automatically discovers, exposes, and executes scripts from skills organized in local directories or packaged archives.
      MIT
    • F
      license
      A
      quality
      B
      maintenance
      Exposes 1,334 skills as global MCP tools across Claude Desktop, VSCode, and Cursor, automatically discovering and categorizing skills from a local directory into 18 categories with semantic search capabilities.
      43
      1
      -
    • F
      license
      Not graded
      quality
      D
      maintenance
      Serves project-specific skills and behavioral rules to AI agents via MCP, enabling automatic injection of behavioral rules and on-demand knowledge for coding assistants like Claude Code and Gemini CLI.
      1
      -
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables dynamic discovery, search, and on-demand retrieval of local Claude Skills, making them accessible as a composable skill registry across MCP-compatible hosts without manual configuration.
      1
      MIT