MCP Server Neurolorap
MCP 服务器 Neurolorap
MCP 服务器提供代码分析和文档工具。
特征
代码收集工具
从整个项目收集代码
从特定目录或文件收集代码
从多个路径收集代码
带有语法高亮的 Markdown 输出
目录生成
支持多种编程语言
项目结构报告工具
分析项目结构和指标
以 markdown 格式生成详细报告
文件大小和复杂性分析
基于树的可视化
代码组织建议
可定制的忽略模式
Related MCP server: Code Snippet Server
快速概览
# Using uvx (recommended)
uvx mcp-server-neurolorap
# Or using pip (not recommended)
pip install mcp-server-neurolorap您无需手动安装或配置任何依赖项。该工具将设置您分析和记录代码所需的一切。
安装
您需要在您的机器上安装UV >= 0.4.10。
要安装并运行服务器:
# Install using uvx (recommended)
uvx mcp-server-neurolorap
# Or install using pip (not recommended)
pip install mcp-server-neurolorap这将自动:
安装所有必需的依赖项
配置 Cline 集成
设置服务器以供立即使用
该服务器将通过 Cline 中的 MCP 协议提供。您可以使用它来分析和记录任何项目的代码。
用法
开发者模式
服务器包含一个带有 JSON-RPC 终端接口的开发者模式,可直接交互:
# Start the server in developer mode
python -m mcp_server_neurolorap --dev可用命令:
help:显示可用的命令list_tools:列出可用的 MCP 工具collect <path>:从指定路径收集代码report [path]: 生成项目结构报告exit:退出开发者模式
示例会话:
> 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!通过 MCP 工具
代码收集
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__"]
}
)文件存储
服务器采用结构化方法存储文件:
所有生成的文件都存储在
~/.mcp-docs/<project-name>/在您的项目根目录中创建一个指向此目录的
.neurolora符号链接
这确保了:
清理项目结构
一致的文件组织
轻松访问生成的文件
支持多个项目
跨不同操作系统环境的可靠文件同步
在 IDE 和文件浏览器中快速查看文件
自定义忽略模式
在项目根目录中创建一个.neuroloraignore文件来自定义忽略哪些文件:
# Dependencies
node_modules/
venv/
# Build
dist/
build/
# Cache
__pycache__/
*.pyc
# IDE
.vscode/
.idea/
# Generated files
.neurolora/如果不存在.neuroloraignore文件,则将使用常见的忽略模式创建一个默认文件。
发展
克隆存储库
创建并激活虚拟环境:
python -m venv .venv
source .venv/bin/activate # On Unix
# or
.venv\Scripts\activate # 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测试
该项目通过自动化测试和持续集成保持高质量标准:
全面的测试套件,代码覆盖率超过 80%
在 Python 3.10、3.11 和 3.12 上进行自动测试
通过 GitHub Actions 进行持续集成
定期安全扫描和依赖性检查
有关开发和测试的详细信息,请参阅 PROJECT_SUMMARY.md。
代码质量
该项目通过各种工具保持较高的代码质量标准:
# Format code
black .
# Sort imports
isort .
# Lint code
flake8 .
# Type check
mypy src tests
# Security check
bandit -r src/
safety check所有这些检查都会通过 GitHub Actions 在拉取请求上自动运行。
CI/CD 管道
该项目使用 GitHub Actions 进行持续集成和部署:
在 Python 3.10、3.11 和 3.12 上运行测试
检查代码格式和样式
执行类型检查
运行安全扫描
生成覆盖率报告
构建并验证包
上传测试工件
合并任何更改之前,管道必须通过。
贡献
欢迎大家贡献!请参阅CONTRIBUTING.md中的指南。
执照
MIT 许可证。详情请参阅 LICENSE 文件。
Available Tools
2 toolscode_collectorC
Collect code from files into a markdown document
| Name | Required | Description | Default |
|---|---|---|---|
| input_path | No | . | |
| title | No | Code Collection | |
| subproject_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure but only states the basic action. It does not cover critical aspects like whether this is a read-only operation, if it modifies files, error handling, performance implications, or output details. The description is insufficient for a tool with 3 parameters and an output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It is front-loaded with the core purpose, making it easy to parse quickly. Every word earns its place, though this conciseness comes at the cost of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 3 parameters with 0% schema coverage, an output schema, and no annotations, the description is inadequate. It does not explain parameter roles, behavioral traits, or how the output schema relates to the markdown document. The presence of an output schema reduces the need to describe return values, but other gaps remain significant.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate but adds no parameter information. It does not explain what 'input_path', 'title', or 'subproject_id' mean, their formats, or how they affect the collection process. The description fails to provide any semantic context beyond the tool's name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('collect') and resource ('code from files'), specifying the output format ('into a markdown document'). It distinguishes from the sibling 'project_structure_reporter' by focusing on code content rather than structure, though the distinction could be more explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as the sibling 'project_structure_reporter'. It lacks context about appropriate scenarios, prerequisites, or exclusions, leaving the agent to infer usage based solely on the purpose statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_structure_reporterC
Generate a report of project structure metrics
| Name | Required | Description | Default |
|---|---|---|---|
| output_filename | No | PROJECT_STRUCTURE_REPORT.md | |
| ignore_patterns | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. While 'Generate a report' implies a read-only operation that creates output, it doesn't specify whether this tool scans files, requires specific permissions, has performance implications for large projects, or what format the report takes. The description lacks important behavioral context for a tool that presumably analyzes project structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that gets straight to the point with no wasted words. It's appropriately sized for what it communicates, though what it communicates is minimal. The structure is clear and front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there's an output schema (which should document the return format), the description doesn't need to explain return values. However, for a tool that analyzes project structure with 2 parameters and no annotations, the description is too minimal. It doesn't provide enough context about what 'project structure metrics' includes, how the tool works, or what the parameters control.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage for both parameters, the description provides no information about what 'output_filename' or 'ignore_patterns' mean or how they should be used. The description doesn't mention parameters at all, leaving the agent to guess their purpose from parameter names alone. This is inadequate for a tool with 2 parameters that have no schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Generate a report of project structure metrics' clearly states the verb ('Generate') and resource ('report of project structure metrics'), making the purpose understandable. However, it doesn't distinguish this tool from its sibling 'code_collector' - both could potentially involve project analysis, so the distinction isn't explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There's no mention of when this tool is appropriate, what prerequisites might be needed, or how it differs from the sibling 'code_collector' tool. The agent must infer usage context entirely from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v1.0.0- First observed
code_collector - First observed
project_structure_reporter
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: code_collector focuses on extracting code content into a markdown document, while project_structure_reporter generates metrics about the project's structure. There is no overlap in functionality, making it easy for an agent to choose the right tool.
Both tools follow a consistent noun_verb pattern (code_collector and project_structure_reporter), using snake_case throughout. The naming is predictable and readable, with no deviations in style or convention.
With only 2 tools, the server feels thin for a domain like project analysis or code management. This minimal set may not cover essential operations such as code analysis, dependency checking, or file manipulation, limiting its utility for broader tasks.
Inferred domain is project/code analysis, but the tool surface is severely incomplete. It lacks basic CRUD operations (e.g., no tools for creating, updating, or deleting files), code quality checks, or integration with version control, leaving significant gaps that could cause agent failures.
Related MCP Connectors
MCP server for opencode documentation, generated by doc2mcp.
MCP server for accessing curated awesome list documentation
MCP server for innovationlab documentation, generated by doc2mcp.
Repository knowledge graph MCP server for codebase understanding and debugging.
Related MCP Servers
- FlicenseBqualityDmaintenanceA MCP Server used to collect MCP Servers over the internet.319-
- AlicenseBqualityDmaintenanceA MCP server for managing and storing code snippets in various programming languages, allowing users to create, list, and delete snippets via a standardized interface.38 npm7MIT
- AlicenseBqualityDmaintenanceAn MCP server that provides access to project files and their contents, allowing users to retrieve file data from specified project directories with error handling and configuration options.15MIT
- FlicenseBqualityDmaintenanceAn MCP server that enables interaction with Markdown knowledge bases, allowing users to search and retrieve content by tags, text, URL, or date range from their local markdown files.791-