the-real-snipeit-mcp
npm
v0.1.7
Published by mguttmann — no publish provenance, so origin is unverified, but the source is public: the repository link below is self-declared yet readable, so you can inspect the code before adopting it.
MCP server for the Snipe-IT REST API — 100% endpoint coverage (read + write), hand-wrappers + OpenAPI codegen, stdio transport.
The grade answers one question — how safe is this server for you to adopt — so it is computed in two auditable stages. Nothing below is an opinion or an LLM's guess; every line is a real term the deterministic engine applied, and the same input always yields the same number.
1. Threat score — 100 − 0 = 100. What the published surface and source actually contain:
The deterministic scan raised no scored threat in the surface it inspected — the threat score stayed at 100. Capability observations and advisory notes are recorded but never lower it.
2. Client adoption risk — 100 − 7 = 93. Three small, subtract-only factors that reflect your risk in adopting it — a clean scan proves less on a powerful, unverified or barely-inspectable package, so the grade says so plainly:
| Points | Adoption-risk factor |
|---|---|
| −6 | capability blast radius (high) — client exposure if the model is manipulated |
| −1 | publisher verification (public source) — no provenance, but the source is public and inspectable |
Capability observations and info notes are shown under Findings but never scored.
Open any row's finding below for the file, line and evidence behind a deduction.
This server (without client built-ins) exposes a complete data-exfiltration chain: snipeit_gen_backupsdownloadfile → snipeit_gen_hardware_list_files ⇒ snipeit_gen_hardware_upload_files. Untrusted input is ingested, private data is read, and it can be sent to an external sink — and at least one leg is a direct schema wire (⇒), where a producer's output drops straight into a free-text parameter of the next tool, so the chain needs little agent cooperation. Static analysis proves the primitive exists, not that a specific run will occur.
Fix: Remove one leg of the trifecta: isolate untrusted-input tools from secret-reading tools and from egress tools, or require human approval between them.
Location: flow snipeit_gen_backupsdownloadfile → snipeit_gen_hardware_list_files → snipeit_gen_hardware_upload_files
Each tool and what it can reach — statically extracted from the published source.
snipeit_gen_backupsdownloadfileingests untrusted inputsnipeit_gen_hardware_list_filesreads sensitive datasnipeit_gen_hardware_upload_filesnetwork egresssnipeit_audit_hardwareno sensitive capabilitysnipeit_bulk_checkoutno sensitive capabilitysnipeit_checkin_accessoryno sensitive capabilitysnipeit_checkin_componentno sensitive capabilitysnipeit_checkin_hardwareno sensitive capabilitysnipeit_checkout_accessoryno sensitive capabilitysnipeit_checkout_componentno sensitive capabilitysnipeit_checkout_consumableno sensitive capabilitysnipeit_checkout_hardwareno sensitive capabilitysnipeit_checkout_license_seatno sensitive capabilitysnipeit_create_hardwareno sensitive capabilitysnipeit_create_maintenanceno sensitive capabilitysnipeit_delete_hardwareno sensitive capabilitysnipeit_gen_accessoriesno sensitive capabilitysnipeit_gen_accessories_1no sensitive capabilitysnipeit_gen_accessories_checkinno sensitive capabilitysnipeit_gen_accessories_checkoutno sensitive capabilitysnipeit_gen_accessoriesidno sensitive capabilitysnipeit_gen_accessoriesid_1no sensitive capabilitysnipeit_gen_accessoriesid_2no sensitive capabilitysnipeit_gen_accessoriesid_3no sensitive capabilitysnipeit_gen_accessoriesidcheckedoutno sensitive capabilitysnipeit_gen_backups_1no sensitive capabilitysnipeit_gen_categories_1no sensitive capabilitysnipeit_gen_categories_2no sensitive capabilitysnipeit_gen_categoriesidno sensitive capabilitysnipeit_gen_categoriesid_1no sensitive capabilitysnipeit_gen_categoriesid_2no sensitive capabilitysnipeit_gen_categoriesid_3no sensitive capabilitysnipeit_gen_companiesno sensitive capabilitysnipeit_gen_companies_1no sensitive capabilitysnipeit_gen_companiesidno sensitive capabilitysnipeit_gen_companiesid_1no sensitive capabilitysnipeit_gen_companiesid_2no sensitive capabilitysnipeit_gen_companiesid_3no sensitive capabilitysnipeit_gen_componentsno sensitive capabilitysnipeit_gen_components_1no sensitive capabilitysnipeit_gen_componentsidno sensitive capabilitysnipeit_gen_componentsid_1no sensitive capabilitysnipeit_gen_componentsid_2no sensitive capabilitysnipeit_gen_componentsid_3no sensitive capabilitysnipeit_gen_componentsidassetsno sensitive capabilitysnipeit_gen_componentsidcheckinno sensitive capabilitysnipeit_gen_componentsidcheckoutno sensitive capabilitysnipeit_gen_consumablesno sensitive capabilitysnipeit_gen_consumables_1no sensitive capabilitysnipeit_gen_consumables_2no sensitive capabilitysnipeit_gen_consumablesidno sensitive capabilitysnipeit_gen_consumablesid_1no sensitive capabilitysnipeit_gen_consumablesid_2no sensitive capabilitysnipeit_gen_consumablesidcheckoutno sensitive capabilitysnipeit_gen_departmentsno sensitive capabilitysnipeit_gen_departments_1no sensitive capabilitysnipeit_gen_departments_editno sensitive capabilitysnipeit_gen_departmentsidno sensitive capabilitysnipeit_gen_departmentsid_1no sensitive capabilitysnipeit_gen_departmentsid_2no sensitive capabilitysnipeit_gen_fieldsno sensitive capabilitysnipeit_gen_fields_1no sensitive capabilitysnipeit_gen_fields_2no sensitive capabilitysnipeit_gen_fieldsetsno sensitive capabilitysnipeit_gen_fieldsetsidno sensitive capabilitysnipeit_gen_fieldsetsid_1no sensitive capabilitysnipeit_gen_fieldsetsid_2no sensitive capabilitysnipeit_gen_fieldsetsidfieldsno sensitive capabilitysnipeit_gen_fieldsidno sensitive capabilitysnipeit_gen_fieldsid_1no sensitive capabilitysnipeit_gen_fieldsid_2no sensitive capabilitysnipeit_gen_fieldsidassociateno sensitive capabilitysnipeit_gen_fieldsiddisassociateno sensitive capabilitysnipeit_gen_get_new_endpointno sensitive capabilitysnipeit_gen_get_new_endpoint_consumables_id_userno sensitive capabilitysnipeit_gen_groups_1no sensitive capabilitysnipeit_gen_groupsidno sensitive capabilitysnipeit_gen_groupsid_1no sensitive capabilitysnipeit_gen_groupsid_2no sensitive capabilitysnipeit_gen_groupsid_3no sensitive capabilitysnipeit_gen_groupsid_4no sensitive capabilitysnipeit_gen_hardware_by_asset_tagno sensitive capabilitysnipeit_gen_hardware_by_idno sensitive capabilitysnipeit_gen_hardware_by_serialno sensitive capabilitysnipeit_gen_hardware_checkinno sensitive capabilitysnipeit_gen_hardware_checkoutno sensitive capabilitysnipeit_gen_hardware_createno sensitive capabilitysnipeit_gen_hardware_deleteno sensitive capabilitysnipeit_gen_hardware_files_deleteno sensitive capabilitysnipeit_gen_hardware_listno sensitive capabilitysnipeit_gen_hardware_partial_updateno sensitive capabilitysnipeit_gen_hardware_updateno sensitive capabilitysnipeit_gen_hardwareauditno sensitive capabilitysnipeit_gen_hardwareauditdueno sensitive capabilitysnipeit_gen_hardwareauditoverdueno sensitive capabilitysnipeit_gen_hardwareidfilesfile_idno sensitive capabilitysnipeit_gen_hardwareidlicensesno sensitive capabilitysnipeit_gen_hardwareidrestoreno sensitive capabilitysnipeit_gen_licensesno sensitive capabilitysnipeit_gen_licensesidno sensitive capabilitysnipeit_gen_licensesid_1no sensitive capabilitysnipeit_gen_licensesid_2no sensitive capabilitysnipeit_gen_licensesid_3no sensitive capabilitysnipeit_gen_licensesidseatsno sensitive capabilitysnipeit_gen_licensesidseatsseat_idno sensitive capabilitysnipeit_gen_licensesidseatsseat_id_2no sensitive capabilitysnipeit_gen_locationsno sensitive capabilitysnipeit_gen_locations_1no sensitive capabilitysnipeit_gen_locations_2no sensitive capabilitysnipeit_gen_locations_3no sensitive capabilitysnipeit_gen_locationsidno sensitive capabilitysnipeit_gen_locationsid_2no sensitive capabilitysnipeit_gen_maintenancesno sensitive capabilitysnipeit_gen_maintenances_1no sensitive capabilitysnipeit_gen_maintenances_copyno sensitive capabilitysnipeit_gen_maintenances_copy_1no sensitive capabilitysnipeit_gen_maintenancesidno sensitive capabilitysnipeit_gen_manufacturersno sensitive capabilitysnipeit_gen_manufacturers_1no sensitive capabilitysnipeit_gen_manufacturersidno sensitive capabilitysnipeit_gen_manufacturersid_1no sensitive capabilitysnipeit_gen_manufacturersid_2no sensitive capabilitysnipeit_gen_manufacturersid_3no sensitive capabilitysnipeit_gen_modelsno sensitive capabilitysnipeit_gen_models_1no sensitive capabilitysnipeit_gen_models_files_listno sensitive capabilitysnipeit_gen_modelsidno sensitive capabilitysnipeit_gen_modelsid_1no sensitive capabilitysnipeit_gen_modelsid_2no sensitive capabilitysnipeit_gen_modelsid_3no sensitive capabilitysnipeit_gen_modelsidfilesno sensitive capabilitysnipeit_gen_modelsidfilesfile_idno sensitive capabilitysnipeit_gen_post_auditidno sensitive capabilitysnipeit_gen_put_licensesidseatsseat_idno sensitive capabilitysnipeit_gen_reportsactivityno sensitive capabilitysnipeit_gen_statuslabelsno sensitive capabilitysnipeit_gen_statuslabels_1no sensitive capabilitysnipeit_gen_statuslabelsidno sensitive capabilitysnipeit_gen_statuslabelsid_1no sensitive capabilitysnipeit_gen_statuslabelsid_2no sensitive capabilitysnipeit_gen_statuslabelsid_3no sensitive capabilitysnipeit_gen_statuslabelsidassetlistno sensitive capabilitysnipeit_gen_suppliersno sensitive capabilitysnipeit_gen_suppliersidno sensitive capabilitysnipeit_gen_testinputno sensitive capabilitysnipeit_gen_update_fieldsno sensitive capabilitysnipeit_gen_usersno sensitive capabilitysnipeit_gen_users_2no sensitive capabilitysnipeit_gen_users_3no sensitive capabilitysnipeit_gen_users_restoreno sensitive capabilitysnipeit_gen_usersidno sensitive capabilitysnipeit_gen_usersid_1no sensitive capabilitysnipeit_gen_usersid_2no sensitive capabilitysnipeit_gen_usersidaccessoriesno sensitive capabilitysnipeit_gen_usersidassetsno sensitive capabilitysnipeit_gen_usersideulasno sensitive capabilitysnipeit_gen_usersidlicensesno sensitive capabilitysnipeit_gen_usersmeno sensitive capabilitysnipeit_get_hardware_by_idno sensitive capabilitysnipeit_get_hardware_by_serialno sensitive capabilitysnipeit_get_hardware_by_tagno sensitive capabilitysnipeit_get_license_seatsno sensitive capabilitysnipeit_get_locationno sensitive capabilitysnipeit_get_statuslabel_assetsno sensitive capabilitysnipeit_get_userno sensitive capabilitysnipeit_get_user_accessoriesno sensitive capabilitysnipeit_get_user_assetsno sensitive capabilitysnipeit_get_user_licensesno sensitive capabilitysnipeit_list_accessoriesno sensitive capabilitysnipeit_list_audit_dueno sensitive capabilitysnipeit_list_audit_overdueno sensitive capabilitysnipeit_list_componentsno sensitive capabilitysnipeit_list_consumablesno sensitive capabilitysnipeit_list_hardwareno sensitive capabilitysnipeit_list_licensesno sensitive capabilitysnipeit_list_locationsno sensitive capabilitysnipeit_list_maintenancesno sensitive capabilitysnipeit_list_statuslabelsno sensitive capabilitysnipeit_list_usersno sensitive capabilitysnipeit_meno sensitive capabilitysnipeit_raw_requestno sensitive capabilitysnipeit_search_hardwareno sensitive capabilitysnipeit_update_hardwareno sensitive capabilityCross-tool combinations that form a data-exfiltration primitive (untrusted input → sensitive source → external sink).
Scan history per published version. The engine is deterministic — the same version always yields the same score, so a changed score means the package itself changed.
| Version | Score | Findings | Engine | Scanned |
|---|---|---|---|---|
v0.1.7 latest |
A 93/100 | 1 | 1.13.0 | 2026-09-08 |
Show this server's live Trust Score in your README, docs or website. The badge is served straight from the registry and updates automatically after every rescan — no API key needed. It links back to this page, so anyone who sees the grade can also read the findings behind it instead of taking a number on faith.
The score above is reproducible: the same package version always yields the same result. Run it locally or over the free API — no account, no LLM, fully deterministic.
npx mcptrustchecker scan the-real-snipeit-mcp --online
Hotel booking MCP server — 300K+ properties, real confirmation numbers, loyalty programs. Builders monetize every booking via Stripe Connect. The first MCP server that completes real hotel reservations inside AI conversations.
Manage AdGuard Home through AI assistants
Read-only Azure DevOps for MCP clients using only your existing browser session — no PAT, no Azure CLI. Browse work items, pull requests, comments, attachments and Artifacts feeds across every project, repo and feed you can access.
MCP server for Adobe Experience Manager Assets integration development
Servidor MCP para el tiempo oficial de España (API pública OpenData de AEMET). Predicción, observación y avisos como herramientas MCP tipadas.
A standalone MCP stdio bridge for Affinity by Canva's local MCP SSE server.