MCP Server Neurolorap
MCP サーバー Neurolorap
コード分析とドキュメント化のためのツールを提供する MCP サーバー。
特徴
コード収集ツール
プロジェクト全体からコードを収集する
特定のディレクトリまたはファイルからコードを収集する
複数のパスからコードを収集する
構文強調表示付きのマークダウン出力
目次生成
複数のプログラミング言語のサポート
プロジェクト構造レポーターツール
プロジェクトの構造と指標を分析する
マークダウン形式で詳細なレポートを生成する
ファイルサイズと複雑さの分析
ツリーベースの視覚化
コード編成に関する推奨事項
カスタマイズ可能な無視パターン
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シンボリックリンクが作成されます。
これにより、次のことが保証されます。
クリーンなプロジェクト構造
一貫したファイル構成
生成されたファイルへの簡単なアクセス
複数のプロジェクトのサポート
異なるOS環境間での信頼性の高いファイル同期
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-