CleanSlice

io.github.CleanSlicePublished by GitHub account CleanSlicev1.0.0Updated Oct 24, 2026

Architecture docs and patterns for NestJS + Nuxt full-stack apps

The publisher's own server: Slice

VerifiedStreamable HTTPWeb executableKnowledge & MemoryDeveloper Tools

Overview

AI-generated overview

A remote MCP server that gives coding assistants CleanSlice architecture documentation for NestJS and Nuxt full-stack apps, so they follow its conventions.

What you can do
Load the core CleanSlice rules and naming conventions with get-started, which the server asks to be called first before writing code. Discover documentation categories with list-categories. Search documentation by query text, framework, phase, feature, category or tags, returning short snippets and document paths. Read the full text of a specific document by path when snippets are not enough.
When to use it
Useful when building or modifying NestJS and Nuxt full-stack apps that follow CleanSlice conventions and you want the assistant to check the project's architecture docs instead of guessing naming and structure.
Requirements
A remote streamable HTTP endpoint; no package, account, key or header is declared. The README also describes running it locally with Bun and Docker, where optional variables such as PORT, DOCS_PATH, GITHUB_REPO, GITHUB_TOKEN and CORS_ORIGIN apply.
Before you install
Read-only documentation access; no credentials are requested by the hosted endpoint. The README suggests adding project rules and a Stop hook that make the assistant consult this server before writing code, which changes your agent workflow and should be reviewed before adopting.

Installation

In SourceWeft

  1. Open CleanSlice in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.CleanSlice%2Fmcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "cleanslice": {
      "type": "http",
      "url": "https://mcp.cleanslice.org/mcp"
    }
  }
}

README

CleanSlice MCP Server

[Install MCP Server]

MCP (Model Context Protocol) server that gives AI coding agents access to the CleanSlice architecture documentation. Connect it to Claude, Cursor, Windsurf, or any MCP-compatible client so the AI knows how to build apps using CleanSlice conventions.

Installation

Install in Claude Code

Run this command. See Claude Code MCP docs for more info.

sh
claude mcp add --scope user --transport http cleanslice https://mcp.cleanslice.org/mcp

Remove --scope user to install for the current project only.

Tip: enforce MCP usage with CLAUDE.md

To make sure Claude Code always consults the CleanSlice MCP before writing any code, add the following to your project's CLAUDE.md:

markdown
## CleanSlice MCP — Required
Before writing or modifying any code you MUST consult the CleanSlice MCP:
1. Call `get-started` to load the core architecture rules.2. Call `list-categories` to see available documentation areas.3. Call `search` with at least 2 task-relevant queries covering:   (a) core implementation details for the feature you are building,   (b) edge cases, constraints, or standards that apply.4. Call `read-doc` to read the full document when search snippets aren't enough.
Do NOT guess conventions — always verify against MCP results first.

This ensures the agent reads CleanSlice docs at the start of every task, not after the fact.

Optional: add a Stop hook as a safety net

To catch cases where the agent skips the MCP despite the CLAUDE.md instruction, add this to .claude/settings.json:

json
{  "hooks": {    "Stop": [      {        "hooks": [          {            "type": "agent",            "timeout": 180,            "prompt": "You are a verification subagent. Your job: ensure the main Claude Code agent used the `cleanslice` MCP knowledge sufficiently and did not guess.\n\nContext JSON:\n$ARGUMENTS\n\nVerification requirements:\n1) Identify what the user asked for (deliverables + constraints) from the conversation/transcript in $ARGUMENTS.\n2) Verify the agent consulted the `cleanslice` MCP server for relevant knowledge BEFORE finalizing:\n   - Must call `cleanslice` \"get-started\" at least once (or equivalent) to confirm the server's purpose and usage.\n   - Must call \"list-categories\" to understand the available knowledge areas.\n   - Must call \"search\" with task-relevant queries (at least 2 searches) covering: (a) core implementation details, (b) edge cases / constraints.\n   - May call \"read-doc\" to get full document content when search snippets are insufficient.\n3) Validate coverage:\n   - If any required category is relevant but not checked, fail.\n   - If answers include specifics that are not supported by MCP results, fail.\n4) Output STRICT JSON only:\n   - If everything is verified: {\"ok\": true}\n   - If anything is missing/unsupported: {\"ok\": false, \"reason\": \"What is missing + exact MCP calls the main agent must run next (e.g., run list-categories, then search for X/Y, then update the solution).\"}\n\nImportant:\n- `cleanslice` tools will appear as MCP tools. Use whatever exact tool names are available in this environment (they follow the mcp__<server>__<tool> naming pattern).\n- Do not allow stopping until MCP-backed evidence is sufficient."          }        ]      }    ]  }}
Install in Cursor

