
Megalinter
io.github.DownAtTheBottomOfTheMoleHole由 GitHub 帳號 DownAtTheBottomOfTheMoleHole 發布v4.0.0更新於 Nov 3, 2026
MCP server for running Ox Security MegaLinter via mega-linter-runner
概覽
Megalinter 的本機 MCP 服務;無需登入;STDIO。
暫無 AI 概覽:以下資訊來自註冊中心條目和服務本身。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Megalinter,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
MegaLinter MCP Server
[Down At The Bottom Of The Mole Hole banner]
Note: This is a community-maintained MCP server. It is not an official Model Context Protocol server, but it is sanctioned by Ox Security as a complement to their official MegaLinter tools.
[CI/Publish] [Coverage] [npm] [License: MIT] [Node Version]
A Model Context Protocol (MCP) server for running Ox Security MegaLinter through mega-linter-runner. Works with any CI/CD platform (GitHub Actions, GitLab CI, Azure DevOps, CircleCI, Jenkins) or locally.
Overview
This server provides 15 MCP tools in total: 10 core tools and 5 convenience aliases across execution, discovery, and analysis workflows.
megalinter_quick_actionfor short, natural requests with sensible defaults.megalinter_runto execute MegaLinter with configurable runtime and runner options.megalinter_write_configto generate a minimal.mega-linter.ymlfile.megalinter_list_flavorsto return common MegaLinter flavors.megalinter_get_lintersto discover available linters by language, security focus, and auto-fix capability.megalinter_get_security_infoto group security linters by threat category.megalinter_get_reportersto list supported report output formats and CI-targeted reporters.megalinter_parse_reportsto parse JSON or SARIF report artefacts.megalinter_get_issue_summaryto aggregate report issues by linter and severity.megalinter_get_security_recommendationsto generate security-focused remediation guidance.
Quick Start (Short Prompts)
If you prefer short prompts, use megalinter_quick_action first:
@megalinter quick scan this repository@megalinter security scan@megalinter summarise errors@megalinter list python security linters@megalinter write config
Or use ultra-short aliases for minimal typing:
@megalinter scan— Quick scan with defaults@megalinter summary— Summarise last run's errors@megalinter parse— Parse JSON report@megalinter help_quick— Context-aware help for your project
Platform Compatibility
This MCP server is platform-agnostic and works universally:
- ✅ Locally — Run MegaLinter from your IDE or command line
- ✅ GitHub Actions — Integrate with workflows
- ✅ GitLab CI/CD — Use in GitLab pipelines
- ✅ Azure DevOps — Run in Azure Pipelines
- ✅ CircleCI, Jenkins, Bitbucket Pipelines — Any CI/CD platform with Docker support
- ✅ AI Agents & Copilot — Automated code quality checks via MCP
The only requirement is Docker (or a compatible container runtime like Colima).
Tool Matrix
Tools
megalinter_quick_action
Interactive shortcut that accepts a short request and routes it to the right workflow.
Inputs:
request(string, optional): Short instruction. Default:quick scan.action(string, optional): Explicit quick action (scan,config,flavors,linters,security,reporters,parse,summary,recommendations).scanMode(string, optional): Scan preset (quick,full,security,fix).target(string, optional): Directory to scan. Default:..workingDirectory(string, optional): Command working directory.reportsPath(string, optional): Reports directory. Default:megalinter-reports.reportType(string, optional): Parse format (jsonorsarif).severity(string, optional): Summary filter (error,warning,info).language(string, optional): Language filter for linter queries. For scans, maps to a flavor hint (python,javascript,terraform, and similar).securityOnly(boolean, optional): Return only security linters in linter queries. For scans, forcessecurityflavor.autoFixOnly(boolean, optional): Return only auto-fix linters in linter queries.timeoutMinutes(number, optional): Timeout for scan actions. Default:20.summaryOnly(boolean, optional): Return concise output for scans. Default:true.flavor(string, optional): Optional flavor override for scan actions.fix(boolean, optional): Force auto-fixes for scan actions.targetPath(string, optional): Config output path for write-config requests.
Examples:
request: "quick scan"-> Runsci_lightagainst changed files.request: "full scan"-> Runsallflavor.request: "security scan"-> Runssecurityflavor.request: "summarise errors"-> Returns issue summary filtered to errors.request: "parse sarif report"-> Parses SARIF output.action: "summary", severity: "error"-> Deterministic summary with no phrase parsing.action: "scan", scanMode: "security"-> Deterministic security scan.
scan (Ultra-short alias)
Run a quick scan with minimal typing. Accepts optional parameters for customization.
Inputs:
language(string, optional): Target language mapped to flavor (e.g.,python,javascript,terraform).scanMode(string, optional): Scan preset (quick,full,security,fix). Default:quick.summaryOnly(boolean, optional): Return concise output. Default:true.
Example: @megalinter scan runs a quick scan with concise output.
summary (Ultra-short alias)
Summarise errors from the last MegaLinter run with minimal typing.
Inputs:
severity(string, optional): Filter by severity (error,warning,info).linterFilter(string, optional): Filter by linter name.
Example: @megalinter summary shows all error/warning totals.
parse (Ultra-short alias)
Parse MegaLinter report files with minimal typing.
Inputs:
reportType(string, optional): Report format (jsonorsarif). Default:json.reportsPath(string, optional): Reports directory path.
Example: @megalinter parse parses the JSON report.
megalinter_help_quick
Get context-aware help based on your current repository. Detects languages, frameworks, Docker, Terraform, and security files to suggest relevant commands.
No inputs required.
Example: @megalinter help_quick returns tailored suggestions for your project.
megalinter_run
Use this tool when you need full argument-level control. For short prompts, prefer megalinter_quick_action.
Runs mega-linter-runner via npx.
Inputs:
workingDirectory(string, optional): Command working directory. Defaults to current process directory.path(string, optional): Directory path to lint.flavor(string, optional): MegaLinter flavor. Default:all.release(string, optional): MegaLinter image tag. Default:v9.image(string, optional): Full Docker image override.env(string, optional): Environment variable string passed to--env.fix(boolean, optional): Apply auto-fixes.help(boolean, optional): Showmega-linter-runnerhelp.install(boolean, optional): Generate MegaLinter starter config.containerName(string, optional): Docker container name override.removeContainer(boolean, optional): Remove container after run.configFile(string, optional): Path to.mega-linter.yml.reportsPath(string, optional): Reports directory. Default:megalinter-reports.disableLinters(string, optional): Comma-separated list of linters to disable.lintChangedFilesOnly(boolean, optional): SetsVALIDATE_ALL_CODEBASE=falsewhen true.runnerVersion(string, optional): npm version formega-linter-runner(for examplelatest).timeoutSeconds(number, optional): Timeout in seconds. Default:3600.summaryOnly(boolean, optional): Return concise logs. Default:false.extraArgs(string[], optional): Additional CLI arguments.
megalinter_write_config
Writes a minimal MegaLinter configuration.
Inputs:
targetPath(string, optional): Output file path. Default:.mega-linter.yml.applyFixes(string, optional): Value forAPPLY_FIXES. Default:none.showElapsedTime(boolean, optional): Value forSHOW_ELAPSED_TIME. Default:true.flavorSuggestions(boolean, optional): Value forFLAVOR_SUGGESTIONS. Default:false.disableLinters(string[], optional): Values forDISABLE_LINTERS.
megalinter_list_flavors
Returns the built-in list of common flavors (all, javascript, python, terraform, and others).
megalinter_get_linters
Returns linter metadata from the built-in catalogue and supports targeted filtering.
Inputs:
language(string, optional): Filter by language (for examplepython,javascript,terraform).securityOnly(boolean, optional): Return only security-focused linters.autoFixOnly(boolean, optional): Return only linters with automatic fix capability.
megalinter_get_security_info
Returns security linters grouped into categories such as SAST, secrets, supply chain, container, and infrastructure.
Inputs:
- None.
megalinter_get_reporters
Returns available MegaLinter reporters, including CI-targeted formats.
Inputs:
- None.
megalinter_parse_reports
Parses MegaLinter report files from the reports directory.
Inputs:
reportsPath(string, optional): Report directory path. Default:megalinter-reports.reportType(string, optional): Report type (jsonorsarif). Default:json.
megalinter_get_issue_summary
Summarises issues from megalinter-report.json and can apply severity/linter filters.
Inputs:
reportsPath(string, optional): Report directory path. Default:megalinter-reports.severityFilter(string, optional): Filter results by severity (error,warning,info).linterFilter(string, optional): Filter results by linter name.
megalinter_get_security_recommendations
Generates security recommendations based on active linters in the parsed report data.
Inputs:
reportsPath(string, optional): Report directory path. Default:megalinter-reports.
Prompt Cookbook
Use these copy/paste prompts in Copilot Chat with @megalinter.
CLI tools default to the current workspace root when no path is given.
If you add a file or folder as Copilot context (#file or #folder), reference it in your prompt and the tool will target that path.
Quick Actions (megalinter_quick_action)
Expected output: Routes each short request to the correct tool with sensible defaults.
Deterministic alternatives using explicit action fields:
Run MegaLinter (megalinter_run)
Expected output: Executes linters and reports issues found across all languages. Creates megalinter-reports/ with JSON, SARIF, and text reports.
Create Config (megalinter_write_config)
Expected output: Creates .mega-linter.yml with specified settings ready for customization.
List Flavors (megalinter_list_flavors)
Expected output: Table of flavors (all, python, javascript, go, etc.) with descriptions and use cases.
Query Linters (megalinter_get_linters)
Expected output: Filtered list of Python-related and multi-language security linters from the current catalog that support autofix (if any match the query).
Security Categories (megalinter_get_security_info)
Expected output: Security categories (for example, sast, secrets, supply-chain, container, infrastructure) with associated linters (gitleaks, trivy, etc.).
List Reporters (megalinter_get_reporters)
Expected output: List of reporters (console, json, sarif, github-comment, etc.) with activation methods.
Parse Reports (megalinter_parse_reports)
Expected output: Parsed MegaLinter JSON or SARIF report content as structured data (raw report payload).
Issue Summary (megalinter_get_issue_summary)
Expected output: Summary of issues filtered by severity and linter inputs, aggregated by linter with totals and run counts.
Security Recommendations (megalinter_get_security_recommendations)
Expected output: Actionable security recommendations prioritized by severity with linter names, rule IDs, and suggested next steps.
Dependencies
System Dependencies
- Node.js
>=24.0.0 - npm (bundled with Node.js)
- Docker Engine or Docker Desktop (must be running for
megalinter_run) - Optional local container runtime wrapper such as Colima
npm Dependencies
Runtime:
@modelcontextprotocol/sdk(MCP server SDK)
Development:
typescript(build/compile)tsx(development runner)@types/node(Node.js typings)
Runtime note:
mega-linter-runneris executed vianpxat runtime and can be pinned with therunnerVersiontool input.
Installation
Configuration
Usage with VS Code Copilot Chat
This workspace is preconfigured in .vscode/mcp.json:
Reload VS Code (Cmd+Shift+P → Developer: Reload Window) after changing MCP configuration.
Then query the server from Copilot Chat with @megalinter, for example:
Usage with Other MCP Clients
Use a stdio server configuration that runs the compiled entrypoint:
Build first with npm run build, then start your MCP client.
Running
Development mode:
Debugging
Use .vscode/launch.json:
Debug MCP Server(runsnpm run dev)Debug MCP Server (Built)(runsdist/index.jsafter build)
Set breakpoints in src/index.ts, then press F5.
Testing
See docs/TESTING.md for Copilot Chat scenarios, manual JSON-RPC checks, and troubleshooting guidance.
Quick validation prompt in Copilot Chat:
Interactive VS Code Workflows
1. Shift-Left Security Triage
- Ask Copilot to run a scan:
- Parse the generated report:
- Summarise and prioritise:
- Request security guidance:
2. Language-Specific Linter Onboarding
- Discover linters for your stack:
- Generate starter config:
- Disable unsuitable linters and iterate.
3. CI/CD Reporter Selection
- List reporters:
- Select formats for your pipeline (for example SARIF for security tooling, Markdown for human-readable summaries).
Best Practices
- Start with
megalinter_write_config, then tighten rules in small steps. - Use
lintChangedFilesOnlyduring fast feedback loops, and full scans in CI. - Keep
reportsPathstable so downstream analysis tools always read from a known location. - Prefer
megalinter_get_issue_summaryfor triage before requesting full report dumps. - Run
megalinter_get_security_recommendationsregularly to maintain shift-left coverage.
Additional Use Cases
- Pre-merge quality gates: Run
megalinter_runin PR checks and publish SARIF output. - Repo onboarding packs: Use
megalinter_get_lintersandmegalinter_list_flavorsto choose a baseline quickly. - Security baseline reporting: Combine
megalinter_parse_reportsandmegalinter_get_issue_summaryfor recurring snapshots. - Compliance evidence: Store generated reports and summaries as CI artefacts for audit trails.
- Developer self-service: Let contributors query available linters/reporters directly through Copilot Chat.
Related Projects
Official MegaLinter Resources
- MegaLinter website — Comprehensive documentation and configuration guide
- MegaLinter repository — Source code and issue tracking
- mega-linter-runner — npm package used by this server
CI/CD Integrations
- MegaLinter Azure DevOps Extension — ADO task by the same author (also sanctioned by Ox Security)
- GitHub Actions: Use MegaLinter's official GitHub Action
- GitLab CI/CD: See MegaLinter GitLab integration docs
- Jenkins, CircleCI, and others: Run MegaLinter via Docker in any CI/CD pipeline
Model Context Protocol
Community and Contributing
Attribution and License
Maintained by Carl Dawson under the Down At The Bottom Of The Mole Hole organization.
Licensed under the MIT License. MegaLinter is managed by Ox Security.
來源:README.md,提交 417f4bb
工具
0版本歷史
2- v4.0.0最新Nov 3, 2026
- v3.0.2Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分