Gluo
Free agent tools, no sign-in: browser flows, test inboxes, web extract, site and security scans.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server for auditing Magento projects: update compatibility, module quality, dependency security
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"magento-audit": {
"command": "uvx",
"args": [
"mcp-magento-audit"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add magento-audit -- uvx mcp-magento-auditวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"magento-audit": {
"command": "uvx",
"args": [
"mcp-magento-audit"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"magento-audit": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-magento-audit"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub michalper ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.4.0) เข้า registry 21 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Gluo, Seal Security, Zeqqat
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Free agent tools, no sign-in: browser flows, test inboxes, web extract, site and security scans.
Vulnerability management: scan projects, search sealed packages, manage sealing rules and reports.
Open source MCP gateway: agents call your APIs without holding keys or seeing secrets.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
An MCP server giving an AI agent tools to assess a Magento 2 / Adobe Commerce project along three axes: compatibility with a target PHP and Magento version, quality of custom modules, and dependency security.
It answers the question that never stops coming up in Magento agencies: *"can we bump this client to a newer version, what's blocking it, and where do we start?"*
Status: early stage. Built on evenings/weekends. All eight planned tools
(
get_project_status,check_updates,scan_module_risk,audit_security,check_outdated_packages,
fetch_release_notes,build_upgrade_plan,build_fleet_overview) are working. SeeROADMAP.mdfor
what's next.
composer auditcomposer audit and composer outdated are built into Composer and do their job well — audit_security and check_outdated_packages actually shell out to them rather than reimplementing a CVE database or version comparison. This server targets what plain Composer doesn't give you:
scan_module_risk covers that side with phpcs/phpstan/rector instead.build_upgrade_plan does, folding audit_security's advisories in alongside composer-constraint and code-quality blockers.build_fleet_overview runs the composer-constraint check across every project path given to it in one call — a fast first pass, not a replacement for a full build_upgrade_plan per project.What this server doesn't pretend to be: there's no clean dataset of "module X works with Magento 2.4.8". Results are derived from declarations in composer.json, a code scan, and the vendor's own release notes — this is a decision-support tool, not an oracle. Upgrading a production store still requires testing, not just a report.
git clone https://github.com/michalper/mcp-magento-audit.git
cd mcp-magento-audit python3.12 -m venv .venv .venv/bin/pip install -e ".[dev]"
{
"mcpServers": { "magento-audit": { "command": "/path/to/mcp-magento-audit/.venv/bin/mcp-magento-audit" } } }
scan_module_risk (phpcs/phpstan/rector), check_updates's code_compatibility signal, and audit_security/check_outdated_packages all shell out to the project's own vendor/bin/* and composer. If that project only has PHP/Composer available *inside* a dev container — common for Magento — and this MCP server runs on the host, every one of those checks will correctly report scanned=false with a reason rather than silently being wrong, but that's easy to misread as "found nothing" instead of "couldn't check".
Set MCP_MAGENTO_AUDIT_EXEC_PREFIX to wrap every one of those calls in a command that runs it inside the container instead, e.g.:
export MCP_MAGENTO_AUDIT_EXEC_PREFIX="ddev exec --"
This assumes the usual bind-mount setup (the project directory mirrors the same relative layout inside the container, just under a different root) — host-absolute paths like vendor/bin/phpcs are rewritten relative to the project root before being wrapped, and composer resolves against the container's own PATH rather than the host's. If that assumption doesn't hold for a given setup, running this server from inside the dev container directly (no prefix needed) is the more reliable fallback.
fetch_release_notes calls the GitHub REST API, capped at 60 requests/hour per IP when unauthenticated — easily hit from a shared office/CI IP running build_fleet_overview or build_upgrade_plan across many projects. Set GITHUB_TOKEN (or GH_TOKEN) in the environment to raise that to 5000/hour; a read-only, no-scope token is enough, since this only ever reads public release data.
An agent calling build_upgrade_plan against a store that has one abandoned, PHP-7-only package and no phpstan.neon of its own (trimmed — the real result also includes release_notes, and the full update_check/scan_module_risk results each blocker was derived from):
{
"ready": false, "unverified": [ "phpstan: no phpstan.neon(.dist) in project — skipping static analysis" ], "blockers": [ { "source": "composer", "description": "legacy/module", "detail": "^7.4 does not cover PHP 8.3" } ] }
ready is false because of a real blocker, not a guess; unverified says phpstan never ran at all, so a clean result elsewhere isn't mistaken for "everything was checked".
| Tool | Status | Description |
|---|---|---|
get_project_status | working | Magento version, PHP requirement, package count, abandoned packages |
check_updates | working | per-package verdict against a target PHP/Magento version, plus a Rector-based check of whether the code itself would need changes |
scan_module_risk | working | scans code via phpcs (Magento2 coding standard), the project's own phpstan, and the project's own rector.php (dead code/quality) — plus a separate phpcs pass over third-party vendor/ Magento modules (informational, not an upgrade blocker), a plain regex scan for ObjectManager::getInstance() misuse in app/code (not limited to .phtml, unlike the standard's own sniff), a core-override check (app/code classes that redeclare a vendor/magento/* class under the same FQCN — an upgrade blocker), and a dangling-reference check (di.xml/events.xml/crontab.xml/layout XML/indexer.xml/schema.graphqls naming a PHP class that no longer exists — informational) |
audit_security | working | every installed package in composer.lock — core Magento, third-party vendor/ extensions, dev dependencies — checked for known advisories via composer audit |
check_outdated_packages | working | every installed package checked against composer outdated for a newer available version — independent of known CVEs or target-version compatibility |
fetch_release_notes | working | release notes from magento/magento2 GitHub Releases, without answering from the model's memory |
build_upgrade_plan | working | combines the other tools into a list of concrete blockers, with ready=true only once it's empty |
build_fleet_overview | working | triages many projects at once against a target PHP/Magento version ("which of these N stores can be upgraded today") via check_updates only — a fast first pass, not a replacement for build_upgrade_plan per project |
.venv/bin/python -m pytest --cov # tests + coverage
.venv/bin/ruff check . # lint .venv/bin/mypy src # types .venv/bin/bandit -c pyproject.toml -r src # security .venv/bin/pip-audit # dependency vulnerabilities
Run .venv/bin/pre-commit install once to run all of the above (except pip-audit, which needs network access and stays CI-only) on every commit.
Architectural decisions are recorded in docs/adr/. See CHANGELOG.md for what changed in each release.
MIT