# Warp Terminal + Enhanced Dash MCP Integration
## Overview
This guide sets up the Enhanced Dash MCP Server to work seamlessly with Warp Terminal, leveraging your existing Fort Collins development workflow with Neovim, tmux, and Oh-My-Zsh.
## Warp-Specific Configuration
### 1. Warp MCP Server Registration
Add the MCP server to Warp's configuration:
```json
// ~/.warp/mcp-servers.json or via Warp Settings > MCP Servers
{
"enhanced-dash-mcp": {
"config_file": "~/enhanced-dash-mcp/warp-mcp-config.json",
"enabled": true,
"auto_start": true
}
}
```
### 2. Warp Command Palette Integration
Create custom Warp commands for quick MCP server management:
```yaml
# ~/.warp/commands/dash-mcp.yaml
commands:
- name: "dash-mcp-search"
description: "Search Dash documentation via MCP"
command: "echo 'Ask Claude: Search for {query} in Dash docs'"
parameters:
- name: "query"
description: "Documentation search query"
required: true
- name: "dash-mcp-start"
description: "Start Dash MCP Server"
command: "cd ~/enhanced-dash-mcp && ./start-dash-mcp-tmux.sh"
- name: "dash-mcp-status"
description: "Check Dash MCP Server Status"
command: "tmux has-session -t dash-mcp && echo 'β
Running' || echo 'β Stopped'"
- name: "dash-mcp-logs"
description: "View Dash MCP Server Logs"
command: "tmux capture-pane -t dash-mcp -p"
- name: "dash-mcp-restart"
description: "Restart Dash MCP Server"
command: |
tmux kill-session -t dash-mcp 2>/dev/null || true
cd ~/enhanced-dash-mcp && ./start-dash-mcp-tmux.sh
echo "π Dash MCP Server restarted"
```
### 3. Warp Blocks Integration
Create reusable Warp blocks for common documentation workflows:
```yaml
# ~/.warp/blocks/enhanced-dash-mcp.yaml
blocks:
- name: "project-docs-analysis"
description: "Analyze current project and get relevant documentation"
template: |
# Project Documentation Analysis
echo "π Current project: $(basename $(pwd))"
echo "π Analyzing project context..."
# This would be executed via Claude + MCP
echo "Ask Claude: 'Analyze my current project and find relevant documentation'"
echo "Current directory: $(pwd)"
- name: "api-quick-lookup"
description: "Quick API reference lookup"
template: |
# API Reference Lookup
echo "π Looking up API documentation..."
echo "Ask Claude: 'Get latest API reference for {api_name} in {technology}'"
parameters:
- name: "api_name"
description: "API, method, or class name"
- name: "technology"
description: "Technology/library name"
- name: "migration-helper"
description: "Get migration documentation between versions"
template: |
# Migration Documentation Helper
echo "π Finding migration documentation..."
echo "Ask Claude: 'Get migration docs for {tech} from {from_version} to {to_version}'"
parameters:
- name: "tech"
description: "Technology name"
- name: "from_version"
description: "Current version"
- name: "to_version"
description: "Target version"
```
## Warp Terminal Workflow Integration
### Enhanced .zshrc for Warp + MCP
Add these to your `~/.zshrc` for seamless Warp integration:
```bash
# Enhanced Dash MCP aliases for Warp Terminal
export MCP_DASH_DIR="$DASH_MCP_DIR/"
# Warp-specific aliases with better output formatting
alias dash-mcp-start='echo "π Starting Dash MCP Server..." && cd $MCP_DASH_DIR && ./start-dash-mcp-tmux.sh'
alias dash-mcp-stop='echo "π Stopping Dash MCP Server..." && tmux kill-session -t dash-mcp'
alias dash-mcp-restart='dash-mcp-stop; sleep 1; dash-mcp-start'
alias dash-mcp-status='tmux has-session -t dash-mcp 2>/dev/null && echo "β
Dash MCP Server: Running" || echo "β Dash MCP Server: Stopped"'
alias dash-mcp-logs='echo "π Dash MCP Server Logs:" && tmux capture-pane -t dash-mcp -p'
alias dash-mcp-attach='echo "π Attaching to Dash MCP Server..." && tmux attach -t dash-mcp'
# Project-aware documentation shortcuts
function enhanced-dash-mcp-for-project() {
local project_path=${1:-$(pwd)}
echo "π Analyzing project at: $project_path"
echo "π‘ Ask Claude: 'Analyze project at $project_path and suggest relevant documentation'"
}
function dash-api-lookup() {
local api_name=$1
local tech=${2:-""}
if [[ -z "$api_name" ]]; then
echo "Usage: dash-api-lookup <api_name> [technology]"
return 1
fi
echo "π Looking up: $api_name ${tech:+in $tech}"
echo "π‘ Ask Claude: 'Get latest API reference for $api_name ${tech:+in $tech} with examples'"
}
function dash-best-practices() {
local feature=$1
local project_path=${2:-$(pwd)}
if [[ -z "$feature" ]]; then
echo "Usage: dash-best-practices <feature_description> [project_path]"
return 1
fi
echo "π Getting best practices for: $feature"
echo "π‘ Ask Claude: 'Get implementation guidance for $feature in project at $project_path'"
}
# Auto-start MCP server when opening Warp (optional)
if [[ "$TERM_PROGRAM" == "WarpTerminal" ]] && command -v tmux >/dev/null; then
if ! tmux has-session -t dash-mcp 2>/dev/null; then
echo "π Auto-starting Dash MCP Server for Warp session..."
(cd $MCP_DASH_DIR && ./start-dash-mcp-tmux.sh) &
fi
fi
# Warp AI integration helpers
function warp-ask-with-context() {
local query=$1
local project_context=$(pwd)
echo "π€ Warp AI Query with project context:"
echo "π Project: $project_context"
echo "β Query: $query"
echo ""
echo "π‘ Enhanced with Dash MCP: Access to local documentation"
}
```
### Warp Workflows Configuration
Create workflow files for common development scenarios:
```yaml
# ~/.warp/workflows/enhanced-dash-mcp-react.yaml
name: "React Development with Dash Docs"
description: "Streamlined React development workflow with documentation access"
steps:
- name: "setup"
description: "Setup development environment"
commands:
- "dash-mcp-status"
- "dash-mcp-start"
- name: "project-analysis"
description: "Analyze React project"
commands:
- "enhanced-dash-mcp-for-project"
- name: "common-queries"
description: "Common React documentation queries"
suggestions:
- "Ask Claude: 'React hooks best practices for my current project'"
- "Ask Claude: 'Latest React 18 features and migration guide'"
- "Ask Claude: 'Next.js routing patterns and examples'"
```
### Powerlevel10k Integration
Add MCP server status to your Powerlevel10k prompt:
```bash
# Add to ~/.p10k.zsh
# Custom segment for MCP server status
function prompt_dash_mcp_status() {
if tmux has-session -t dash-mcp 2>/dev/null; then
p10k segment -f 2 -t "π" # Green book emoji when running
else
p10k segment -f 1 -t "π" # Red book emoji when stopped
fi
}
# Add to your prompt elements
typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(
# ... your existing elements ...
dash_mcp_status
# ... other elements ...
)
```
## Usage in Warp Terminal
### Quick Commands
```bash
# Start server
βK β "dash-mcp-start"
# Check status
βK β "dash-mcp-status"
# Project analysis
βK β "enhanced-dash-mcp-for-project"
# API lookup
βK β "dash-api-lookup useState react"
# Best practices
βK β "dash-best-practices authentication"
```
### Claude Integration Examples
Once the MCP server is running, use these patterns with Claude in Warp:
```
π¬ "Analyze my current React project and find relevant documentation"
π¬ "Get implementation guidance for WebSocket integration in my current project"
π¬ "Search for Python pandas DataFrame methods with examples"
π¬ "Find migration documentation for upgrading from Next.js 12 to 13"
π¬ "What are the best practices for error handling in my Django project?"
```
## Performance Optimizations for Warp
### 1. Background Server Management
```bash
# Auto-start server in background when Warp opens
if [[ "$TERM_PROGRAM" == "WarpTerminal" ]]; then
(dash-mcp-start &) 2>/dev/null
fi
```
### 2. Intelligent Caching
The server automatically caches frequently accessed documentation for faster responses in Warp's fast terminal environment.
### 3. Tmux Integration
Server runs in a dedicated tmux session, keeping it available across Warp terminal sessions.