Codebase MCP Server

Codebase MCP Server

A Model Context Protocol server that analyzes application codebases with real-time file watching, providing AI assistants like Claude with deep insights into project structure, code patterns, and architecture.

Category
访问服务器

README

Codebase MCP Server

A Model Context Protocol (MCP) server that analyzes any application codebase with real-time file watching, providing AI assistants like Claude with deep insights into your project structure, code patterns, and architecture.

Features

  • Universal Codebase Analysis: Works with any programming language or framework (not just Vite)
  • Real-time File Watching: Automatically stays synchronized with file system changes
  • Smart Framework Detection: Identifies React, Vue, Svelte, Angular, or vanilla projects
  • Intelligent Filtering: Excludes node_modules, build files, and other non-essential content
  • File Categorization: Organizes files into source, config, test, documentation, and build categories
  • Content Search: Search files by name patterns, content, type, or category
  • Multi-project Support: Switch between different projects seamlessly
  • Global Installation: Install once, use anywhere

Installation

Global Installation (Recommended)

# Install globally with Bun
bun install -g @codebase-mcp/server

# Or install globally with npm
npm install -g @codebase-mcp/server

Local Development Installation

# Clone the repository
git clone https://github.com/your-username/codebase-mcp-server.git
cd codebase-mcp-server

# Install dependencies
bun install

# Build the project
bun run build

# Install globally from local build
bun run install-global

Configuration

With Claude Code (Console/CLI)

Add the MCP server using the Claude Code CLI:

# Add the MCP server (local scope - for current project)
claude mcp add codebase-mcp codebase-mcp

# Or add for user scope (available across all projects)
claude mcp add --scope user codebase-mcp codebase-mcp

# Verify it was added
claude mcp list

With Claude Desktop

Add to your Claude Desktop settings:

{
  "mcps": {
    "codebase-mcp": {
      "command": "codebase-mcp",
      "env": {}
    }
  }
}

Usage

Quick Start

  1. Install the MCP server globally (see installation above)
  2. Configure Claude Code/Desktop with the MCP server
  3. Restart Claude Code/Desktop
  4. Analyze any codebase:
Hey Claude, can you ingest the codebase at /path/to/my-project?

Multi-Project Usage

Single Instance (Project Switching)

Within one Claude Code instance, switch between projects:

Claude, ingest the React app at /Users/me/my-react-app
Claude, now switch to analyze the Python project at /Users/me/my-python-project
Claude, go back to the React app and show me the component structure

Multiple Instances (Concurrent Projects)

Each Claude Code instance runs its own isolated MCP server process:

  • Project A (Claude Code in /path/to/project-a/): Own MCP server with PID 1234
  • Project B (Claude Code in /path/to/project-b/): Own MCP server with PID 5678
  • Project C (Claude Code in /path/to/project-c/): Own MCP server with PID 9012

Each instance maintains its own:

  • File index and project structure
  • File watcher for real-time updates
  • Independent state and memory

No conflicts or interference between projects!

Real-time Synchronization

Once a codebase is ingested, the server automatically:

  • Monitors all file changes in real-time
  • Updates the file index when files are created, modified, or deleted
  • Re-analyzes project structure automatically
  • Keeps Claude's understanding up-to-date with your changes

Available Tools

ingest_codebase

Analyzes a Vite project from a given path.

{
  "path": "/path/to/vite/project",
  "includeTests": true,
  "includeDocs": true, 
  "maxDepth": 10
}

get_project_structure

Returns the complete project analysis including:

  • Framework detection
  • File distribution by category
  • Directory structure
  • Package.json analysis
  • Key dependencies

search_files

Search for files by various criteria:

{
  "pattern": "*.vue",
  "content": "useState",
  "fileType": "ts",
  "category": "source"
}

Available Resources

Once a codebase is ingested, you can access:

  • project://structure - Complete project structure as JSON
  • project://summary - Human-readable project summary
  • file://path/to/file - Individual file contents

Example Workflow

# Start the server
bun run server.ts

# In Claude Code:
# "Ingest the codebase at /Users/me/my-vite-app"
# "Show me the project structure"
# "Find all Vue components that use the Composition API"
# "What's the overall architecture of this application?"
# "Generate a new component following this project's patterns"

Supported File Types

Source Files

  • JavaScript/TypeScript (.js, .ts, .jsx, .tsx)
  • Vue components (.vue)
  • Svelte components (.svelte)
  • Stylesheets (.css, .scss, .sass, .less)

Configuration Files

  • package.json, vite.config.*, tsconfig.json
  • Environment files (.env*)
  • Other config formats (.yaml, .toml, etc.)

Documentation

  • Markdown files (.md)
  • README files
  • Documentation directories

Configuration

The server intelligently excludes common directories and files:

Excluded by Default

  • node_modules/
  • dist/, build/
  • .git/, .vscode/, .idea/
  • coverage/, .nyc_output/
  • Log files and OS files

File Size Limits

  • Maximum file size: 1MB
  • Maximum directory depth: 10 levels (configurable)

Security

  • Local only: Runs entirely on your local machine
  • No internet required: All processing happens locally
  • Selective access: Only reads files you explicitly point it to
  • Respects .gitignore patterns: Won't expose sensitive files

Troubleshooting

Common Issues

  1. "Path does not exist": Ensure the provided path is correct and accessible
  2. "No package.json found": This is just a warning - the server works with any codebase
  3. Permission errors: Ensure the server has read access to the target directory

Multiple Instance Debugging

Each MCP server instance shows its Process ID (PID) for debugging:

Successfully ingested codebase from: /path/to/project
Server PID: 12345 (for debugging multiple instances)

Check running instances:

# See all running codebase-mcp processes
ps aux | grep codebase-mcp

# Kill a specific instance if needed
kill 12345

Verify isolation:

  • Each Claude Code instance should show a different PID
  • File changes in Project A should only affect that instance
  • Each instance can watch different codebases simultaneously

Debug Mode

# Run with additional logging
DEBUG=1 bun run server.ts

# Or check Claude Code logs for MCP server output
tail -f ~/.claude/logs/mcp.log

Contributing

This is a generic Vite MCP server that can be extended for specific needs:

  • Add support for other build tools (Webpack, Rollup, etc.)
  • Implement more sophisticated code analysis
  • Add support for monorepos
  • Include dependency graph analysis

License

MIT License - feel free to modify and distribute as needed.

Next Steps

After setting up:

  1. Configure Claude Code to use this MCP server
  2. Point it at one of your Vite projects
  3. Start asking Claude about your codebase structure
  4. Use Claude to generate code that follows your existing patterns

The server provides deep context about your codebase, enabling much more accurate and relevant assistance from Claude.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选