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.1
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.1.tar.gz | 6.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| project_analysis_mcp-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.1 kB
Release files / project_analysis_mcp-0.1.1.tar.gz
| Download URL | project_analysis_mcp-0.1.1.tar.gz |
|---|---|
| Size | 6.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
12b15f97704175efa78f744f45147de2dc3e325b5862b8c0b506fca4d47dc9fa
|
|
BLAKE2b-256 checksum How to use checksums |
e68c7f36614fa2e8c9af65d20946ee5075de126277ef8e1501535aa03e2f243d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.19
|
Release files / project_analysis_mcp-0.1.1-py3-none-any.whl
| Download URL | project_analysis_mcp-0.1.1-py3-none-any.whl |
|---|---|
| Size | 7.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3deddb435b0dfbbc3d65bf2edbcfa278e1907231e8071411acdc474677dbd0e2
|
|
BLAKE2b-256 checksum How to use checksums |
c8b3d4300f1e2a0e0af2672605a1dfcdc16100bf8801fb1cdbbba8c208ff08df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.19
|