contextmgr-mcp
2
Context Manager MCP Server is a comprehensive implementation of the Model Context Protocol, aimed at managing development context and workflows efficiently. It offers project and task management, along with session capabilities, making it ideal for developers seeking organized workflow solutions.
Context Manager MCP Server
A Model Context Protocol (MCP) server implementation for managing development context and workflow.
Features
- Socket-based transport with reliable message framing
- Full JSON-RPC 2.0 protocol support
- Session management with capability negotiation
- Extensible tool registry system
- Project, workpackage, and task management
- Checkpoint and restore functionality
- QA review workflow support
Initial Setup
# Install dependencies
npm install
# First-time build
npm run build
Usage
Starting the Server
# Development mode (no build required, uses tsx for on-the-fly compilation)
npm run dev
# Production mode (requires build)
npm start
# Start with debug logging
DEBUG=1 npm run dev
# Start on specific port
MCP_PORT=44558 npm run dev
Development Mode
# Run with hot reloading (preferred during development)
npm run dev
# Watch mode for TypeScript compilation (if you prefer running the compiled version)
npm run watch
# In a separate terminal when using watch mode
npm start
Clean Start
If you encounter any issues, you can try a clean build:
# Remove build artifacts
rm -rf dist/
# Reinstall dependencies
npm ci
# Rebuild the project
npm run build
# Start in development mode
npm run dev
Architecture
Core Components
-
Message Framing
- Content-Length based protocol
- Reliable message boundary handling
- Buffer management
-
Transport Layer
- TCP socket-based communication
- Connection management
- Event-driven architecture
-
Session Management
- Client session tracking
- Capability negotiation
- State persistence
-
Tool Registry
- Dynamic tool registration
- Input validation
- Result formatting
Tools
-
Project Management
- Create/Get projects
- Project checkpoints
- State restoration
-
Work Package Management
- Create/Get work packages
- Progress tracking
- Status updates
-
Task Management
- Create/Update tasks
- File change tracking
- Task checkpointing
-
QA Tools
- Review workflow
- Fix requests
- Work package acceptance
Configuration
Environment variables:
DEBUG
: Enable debug logging (0/1)MCP_PORT
: Server port (default: 44557)
Protocol
The server implements the Model Context Protocol with JSON-RPC 2.0:
interface MCPMessage {
jsonrpc: "2.0";
id: number;
method?: string; // for requests
params?: any; // for requests
result?: any; // for responses
error?: { // for error responses
code: number;
message: string;
data?: any;
};
}
Message Flow
- Client connects via TCP
- Client sends initialize request
- Server responds with capabilities
- Normal message exchange begins
- Client can shutdown/exit
Development
See Initial Setup and Development Mode sections above.
Contributing
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
License
ISC License