Go to: Settings -> Cursor Settings -> MCP -> Add new global MCP server

Paste the following into your Cursor ~/.cursor/mcp.json file. You may also install in a specific project by creating .cursor/mcp.json in your project folder. See Cursor MCP docs for more info.

json
{  "mcpServers": {    "cleanslice": {      "type": "http",      "url": "https://mcp.cleanslice.org/mcp"    }  }}

Tip: enforce MCP usage with a Cursor rule

Create .cursor/rules/cleanslice.mdc in your project to make Cursor always consult the MCP before writing code:

markdown
---description: CleanSlice architecture rulesglobs: **/*.{ts,vue,prisma}alwaysApply: true---
## CleanSlice MCP — Required
Before writing or modifying any code you MUST consult the CleanSlice MCP:
1. Call `get-started` to load the core architecture rules.2. Call `list-categories` to see available documentation areas.3. Call `search` with at least 2 task-relevant queries covering:   (a) core implementation details for the feature you are building,   (b) edge cases, constraints, or standards that apply.4. Call `read-doc` to read the full document when search snippets aren't enough.
Do NOT guess conventions — always verify against MCP results first.
Install in Windsurf

Add to your Windsurf MCP config file. See Windsurf MCP docs for more info.

json
{  "mcpServers": {    "cleanslice": {      "type": "http",      "serverUrl": "https://mcp.cleanslice.org/mcp"    }  }}

Tip: enforce MCP usage with a Windsurf rule

Create .windsurf/rules/cleanslice.md in your project to make Windsurf always consult the MCP before writing code:

markdown
## CleanSlice MCP — Required
Before writing or modifying any code you MUST consult the CleanSlice MCP:
1. Call `get-started` to load the core architecture rules.2. Call `list-categories` to see available documentation areas.3. Call `search` with at least 2 task-relevant queries covering:   (a) core implementation details for the feature you are building,   (b) edge cases, constraints, or standards that apply.4. Call `read-doc` to read the full document when search snippets aren't enough.
Do NOT guess conventions — always verify against MCP results first.
Install in VS Code (Copilot)

Add to .vscode/mcp.json in your project. See VS Code MCP docs for more info.

json
{  "servers": {    "cleanslice": {      "type": "http",      "url": "https://mcp.cleanslice.org/mcp"    }  }}

Tip: enforce MCP usage with Copilot instructions

Create .github/copilot-instructions.md in your project root to make Copilot always consult the MCP before writing code:

markdown
## CleanSlice MCP — Required
Before writing or modifying any code you MUST consult the CleanSlice MCP:
1. Call `get-started` to load the core architecture rules.2. Call `list-categories` to see available documentation areas.3. Call `search` with at least 2 task-relevant queries covering:   (a) core implementation details for the feature you are building,   (b) edge cases, constraints, or standards that apply.4. Call `read-doc` to read the full document when search snippets aren't enough.
Do NOT guess conventions — always verify against MCP results first.
Install in Claude Desktop

Add to your claude_desktop_config.json. See Claude Desktop MCP docs for more info.

json
{  "mcpServers": {    "cleanslice": {      "type": "http",      "url": "https://mcp.cleanslice.org/mcp"    }  }}
Install in Opencode

Add this to your Opencode configuration file. See Opencode MCP docs for more info.

json
{  "mcp": {    "cleanslice": {      "type": "remote",      "url": "https://mcp.cleanslice.org/mcp",      "enabled": true    }  }}

Tip: enforce MCP usage with AGENTS.md

Create AGENTS.md in your project root to make Opencode always consult the MCP before writing code:

markdown
## CleanSlice MCP — Required
Before writing or modifying any code you MUST consult the CleanSlice MCP:
1. Call `get-started` to load the core architecture rules.2. Call `list-categories` to see available documentation areas.3. Call `search` with at least 2 task-relevant queries covering:   (a) core implementation details for the feature you are building,   (b) edge cases, constraints, or standards that apply.4. Call `read-doc` to read the full document when search snippets aren't enough.
Do NOT guess conventions — always verify against MCP results first.
Run Locally
bash
git clone https://github.com/CleanSlice/mcp.gitcd mcpbun installbun run dev

Then point your MCP client to http://localhost:8080/mcp.

Available Tools

ToolDescription
get-startedReturns the essential CleanSlice rules and conventions. Call this first.
list-categoriesLists all documentation categories available for search filtering
searchSearch docs by query, category, framework, phase, or tags. Returns snippets (keyword-in-context excerpts) and document paths
read-docRead the full content of a specific document by path. Use after search to get complete docs

Recommended workflow

get-started            → learn the core ruleslist-categories        → discover what's availablesearch(query: "...")   → find relevant docs (returns snippets)read-doc(path: "...")  → read full document when snippets aren't enough

The search tool returns 1-3 keyword-in-context snippets per result instead of full document content. This keeps responses compact (~3-5K instead of ~95K) while showing the most relevant sections. Use read-doc with the path from search results to fetch the complete document when needed.

Environment Variables

VariableDefaultDescription
PORT8080Server port
NODE_ENV-Set to dev for debug/verbose logging
DOCS_PATHAuto-discoverPath to bundled docs directory
GITHUB_REPOCleanSlice/docsFallback GitHub repo for docs
GITHUB_BRANCHmainGitHub branch to fetch from
GITHUB_TOKEN-GitHub token (optional, for higher rate limits)
GITHUB_CACHE_TTL3600GitHub content cache TTL in seconds
CORS_ORIGIN*Allowed CORS origin(s)

Docker

bash
docker build -t cleanslice-mcp .docker run -p 8080:8080 cleanslice-mcp

Endpoints

EndpointDescription
GET /sseSSE transport (for Claude Desktop, Cursor)
POST /messagesSSE message handler
POST /mcpStreamable HTTP transport
GET /healthHealth check
GET /apiSwagger docs

Architecture documentation synchronization

The four reliability guides in docs/architecture/ are generated from the website repository's docs/architecture/ files (sibling checkout ../docs/docs/architecture). Run node scripts/sync-architecture-docs.mjs after editing the canonical docs and node scripts/sync-architecture-docs.mjs --check before release. For another checkout layout pass --source=/absolute/path/to/architecture. The check fails on missing or divergent copies. Commit the generated bundle with the MCP change so standalone deployments can search/read the same versioned content.

get-started loads 00-quickstart/get-started.md directly, with local-first/remote fallback. If unavailable it fails explicitly rather than returning empty rules. The bundled-knowledge integration tests exercise real loading, searching and rendered startup content. Updating files locally does not update the hosted MCP: build/test, publish the docs and deploy the MCP through the normal authorized release process.

Source: README.md at commit e49f946

Tools

4

get-started

⚠️ CRITICAL: request this tool first before creating any code! Returns essential slice creation rules. READ THIS FIRST before creating any slices! Contains the MOST IMPORTANT naming rule: ALWAYS use SINGULAR names (user/ not users/).

Takes no parameters.

list-categories

List all available documentation categories. Use this to discover what categories are available before searching.

Takes no parameters.

read-doc

Read the full content of a specific document by path. Use this after `search` to get the complete document when snippets are not enough.

Parameterspathrequired

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Slice integrations