DAZ Command MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
pip install -r requirements.txt
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add daz-command-mcp -- python "<FULL_PATH_TO_DAZ_COMMAND_MCP>/dist/index.js"

Replace <FULL_PATH_TO_DAZ_COMMAND_MCP>/dist/index.js with the actual folder you prepared in step 1.

README.md

Session-based command execution with intelligent LLM-powered summarization.

DAZ Command MCP Server

DAZ Command MCP Logo

A Model Context Protocol (MCP) server that provides session-based command execution with intelligent LLM-powered summarization.


🚀 Features

  • 🔧 Session Management: Create, open, and manage isolated command execution sessions
  • ⚡ Command Execution: Run shell commands with timeout controls and working directory management
  • 📁 File Operations: Read and write text files with comprehensive error handling
  • 🤖 LLM Summarization: Automatic session progress tracking using structured LLM responses
  • 📋 Event Logging: Complete audit trail of all operations within sessions
  • 🔒 Thread-Safe: Robust concurrent operation with proper synchronization

📦 Installation

Prerequisites

  • Python 3.8+
  • fastmcp library
  • dazllm library for LLM integration

Quick Setup

  1. Clone this repository:
git clone https://github.com/yourusername/daz-command-mcp.git
cd daz-command-mcp
  1. Install dependencies:
pip install -r requirements.txt
  1. Configure your LLM model in the script (default: lm-studio:openai/gpt-oss-20b)

🎯 Usage

Starting the Server

python main.py

Available Tools

Session Management
  • daz_sessions_list() - List all sessions and identify the active one
  • daz_session_create(name, description) - Create and activate a new session
  • daz_session_open(session_id) - Open and activate an existing session
  • daz_session_current() - Get details of the currently active session
  • daz_session_close() - Close the current session
  • daz_session_rename(old_name, new_name) - Rename an existing session
  • daz_session_delete(session_name) - Delete a session by moving to deleted_sessions
Command & File Operations

All command and file operations require an active session and context parameters:

  • daz_command_cd(directory, current_task, summary_of_what_we_just_did, summary_of_what_we_about_to_do) - Change working directory
  • daz_command_read(file_path, current_task, summary_of_what_we_just_did, summary_of_what_we_about_to_do) - Read a text file
  • daz_command_write(file_path, content, current_task, summary_of_what_we_just_did, summary_of_what_we_about_to_do) - Write a text file
  • daz_command_run(command, current_task, summary_of_what_we_just_did, summary_of_what_we_about_to_do, timeout=60) - Execute shell commands
Learning & Instructions
  • daz_add_learnings(learning_info) - Add important discoveries and context to the session
  • daz_instructions_read() - Read current session instructions
  • daz_instructions_add(instruction) - Add a new instruction to the session
  • daz_instructions_replace(instructions) - Replace all instructions with a new list
  • daz_record_user_request(user_request) - Record a user request at the start of multi-step tasks

Example Workflow

# Create a new session
daz_session_create("Setup Project", "Setting up a new Python project with dependencies")

# Navigate to project directory  
daz_command_cd("/path/to/project", 
               "Setting up Python project",
               "Created new session for project setup", 
               "Navigate to project root directory")

# Run commands
daz_command_run("pip install -r requirements.txt",
                "Setting up Python project", 
                "Navigated to project directory",
                "Install project dependencies")

# Read configuration
daz_command_read("config.json",
                 "Setting up Python project",
                 "Installed dependencies successfully", 
                 "Review current configuration settings")

# Write new file
daz_command_write("setup.py", "...",
                  "Setting up Python project",
                  "Reviewed configuration file",
                  "Create package setup file")

🏗️ Architecture

Session Storage

Sessions are stored as JSON files in the sessions/ directory with the following structure:

{
  "id": "unique-session-id",
  "name": "Session Name", 
  "description": "Detailed description",
  "created_at": 1692123456.789,
  "updated_at": 1692123456.789,
  "summary": "LLM-generated summary",
  "progress": "Current progress status",
  "current_directory": "/current/working/dir",
  "events_count": 42
}

Event Logging

Every operation is logged with comprehensive details in event_log.jsonl:

{
  "timestamp": 1692123456.789,
  "type": "run|read|write|cd|user_request|learning",
  "current_task": "The task being worked on",
  "summary_of_what_we_just_did": "What was just completed",
  "summary_of_what_we_about_to_do": "What's planned next",
  "inputs": {...},
  "outputs": {...}, 
  "duration": 0.123
}

LLM Integration

The server uses asynchronous LLM processing to maintain session summaries:

  • 🔄 Background Processing: Summarization runs in a sep

Tools (16)

daz_sessions_listList all sessions and identify the active one
daz_session_createCreate and activate a new session
daz_session_openOpen and activate an existing session
daz_session_currentGet details of the currently active session
daz_session_closeClose the current session
daz_session_renameRename an existing session
daz_session_deleteDelete a session by moving to deleted_sessions
daz_command_cdChange working directory
daz_command_readRead a text file
daz_command_writeWrite a text file
daz_command_runExecute shell commands
daz_add_learningsAdd important discoveries and context to the session
daz_instructions_readRead current session instructions
daz_instructions_addAdd a new instruction to the session
daz_instructions_replaceReplace all instructions with a new list
daz_record_user_requestRecord a user request at the start of multi-step tasks

Configuration

claude_desktop_config.json
{ "mcpServers": { "daz-command": { "command": "python", "args": ["/path/to/daz-command-mcp/main.py"] } } }

Try it

Create a new session called 'Project Cleanup' to organize my directory.
Run 'ls -la' in the current directory and summarize the file structure.
Read the README.md file and add a learning note about the project dependencies.
Write a new script file named 'deploy.sh' with the provided content and record the request.

Frequently Asked Questions

What are the key features of DAZ Command MCP?

Isolated session management for command execution. Automated LLM-powered progress tracking and summarization. Comprehensive event logging for audit trails. Thread-safe shell command execution with timeout controls. Integrated file read and write operations.

What can I use DAZ Command MCP for?

Managing isolated development workflows for different projects. Tracking progress and decisions during complex multi-step shell tasks. Maintaining an audit trail of file modifications and command history. Automating documentation of project discoveries and instructions.

How do I install DAZ Command MCP?

Install DAZ Command MCP by running: pip install -r requirements.txt

What MCP clients work with DAZ Command MCP?

DAZ Command MCP works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep DAZ Command MCP docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare