workspace-mcp

workspace-mcp

Bridges Claude AI with the local filesystem for direct file and project management, enabling incremental saves and automatic work logs to overcome token limits.

Category
Visit Server

README

๐Ÿš€ Workspace MCP ๐Ÿ› ๏ธ

The ultimate local filesystem bridge for Claude Desktop & Claude Code! โšก Stop losing code to token limits โ€” let Claude design, scaffold, build, and save full-stack software projects directly on your hard drive! ๐Ÿ“๐Ÿ’ป

Python License MCP Protocol


๐ŸŽฏ Overview: Solving Claude's Token Limits ๐Ÿ›‘

When using Claude to build multi-file projects, developers frequently run into output token limits and context window cutoffs:

  1. โš ๏ธ Truncated File Outputs: Claude hits completion token limits mid-file, cutting off output and forcing you to repeatedly ask it to continue.
  2. ๐Ÿ”„ Lost Progress: When a conversation gets too long or expires, un-saved code in the chat window disappears unless manually copy-pasted into your editor.
  3. ๐Ÿšซ No Direct Disk Access: Standard web and desktop chats cannot write files directly to your local computer.

๐Ÿช„ How Workspace MCP Helps ๐ŸŒŸ

Workspace MCP connects Claude directly to your local filesystem:

  • ๐Ÿ’พ Incremental Local Disk Saves: Every file and folder is saved immediately as Claude works. If Claude hits an output token limit on a long response, everything written up to that point remains 100% safely stored on disk.
  • ๐Ÿ” Resuming Work: In a new chat prompt, simply ask Claude to read your project files and pick up right where it left off using read_file, find_text, or update_file.
  • ๐Ÿ“ Automatic Work Logs (CLOUD.md): Maintains an architectural work log tracking what was built, key decisions, and next steps for future chat sessions.

๐Ÿงญ Capabilities Guide: What Workspace MCP Does ๐Ÿ› ๏ธ

Think of workspace-mcp as providing file and project management hands ๐Ÿคฒ to your AI assistant. The AI handles the reasoning (what code to write and how to structure it); workspace-mcp handles applying those changes directly to disk in a clean, organized folder layout.

๐ŸŽจ The 4 Main Tool Categories

Category Description
๐Ÿ—‚๏ธ Project & Folder Management Create, rename, or remove project roots and subdirectories.
๐Ÿ“„ File Operations Create, read, edit, move, rename, and delete individual files safely.
๐Ÿ” Search & Discovery Find text across files (grep), search by filename patterns (glob), or list directory trees.
๐Ÿ“Š Auto-Documentation Automatically generate README.md, PROJECT_TREE.md, and CLOUD.md work logs.

๐Ÿ—‚๏ธ 1. Project & Folder Management

  • create_project ๐Ÿ—๏ธ โ€” Initializes a project directory with a default scaffold.
  • create_directory ๐Ÿ“ โ€” Creates subfolders (e.g. src/, docs/) and missing parent folders automatically.
  • rename_project โœ๏ธ โ€” Moves or renames an entire project directory.
  • delete_directory ๐Ÿ—‘๏ธ โ€” Recursively deletes a folder (requires explicit confirm=true).
  • delete_project ๐Ÿ’ฅ โ€” Permanently removes an entire project directory (requires confirm=true).

๐Ÿ’ก Tip: Always start a new application with create_project to keep files scoped inside a dedicated folder!


๐Ÿ“„ 2. File Operations

  • create_file โœจ โ€” Creates a new file with content (fails if the file already exists to prevent accidental overwrites).
  • write_file ๐Ÿ“ โ€” Overwrites a file completely or creates it if missing (requires confirm=true if overwriting).
  • update_file ๐Ÿ”ง โ€” Performs targeted string edits (find/replace) on existing files without replacing the entire file.
  • append_file โž• โ€” Appends text to the end of a file without touching existing content.
  • read_file ๐Ÿ“– โ€” Reads a file's full UTF-8 text content.
  • move_file ๐Ÿšš โ€” Relocates a file to another directory.
  • rename_file ๐Ÿท๏ธ โ€” Renames a file within its current folder.
  • delete_file โŒ โ€” Deletes a single file (requires confirm=true).

๐Ÿ’ก Tip: Use create_file for brand new files, update_file for inline edits, and write_file when replacing an entire file!


