Skip to main content
Glama
aaronfeingold

MCP Project Context Server

MCP Project Context Server

A Model Context Protocol (MCP) server that provides persistent project context and planning state between Claude Code sessions. This eliminates the need to re-explain project details, current status, and development context every time you start a new coding session.

What It Does

The MCP Project Context Server acts as a persistent memory layer for your development projects, maintaining:

  • Project Information: Name, description, current phase, and status

  • Technology Stack: Frontend, backend, database, infrastructure, and tooling choices

  • Task Management: Development tasks with priorities, status tracking, and dependencies

  • Decision History: Architectural and technical decisions with reasoning

  • Session Continuity: Goals, achievements, and blockers from previous sessions

  • Development Notes: Important observations and insights

Related MCP server: Knowledge Graph Memory Server

How It Works

The server implements the Model Context Protocol to provide Claude Code with tools for managing project context:

  1. Project Creation: Initialize new projects with tech stack and current phase

  2. Context Retrieval: Get comprehensive project state and history

  3. Task Management: Create, update, and track development tasks

  4. Decision Recording: Document important technical and architectural decisions

  5. Session Tracking: Maintain continuity between development sessions

  6. Note Taking: Capture important insights and observations

Data is stored as JSON files in a local data directory, making it easy to backup, version control, or inspect manually.

Key Features

  • Persistent Context: Project state survives between Claude Code sessions

  • Technology Stack Awareness: Tracks your preferred technologies and tools

  • Task Prioritization: Organize work with priority levels and status tracking

  • Decision Documentation: Maintain architectural decision records (ADRs)

  • Session Goals: Track what you planned vs what you achieved

  • File-Based Storage: Simple JSON storage that's easy to understand and backup

Prerequisites

  • Node.js 18 or higher

  • pnpm package manager

  • Claude Code CLI tool

Installation

  1. Clone and setup the project:

git clone <repository-url>
cd mcp-project-context
pnpm install
  1. Build the server:

pnpm run build
  1. Make the server executable:

chmod +x dist/index.js

Configuration

Claude Code Setup

  1. Create or edit the Claude Code MCP configuration file:

mkdir -p ~/.claude
  1. Add your server configuration to `~/.claude.json:

{
    "mcpServers": {
      "mcp-project-context": {
        "type": "stdio",
        "command": "/path/to/mcp-project-context/dist/index.js",
        "args": [],
        "env": {}
      }
    }
}

Replace /absolute/path/to/your/mcp-project-context with the actual path to your project directory.

  1. Verify the configuration:

cat ~/.claude/mcp.json

Usage

Once configured, Claude Code will automatically start and connect to your MCP server. You can then use natural language to interact with your project context:

Example Commands

Create a new project:

"Create a new project called 'E-commerce Platform' for building a modern online store using Next.js, Node.js, PostgreSQL, and Docker"

Get current project status:

"What's the current status of my project? Where did we leave off?"

Add development tasks:

"Add a high-priority task to implement user authentication with OAuth"

Record architectural decisions:

"Record that we decided to use Prisma as our ORM because it provides better TypeScript support and easier migrations"

Update task status:

"Mark the authentication task as completed"

Add project notes:

"Add a note that the API rate limiting is causing issues in development"

Available Tools

The server provides these tools to Claude Code:

  • create_project - Initialize a new project with tech stack and description

  • get_project_context - Retrieve comprehensive project state and history

  • list_projects - Show all projects ordered by last access

  • add_task - Create new development tasks with priorities

  • update_task - Modify task status, priority, or details

  • add_note - Capture important observations and insights

  • record_decision - Document architectural and technical decisions

  • start_session - Begin a development session with specific goals

Data Storage

Project data is stored in the data directory:

data/
├── projects/
│   ├── project-uuid-1.json
│   ├── project-uuid-2.json
│   └── project-uuid-3.json
└── sessions/
    ├── session-uuid-1.json
    ├── session-uuid-2.json
    └── session-uuid-3.json

Each file contains structured JSON data that you can inspect or backup as needed.

Development

Project Structure

mcp-project-context/
├── src/
│   ├── index.ts              # Entry point
│   ├── server.ts             # MCP server implementation
│   ├── storage/
│   │   ├── project-store.ts  # File-based storage layer
│   │   └── context-manager.ts # Context management logic
│   └── types/
│       └── project-types.ts  # TypeScript type definitions
├── data/                     # Project data storage
├── package.json
├── tsconfig.json
└── README.md

Available Scripts

  • pnpm run build - Compile TypeScript to JavaScript

  • pnpm run start - Run the compiled server

  • pnpm run dev - Run in development mode with auto-reload

Testing the Server

You can test the server manually:

# Start the server directly
node dist/index.js

# The server will wait for MCP protocol messages via stdin

For interactive testing, use the MCP Inspector:

npx @modelcontextprotocol/inspector node dist/index.js

Troubleshooting

Server Connection Issues

  1. Verify the server builds successfully:

pnpm run build
  1. Check that the executable bit is set:

ls -la dist/index.js
chmod +x dist/index.js
  1. Test the server manually:

node dist/index.js
  1. Verify Claude Code configuration:

cat ~/.claude/mcp.json

Data Directory Issues

If you encounter permission errors, ensure the data directory exists and is writable:

mkdir -p data/projects data/sessions
chmod -R 755 data/

Claude Code Logs

Check Claude Code logs for connection issues:

# The server logs errors to stderr, which Claude Code captures
# Check your terminal output when starting Claude Code

Privacy and Data

  • All project data is stored locally on your machine

  • No data is transmitted to external services

  • JSON files can be easily backed up or version controlled

  • Each developer/machine maintains separate project contexts

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Add tests if applicable

  5. Submit a pull request

License

MIT License - see LICENSE file for details

Support

For issues related to:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/aaronfeingold/mcp-project-context'

If you have feedback or need assistance with the MCP directory API, please join our Discord server