IT-MCP
Provides comprehensive macOS, Linux, and Windows system administration, diagnostics, and optimization tools including network inspection, security scanning, compliance auditing, database diagnostics, and structured DevOps task planning.
README
IT-MCP
Node-based Model Context Protocol (MCP) server that wraps a curated collection of macOS administration, diagnostics, and optimisation tasks. Tools are exposed over the MCP interface so they can be orchestrated by compatible AI assistants or automation frameworks.
Highlights
- System health snapshots (uptime, load, memory, disk, launch services)
- Tunable cleanup routines with safe dry-run previews
- Log aggregation with predicate and process filters
- Homebrew hygiene reports and application sizing
- Network inspection (connections, listeners, firewall, Wi-Fi, bandwidth)
- Guided
tcpdumppacket capture with managed output locations - Email diagnostics covering MX records, authentication, connectivity, and mailbox consumption
- Microsoft 365 and Intune tenant insights via the
m365CLI - VPN troubleshooting, ad-hoc SSH execution, and remote Ubuntu/Debian health reports
- Web operations tooling for server process visibility and HTTP performance probes
- Network port scanning and firewall diagnostics using netcat and native macOS tooling
- Structured thinking framework and thought tracking utilities for planning sessions
- Related-thought analysis, progress tracking, and import/export helpers for thinking pipelines
- First capture automatically bootstraps from existing Markdown notes (
*.md,Claude.md,Agents.md) when present - DevOps task planner converts thought history into CI/CD stages, debugging tracks, and Linear/Notion-ready payloads
- Compliance auditing and evidence packaging aligned with Essential 8 and NIST frameworks
- Network infrastructure diagnostics covering path tracing, firewall policy audits, and dual-stack health
- Security scanning orchestration for CodeQL and OpenVAS (with optional install automation)
- Ubuntu & Debian administration tooling (APT, systemd, Nginx, PM2, advanced Docker/PostgreSQL, SMB/NFS/ACL, firewall & security hardening, storage buckets, Kubernetes ops)
- Remote Windows administration via PowerShell remoting (service/process control, event logs, firewall, scheduled tasks)
- Windows Server management extensions for updates, roles/features, and live performance telemetry
- Cross-vendor firewall troubleshooting playbooks (Palo Alto Networks, PAN-OS, Cisco ASA, Fortinet, Check Point, pfSense)
- PAN-OS CLI runner for direct operational commands over SSH
- Deep macOS diagnostics & repair workflows (local or remote via SSH)
- Database server diagnostics covering PostgreSQL, Redis, Keycloak, Nginx, and firewall posture
- Structured reporting hub that links tool outputs into the Structured Thinking timeline for cross-tool insights
- Wireless diagnostics for macOS (signal status, nearby scan, throughput sampling, Wi-Fi subsystem logs)
- Capability-aware execution router ready for delegated remote agents across macOS/Linux/Windows
Getting Started
npm install
npm run build
Run during development with TypeScript sources:
npm run dev
Ship the compiled server over stdio (useful for MCP shells such as Claude Desktop):
npm start
MCP Tools
| Tool | Purpose | Notable parameters |
|---|---|---|
system-overview |
Consolidated uptime, load, memory, disk, and top processes | topProcesses (1-50) |
list-launch-daemons |
Lists launchd services for startup triage | filter substring |
m365-intune-summary |
Microsoft 365/Intune overview using the m365 CLI | includeUsers, includeGroups, includeIntuneDevices, includeServiceHealth |
web-service-status |
Checks nginx/Apache/Node processes, optional headers & Lighthouse audit | url, includeHeaders, includeLighthouse, timeoutSeconds |
web-performance-probe |
Curl-based timing probe for a URL | url, method, headers[], timeoutSeconds |
network-port-scan |
TCP/UDP port scan with optional nmap | host, ports, protocol, timeoutSeconds, useNmap |
firewall-diagnostics |
pfctl and application firewall status | none |
structured-thinking-framework |
Provides staged thinking framework | includeExamples, customStages[] |
thought-tracker |
Records sequential thoughts with metadata | entries[], autoNumbering |
devops-task-plan |
Builds DevOps tasks, CI/CD pipeline, and debug tracks from thought history | goal, context, assumptions[], constraints[], stages[], storagePath |
structured-diagnostics |
Audits structured thinking coverage, stale entries, and high-priority follow-ups | staleHours, storagePath |
structured-report |
Generates Markdown/JSON reports from structured thinking timeline | format, includeTimeline, maxEntries, storagePath |
compliance-audit |
Runs Essential 8/NIST assessments and builds evidence packages | systems[], controls[], framework, generateEvidence, evidenceName |
network-infra-diagnostics |
Generates path traces, firewall reviews, and dual-stack checks | source, destination, includeFirewallAnalysis, firewallPolicy[], performDualStackCheck |
firewall-toolkit |
Builds vendor-aware firewall troubleshooting runbooks | vendor, scenario, context |
mac-diagnostics |
Deep macOS analytics & repair (local or SSH) | mode, operation, suite, repairAction, host, username |
database-diagnostics |
Database host health (Postgres/Redis/Keycloak/Nginx/firewall/system) | mode, suites[], host, username |
scan_security_vulnerabilities |
Installs/runs CodeQL & OpenVAS scans | installCodeql, installOpenvas, codeql{}, openvas{} |
ubuntu-admin |
Executes Ubuntu administration commands | action, plus service/docker/postgres/network/filesystem/virtualmin/security/kubernetes options |
debian-admin |
Executes Debian administration commands | action, plus service/docker/postgres/network/filesystem/virtualmin/security/kubernetes options |
windows-admin |
Executes remote Windows administration via PowerShell Remoting | action, host, plus service/process/event-log/firewall/update/role/performance options |
panos-cli |
Runs PAN-OS CLI commands over SSH (with presets) | host, username, command, preset, SSH options |
wireless-diagnostics |
Runs macOS Wi-Fi diagnostics (status, scans, performance, logs) | interface, includeScan, includePerformance, includeLogs, pingHost |
thought-export |
Exports tracked thoughts to JSON/Markdown | format, includeMetadata |
thought-import |
Imports thoughts from JSON/Markdown payloads | format, content |
thought-summary |
Generates summaries and related-thought analysis | entries[], autoNumbering |
email-mx-lookup |
Retrieves MX records for a domain | domain |
email-connectivity-test |
Probes SMTP/IMAP endpoints for TCP reachability | checks[] (host, protocol, port, timeout) |
email-auth-check |
Inspects SPF, DKIM, and DMARC TXT records | domain, dkimSelectors[] |
vpn-diagnostics |
Collects macOS VPN configuration and process information | includeWifi |
ssh-exec |
Runs an arbitrary SSH command against a remote host | host, username, command, port, identityFile |
ubuntu-health-report |
Remote Ubuntu health snapshot via SSH | host, username, identityFile, port |
debian-health-report |
Remote Debian health snapshot via SSH | host, username, identityFile, port |
mailbox-quota-check |
Measures mailbox storage usage with optional breakdown | path, includeBreakdown |
cleanup-runbook |
Cache purge, downloads pruning, optional Time Machine thinning | dryRun, purgeSystemCaches, purgeDownloadsOlderThanDays, thinTimeMachineSnapshotsGb |
log-review |
Collects log excerpts using log show |
lastMinutes, predicate, process, limit |
software-maintenance |
Surfaces Homebrew updates and optional cleanups | performCleanup, includeApplications |
network-inspect |
Netstat, listeners, optional firewall/Wi-Fi/bandwidth sampling | includeFirewall, includeWifiScan, bandwidthSampleSeconds |
packet-capture |
Time-bounded tcpdump capture |
interface, durationSeconds, filterExpression, outputDirectory |
All tools emit both human-readable text blocks and machine-friendly structuredContent payloads.
Privilege & Safety Model
- The server prefixes sensitive commands with
sudoby default. Disable this behaviour by exportingIT_MCP_ALLOW_SUDO=falsebefore launch if you prefer to run everything as an unprivileged user. - Always run
cleanup-runbookin the default dry-run mode first. Only rerun withdryRun=falseafter vetting the previewed commands. - Packet captures are stored in
./capturesunlessIT_MCP_CAPTURE_DIRor theoutputDirectoryinput is provided. Rotate captures and restrict access appropriately. - Commands that stream large volumes of data (
nettop,tcpdump,log show) are bounded with sensible defaults; adjust parameters cautiously when running on production hosts. - Windows administration tooling depends on PowerShell 7 (
pwsh) being available in the container and WinRM/PowerShell remoting access to the target host. Provide credentials via environment variables (defaultWINDOWS_REMOTE_PASSWORD) when needed.
Environment Variables
| Variable | Default | Effect |
|---|---|---|
IT_MCP_ALLOW_SUDO |
true |
Controls whether sudo is auto-prefixed for privileged commands |
IT_MCP_CAPTURE_DIR |
<cwd>/captures |
Base directory for packet capture output files |
IT_MCP_LOG_LEVEL |
debug (when not in production) |
Controls winston log level (error, warn, info, debug, etc.) |
Extending The Server
- Add new services under
src/services/to wrap reusable command logic. - Register additional MCP tools in
src/tools/registerTools.ts. - Update the instructions string in
src/index.tsso clients know how to use new capabilities. - Always prefer
CommandRunnerfor shell execution so you inherit consistent sudo, timeout, and error handling semantics. - The execution router (
ExecutionRouter) maps tool requests to local execution or future remote agents; implement agent dispatch inRemoteAgentServicewhen rolling out remote workers.
Testing & Validation
npm run buildcompiles the TypeScript sources.npm run lintenforces lint rules (install ESLint globally or vianpm installfirst).- Consider running tools in dry-run mode initially when integrating with downstream automations.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。