mcp server neurolora p
MCP server for collecting code from files and directories into a single markdown document.
MCP server for collecting code from files and directories into a single markdown document.
MCP server providing tools for code analysis and documentation.
# Using uvx (recommended)
uvx mcp-server-neurolorap
# Or using pip (not recommended)
pip install mcp-server-neurolorap
You do not need to install or configure any dependencies manually. The tool will set up everything you need to analyze and document code.
You'll need to have UV >= 0.4.10 installed on your machine.
To install and run the server:
# Install using uvx (recommended)
uvx mcp-server-neurolorap
# Or install using pip (not recommended)
pip install mcp-server-neurolorap
This will automatically:
The server will be available through the MCP protocol in Cline. You can use it to analyze and document code from any project.
The server includes a developer mode with JSON-RPC terminal interface for direct interaction:
# Start the server in developer mode
python -m mcp_server_neurolorap --dev
Available commands:
help
: Show available commandslist_tools
: List available MCP toolscollect <path>
: Collect code from specified pathreport [path]
: Generate project structure reportexit
: Exit developer modeExample session:
> help
Available commands:
- help: Show this help message
- list_tools: List available MCP tools
- collect <path>: Collect code from specified path
- report [path]: Generate project structure report
- exit: Exit the terminal
> list_tools
["code_collector", "project_structure_reporter"]
> collect src
Code collection complete!
Output file: code_collection.md
> report
Project structure report generated: PROJECT_STRUCTURE_REPORT.md
> exit
Goodbye!
from modelcontextprotocol import use_mcp_tool
# Collect code from entire project
result = use_mcp_tool(
"code_collector",
{
"input": ".",
"title": "My Project"
}
)
# Collect code from specific directory
result = use_mcp_tool(
"code_collector",
{
"input": "./src",
"title": "Source Code"
}
)
# Collect code from multiple paths
result = use_mcp_tool(
"code_collector",
{
"input": ["./src", "./tests"],
"title": "Project Files"
}
)
# Generate project structure report
result = use_mcp_tool(
"project_structure_reporter",
{
"output_filename": "PROJECT_STRUCTURE_REPORT.md"
}
)
# Analyze specific directory with custom ignore patterns
result = use_mcp_tool(
"project_structure_reporter",
{
"output_filename": "src_structure.md",
"ignore_patterns": ["*.pyc", "__pycache__"]
}
)
The server uses a structured approach to file storage:
~/.mcp-docs/<project-name>/
.neurolora
symlink is created in your project root pointing to this directoryThis ensures:
Create a .neuroloraignore
file in your project root to customize which files are ignored:
# Dependencies
node_modules/
venv/
# Build
dist/
build/
# Cache
__pycache__/
*.pyc
# IDE
.vscode/
.idea/
# Generated files
.neurolora/
If no .neuroloraignore
file exists, a default one will be created with common ignore patterns.
python -m venv .venv
source .venv/bin/activate # On Unix
# or
.venvScriptsactivate # On Windows
pip install -e ".[dev]"
# Normal mode (MCP server with stdio transport)
python -m mcp_server_neurolorap
# Developer mode (JSON-RPC terminal interface)
python -m mcp_server_neurolorap --dev
The project maintains high quality standards through automated testing and continuous integration:
For development and testing details, see PROJECT_SUMMARY.md.
The project maintains high code quality standards through various tools:
# Format code
black .
# Sort imports
isort .
# Lint code
flake8 .
# Type check
mypy src tests
# Security check
bandit -r src/
safety check
All these checks are run automatically on pull requests through GitHub Actions.
The project uses GitHub Actions for continuous integration and deployment:
The pipeline must pass before merging any changes.
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
MIT License. See LICENSE file for details.
[
{
"description": "Collect code from files into a markdown document",
"inputSchema": {
"properties": {
"input_path": {
"anyOf": [
{
"type": "string"
},
{
"items": {
"type": "string"
},
"type": "array"
}
],
"default": ".",
"title": "Input Path"
},
"subproject_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "pyproject.toml",
"type": "blob"
},
"title": "Subproject Id"
},
"title": {
"default": "Code Collection",
"title": "Title",
"type": "string"
}
},
"title": "code_collectorArguments",
"type": "object"
},
"name": "code_collector"
},
{
"description": "Generate a report of project structure metrics",
"inputSchema": {
"properties": {
"ignore_patterns": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": {
"path": "pyproject.toml",
"type": "blob"
},
"title": "Ignore Patterns"
},
"output_filename": {
"default": "PROJECT_STRUCTURE_REPORT.md",
"title": "Output Filename",
"type": "string"
}
},
"title": "project_structure_reporterArguments",
"type": "object"
},
"name": "project_structure_reporter"
}
]