project-analysis-mcp
An MCP server that helps an LLM understand and analyze a codebase. It exposes four read-only tools:
| Tool | Description |
|---|---|
project_stats |
File/line statistics grouped by file extension |
find_code |
Search source files for a text/regex pattern (with context) |
list_modules |
List Python modules with their docstrings and class/function structure |
analyze_dependency |
Analyze how a dependency is imported/used across a project |
Transport: stdio (JSON-RPC). Python ≥ 3.11.
Install & run
Option A — from PyPI (recommended)
uvx project-analysis-mcp
# or
pipx install project-analysis-mcp
Option B — from this repo (editable)
cd mcp-servers/project_analysis_mcp_pkg
uv pip install -e .
# then run:
project-analysis-mcp
Option C — run the module directly (no install)
uv run --directory <repo-root> python mcp-servers/project_analysis_mcp.py
Configure a client
Add the server to your client's MCP config (the exact file depends on the
client: mcp.json, settings.json, claude_desktop_config.json, etc.).
Using the console script (after install):
{
"mcpServers": {
"Project Analysis": {
"command": "project-analysis-mcp"
}
}
}
Using uvx (auto-fetches the package):
{
"mcpServers": {
"Project Analysis": {
"command": "uvx",
"args": ["project-analysis-mcp"]
}
}
}
Using the repo directly (no publish):
{
"mcpServers": {
"Project Analysis": {
"command": "uv",
"args": [
"run", "--directory", "/abs/path/to/repo",
"python", "/abs/path/to/repo/mcp-servers/project_analysis_mcp.py"
],
"env": {}
}
}
}
Notes
- All tools are read-only and operate on a
project_pathyou pass in. - Binary/large/ignored files are skipped automatically.
- Compatible with any MCP client that supports stdio servers
(Claude Code, Claude Desktop, CodeBuddy, custom clients using the
official
mcpSDK, etc.).
Project layout
mcp-servers/
├── project_analysis_mcp.py # thin launcher (kept for repo-local use)
└── project_analysis_mcp_pkg/ # publishable package (single source of truth)
├── pyproject.toml # build + console entry point
├── README.md
└── project_analysis_mcp/
├── __init__.py # server + tools + main()
└── __main__.py # python -m project_analysis_mcp
Metadata
Release files for project-analysis-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| project_analysis_mcp-0.1.0.tar.gz | 6.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| project_analysis_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.4 kB
Release files / project_analysis_mcp-0.1.0.tar.gz
| Download URL | project_analysis_mcp-0.1.0.tar.gz |
|---|---|
| Size | 6.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
650700a7f5a215793c2d6fc5185121844d1a51e0c7ccc01d55314fe44a50a5ff
|
|
BLAKE2b-256 checksum How to use checksums |
24a9de2a22ba81258406af8aafec7f061f237832ff787f36bf37c1111e15a983
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.19
|
Release files / project_analysis_mcp-0.1.0-py3-none-any.whl
| Download URL | project_analysis_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 7.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
94a61b828d1eef2b63e6a3bb83c4c1ef41ea233ccfa32df050eaeef7d15144b6
|
|
BLAKE2b-256 checksum How to use checksums |
c9b34e66468a7a9e5715b22df925cf16b07db065dc56a9e09292d44d16d76e5e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.19
|