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.2
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.2.tar.gz | 49.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| project_analysis_mcp-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 56.9 kB
Release files / project_analysis_mcp-0.1.2.tar.gz
| Download URL | project_analysis_mcp-0.1.2.tar.gz |
|---|---|
| Size | 49.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c37aad030c811b120244769be78ce07eec41089e6ad9d109dd6e559c59c7bb0a
|
|
BLAKE2b-256 checksum How to use checksums |
bc1250613c27edb93180036da1cd52a0f6319c5fa9688625d7d126896b29ed03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.19
|
Release files / project_analysis_mcp-0.1.2-py3-none-any.whl
| Download URL | project_analysis_mcp-0.1.2-py3-none-any.whl |
|---|---|
| Size | 7.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
100f1f6d0954b29f29d1b41f791d3a7725ee99c42fbeec710d8c5dd069197337
|
|
BLAKE2b-256 checksum How to use checksums |
d0cd6de938a8bdab893cbae2121298f03be40f4157d1d42791fb6296c59a461d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.19
|