๐Ÿ” 3. Search & Discovery

  • find_text ๐Ÿ”Ž โ€” Grep-like search across text files for literal strings (e.g. finding TODO comments or function usages).
  • search_files ๐ŸŽฏ โ€” Glob search for files matching a pattern (e.g. **/*.py or *.ts).
  • list_directory ๐Ÿ“‹ โ€” Lists files and subdirectories with sizes and metadata.

๐Ÿ’ก Tip: Use search_files when looking for file types or names, and find_text when searching for specific code text across your project!


๐Ÿ“Š 4. Auto-Documentation & Validation

  • generate_readme ๐Ÿ“˜ โ€” Creates or updates a structured README.md.
  • generate_project_tree ๐ŸŒด โ€” Saves an ASCII visual tree map to PROJECT_TREE.md.
  • project_tree ๐Ÿ‘๏ธ โ€” Returns an ASCII visual tree in the tool response without saving to disk.
  • generate_cloud_log โ˜๏ธ โ€” Writes CLOUD.md documenting what was built and why.
  • validate_workspace ๐Ÿฅ โ€” Checks workspace health, server configuration, and limits.
  • validate_path ๐Ÿ›ก๏ธ โ€” Verifies if a path is safe and valid before performing file operations.

๐Ÿ”„ Typical Workflow

1. create_project        ๐Ÿ—๏ธ โ†’ Initialize project directory
2. create_directory      ๐Ÿ“ โ†’ Scaffold subfolders (src/, docs/)
3. create_file           โœจ โ†’ Write initial source files
4. update_file           ๐Ÿ”ง โ†’ Edit and refine code incrementally
5. find_text/search_files๐Ÿ”Ž โ†’ Locate references or check for TODOs
6. move_file/rename_file ๐Ÿšš โ†’ Organize file structure
7. generate_project_tree ๐ŸŒด โ†’ Save project tree map
8. generate_readme       ๐Ÿ“˜ โ†’ Document setup and usage
9. generate_cloud_log    โ˜๏ธ โ†’ Save AI work log
10. validate_workspace   ๐Ÿฅ โ†’ Verify workspace state

๐Ÿ”Œ Connecting to Claude Desktop ๐Ÿค–

Claude Desktop manages MCP servers via its configuration file. Using uv allows Claude Desktop to run workspace-mcp automatically in the background without needing to start a server manually! โšก

๐Ÿ“‚ Step 1: Locate claude_desktop_config.json

OS Config Path
Windows ๐ŸชŸ %APPDATA%\Claude\claude_desktop_config.json
macOS ๐ŸŽ ~/Library/Application Support/Claude/claude_desktop_config.json
Linux ๐Ÿง ~/.config/Claude/claude_desktop_config.json

โš™๏ธ Step 2: Add Configuration

Add the following to your claude_desktop_config.json. Update the paths to point to your local installation of workspace-mcp and your desired --workspace-root directory:

Windows ๐ŸชŸ

{
  "mcpServers": {
    "workspace-mcp": {
      "command": "uv",
      "args": [
        "--directory",
        "C:/Users/YourUsername/mcp/servers/workspace-mcp",
        "run",
        "workspace-mcp",
        "--workspace-root",
        "C:/Users/YourUsername/AIProjects"
      ]
    }
  }
}

macOS ๐ŸŽ / Linux ๐Ÿง

{
  "mcpServers": {
    "workspace-mcp": {
      "command": "uv",
      "args": [
        "--directory",
        "/home/user/workspace-mcp",
        "run",
        "workspace-mcp",
        "--workspace-root",
        "/home/user/AIProjects"
      ]
    }
  }
}

๐Ÿ’ก Note: Requires uv to be installed on your system PATH.

๐Ÿ”„ Step 3: Restart Claude Desktop ๐Ÿ”จ

  1. Fully close Claude Desktop (from system tray or menu bar).
  2. Re-open Claude Desktop.
  3. Click the hammer icon (๐Ÿ”จ) in the chat bar to confirm that the workspace-mcp tools are active! ๐ŸŽ‰

๐ŸŽฎ Usage & Master Prompt ๐Ÿ‘‘

๐ŸŒŸ Comprehensive Master Prompt

Copy and paste this prompt into Claude Desktop to test all tool capabilities at once:

Using the workspace MCP, create a new project called [project-name]. Set up the following structure: create a src/ directory, add starter files inside it ([file1], [file2]), and create a top-level README.md and .gitignore.

Once the files exist, append a notes section to the README, then update [file1] with the core logic for [feature].

Search the project for any TODO or FIXME comments using find_text. Find all files matching *.[ext] using search_files.

Rename [file2] to [new-name], then move it into a new docs/ directory.

Generate the project tree, generate a proper README, and generate a CLOUD.md log summarizing what was built.

Finally, validate the workspace configuration, and list the contents of the project root to confirm everything is in place.

โšก Resuming Work After Token Limits

If Claude hits a completion limit mid-task:

  1. Open a new chat session.
  2. Prompt Claude:

    "Check the files in MyProject/src, review CLOUD.md to see what was built so far, and finish implementing the main module."

  3. Claude will use list_directory, read_file, and update_file to continue development seamlessly! ๐Ÿš€

๐Ÿ›ก๏ธ Security Sandbox Architecture ๐Ÿ”’

Workspace MCP strictly isolates all operations to the configured --workspace-root:

Claude Desktop (Client ๐Ÿค–)
       โ”‚
       โ–ผ Stdio Transport โšก
Workspace MCP Server ๐Ÿ–ฅ๏ธ
       โ”‚
       โ–ผ
  Service Layer โš™๏ธ โ”€โ”€โ–บ PathValidator (os.path.realpath Sandbox ๐Ÿ›ก๏ธ)
                               โ”‚
                               โ–ผ
                     Sandboxed Workspace Root ๐Ÿ“
  • ๐Ÿ›ก๏ธ Path Security: All input paths are resolved using os.path.realpath / Path.resolve(strict=False) to prevent .. path traversal sequences and symlink escapes.
  • ๐Ÿšซ Reserved Names: Windows reserved filenames (CON, NUL, AUX, COM1-9) are rejected to preserve cross-platform compatibility.
  • ๐Ÿ” Confirmation Gating: Destructive actions (delete_file, delete_directory, file overwrites) require explicit confirmation flags (confirm=true / overwrite=true).
  • ๐Ÿ“œ Audit Logs: Operations are logged to both operations.jsonl (machine-readable) and operations.log (human-readable text).

๐Ÿงฐ Tool Reference ๐Ÿ“ฆ

Category Tool Description
Project ๐Ÿ—๏ธ create_project Scaffolds directory structure + .gitignore, Dockerfile, README.md, CLOUD.md
delete_project Removes project folder (requires confirm=true)
rename_project Renames or relocates a project directory
Directory ๐Ÿ“ create_directory Creates subdirectories (including missing parents)
delete_directory Deletes directory recursively (requires confirm=true)
list_directory Lists directory files and metadata
File ๐Ÿ“„ create_file Creates a new file
read_file Reads UTF-8 text file content
write_file Overwrites file content (requires confirm=true)
append_file Appends text to end of file
update_file Performs find/replace string substitution or partial update
move_file / rename_file Relocates or renames a file
delete_file Deletes a file (requires confirm=true)
Search ๐Ÿ” search_files Glob search for matching filenames
find_text Grep-like search across text files
project_tree Generates ASCII project tree string
Docs ๐Ÿ“˜ generate_readme Creates/updates README.md
generate_cloud_log Creates CLOUD.md work log
generate_project_tree Saves PROJECT_TREE.md to disk
Validation ๐Ÿฅ validate_workspace Returns server health and settings
validate_path Validates relative path safety without modifying disk

โš™๏ธ Configuration Reference ๐Ÿ”ง

Settings can be specified via command-line flags or environment variables (WORKSPACE_MCP_*):

Option Environment Variable Default Description
--workspace-root WORKSPACE_MCP_WORKSPACE_ROOT ./workspace Base sandboxed directory for all operations
--config WORKSPACE_MCP_CONFIG None Path to YAML/JSON configuration file
max_file_size_bytes WORKSPACE_MCP_MAX_FILE_SIZE_BYTES 10485760 (10MB) File size write limit
require_overwrite_confirmation WORKSPACE_MCP_REQUIRE_OVERWRITE_CONFIRMATION true Enforces confirmation on file overwrite/delete

๐Ÿ“œ License โš–๏ธ

Distributed under the MIT License.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured