boot-doctor-mcp
It's an MCP server for deterministic PC no-boot/no-display/no-POST troubleshooting.
diagnose_symptoms: Given power state, fan behavior, display output, and already-tried steps (CMOS reset, minimal config, cable/monitor swap), returns ranked, real technician next steps ordered by cost to rule out.lookup_beep_code: Looks up beep patterns against sourced BIOS beep-code tables forami_legacy,ami_aptio, andaward_phoenix, returning an honest no-match instead of a fabricated guess.Answers come from fixed, auditable rules and real sources rather than LLM guesses.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@boot-doctor-mcpPC no display, fans spin, what to try?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
boot-doctor-mcp
A real MCP server for PC no-boot / no-display / no-POST troubleshooting. No LLM guessing at hardware causes — a plain, deterministic rule engine plus real, sourced BIOS beep-code tables.
Why deterministic, not an LLM
Nobody wants a language model hallucinating "your GPU is dead" when it isn't. Hardware advice where being wrong costs real money and real time deserves a fixed, auditable rule set, not a plausible-sounding guess. Every answer this tool gives traces back to a real source or a fixed, testable rule — never an invented explanation.
Related MCP server: Talk to Your PC MCP Server
Tools
diagnose_symptoms(powers_on, fans_spin=None, fans_stay_running=None, display_output=False, tried_cmos_reset=False, tried_minimal_config=False, tried_different_cable_or_monitor=False)
Real, ranked next troubleshooting steps, given what's already been tried — the same power-stage → CMOS reset → minimal-config-test → swap-test sequence a real technician runs, ordered by what's cheapest to rule out first. Not a diagnosis of the exact broken part; a real repair often still needs a swap test against known-good parts, and this tool says so explicitly rather than pretending symptom-matching alone can replace it.
lookup_beep_code(bios_type, pattern)
Looks up a beep pattern (e.g. "10 short", "1 long, 2 short", "continuous") against real, sourced BIOS beep-code tables.
bios_type is one of:
ami_legacy— classic AMIBIOSami_aptio— modern AMI Aptio (UEFI), kept separate on purpose: legacy AMIBIOS and Aptio use genuinely different codes for the same beep counts, a mistake common in beginner troubleshooting guides that merge them into one tableaward_phoenix— Award/Phoenix BIOS
Returns real information, not a fabricated guess, when the exact pattern isn't in the table — modern boards increasingly have no speaker at all and use debug LEDs instead, so "no match" is itself a real, honest result.
Sources
Beep-code data fetched and cross-referenced live (not from training-data memory) from IONOS and Thomas-Krenn. Real, stated limitation: OEMs (HP, Dell, ASUS, etc.) sometimes customize or extend these codes, and modern boards increasingly skip the speaker entirely in favor of debug LEDs — a documented pattern not matching here doesn't necessarily mean nothing is wrong.
Install
pip install boot-doctor-mcpAdd to your MCP client config (e.g. Claude Code):
claude mcp add boot-doctor-mcp -- boot-doctor-mcpOr run directly for local testing:
python -m boot_doctor_mcp.serverSkill
A SKILL.md ships inside this same package — not a separate download — and teaches Claude when and how to use these tools correctly (e.g. never guessing a BIOS type, never stating a broken component as fact from symptoms alone). Install it into your project:
boot-doctor-mcp-install-skillRun it from the project root you want the skill active in — it writes to .claude/skills/boot-doctor-mcp/SKILL.md relative to your current directory.
Development
pip install -e ".[dev]"
pytestAvailable Tools
2 toolsdiagnose_symptomsA
Real, ranked next troubleshooting steps for a PC that won't boot or show any display, given what's already been tried. Not a diagnosis of the exact broken part — a real technician's standard sequence, ordered by what's cheapest/fastest to rule out first.
powers_on: does ANYTHING happen when you press the power button (any light, any fan movement, any sound) — false means dead/no-power, a completely different problem class than a POST failure. fans_spin: do the fans spin at all when powered on. fans_stay_running: do they keep spinning, or spin briefly then stop (the latter is a real, specific PSU/motherboard protection signal). display_output: is there ANY video signal reaching the monitor. tried_cmos_reset: already removed the CMOS battery / used the CLR_CMOS jumper. tried_minimal_config: already stripped to CPU + 1 RAM stick + no discrete GPU (or GPU alone) to isolate the cause. tried_different_cable_or_monitor: already confirmed the monitor and cable work on a different, known-good computer.
| Name | Required | Description | Default |
|---|---|---|---|
| fans_spin | No | ||
| powers_on | Yes | ||
| display_output | No | ||
| tried_cmos_reset | No | ||
| fans_stay_running | No | ||
| tried_minimal_config | No | ||
| tried_different_cable_or_monitor | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool outputs a ranked sequence based on cost/speed, not a definitive diagnosis. It also explains the semantic difference between 'fans spin briefly then stop' as a PSU/motherboard signal, adding useful behavioral context. It does not mention side effects, but the tool is likely read-only and non-destructive, which is not stated but also not contradicted.
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 front-loaded with the main purpose in the first sentence, then provides parameter details in a readable, line-separated format. It is longer than ideal, but the length is justified by the need to explain 7 parameters. No redundant sentences; each piece adds value.
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?
The tool has an output schema (not shown) so it needn't describe return values. Given the complexity (7 params, 1 required), the description covers the input semantics and the overall behavior (ranked steps by cost). It lacks an explicit note about when to use the sibling beep-code tool, but that is a minor gap. Overall, the description is sufficient for an agent to effectively invoke the tool.
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 fully explain parameters. It does exactly that: each of the 7 parameters (powers_on, fans_spin, fans_stay_running, display_output, tried_cmos_reset, tried_minimal_config, tried_different_cable_or_monitor) is given a clear, meaningful explanation that goes beyond the schema titles. For example, it explains the difference between fans spinning and staying running, and what 'tried minimal config' means. This is exemplary compensation for missing schema descriptions.
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: providing 'ranked next troubleshooting steps' for a PC that won't boot. It distinguishes itself from a diagnosis and from the sibling tool (lookup_beep_code) by focusing on a general sequence rather than beep codes. The verb 'diagnose' is accurate, and the resource (PC boot/display issues) is 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 implies when to use it: when a PC won't boot or show display, and what input is needed (what's been tried). It notes it's not a diagnosis, setting expectations, but does not explicitly state when to use the sibling tool (e.g., when beep codes are present). The context is clear enough for an agent to infer the appropriate scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_beep_codeA
Looks up a beep pattern against real, sourced BIOS beep-code tables. bios_type must be one of: ami_legacy, ami_aptio, award_phoenix — ami_legacy and ami_aptio are genuinely different tables (legacy AMIBIOS vs. modern AMI Aptio/UEFI use different codes for the same beep counts), pick the wrong one and you'll get the wrong answer, so check which BIOS the actual board uses before trusting the result.
pattern: free text describing what you heard, e.g. "10 short", "1 long, 2 short", "continuous", "3 short, 3 long, 3 short".
Returns None-equivalent text (not a fabricated guess) when the exact pattern isn't in the real table this tool has data for — modern boards increasingly have no speaker at all and use debug LEDs instead, so no match is real information, not a tool failure.
| Name | Required | Description | Default |
|---|---|---|---|
| pattern | Yes | ||
| bios_type | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it returns None when no match is found, explains the difference between BIOS types, and notes that modern boards may not have a speaker. Since no annotations are provided, the description carries the transparency burden and does so effectively.
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 detailed yet efficient, with a clear structure: purpose, parameter constraints, pattern examples, and return behavior. It avoids unnecessary fluff while covering all essential information.
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 an output schema exists (though not shown), the description does not need to detail return values, but it still mentions the None case, which is useful. It also covers edge cases like modern boards without speakers, making the context complete enough for correct usage.
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?
The schema has 0% coverage for parameter descriptions, but the description fully explains both parameters: pattern is free text with examples, and bios_type is constrained to three valid values. This fully compensates for the lack of schema descriptions.
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?
Clearly states the tool looks up beep patterns against real BIOS beep-code tables. It specifies the resource (beep-code tables) and the action (lookup), and distinguishes itself from the sibling tool diagnose_symptoms by focusing on beep-code lookup.
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?
Provides explicit guidance on required inputs (bios_type must be one of the listed values, pattern format with examples) and warns about potential pitfalls (different tables for different BIOS types). It does not explicitly contrast with the sibling tool, but the usage is clear enough.
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
v0.1.0- First observed
diagnose_symptoms - First observed
lookup_beep_code
TDQS
Scored across 2 tools
The two tools serve completely different purposes: diagnose_symptoms walks through a troubleshooting decision tree, while lookup_beep_code is a reference lookup. There's zero overlap or ambiguity about which to call in any scenario.
Both tools follow the identical imperative verb_noun snake_case convention (diagnose_symptoms, lookup_beep_code). Perfect consistency, even if the sample size is small.
Two tools is on the thin side for a general-purpose troubleshooting server, but the scope here is deliberately narrow (diagnosis guidance + beep-code reference). It works, but feels minimal.
The core workflows (symptom-based guidance and beep-code lookup) are covered, but natural additions like a debug-LED/literal code reference, or a POST-code table, would round out the domain. Notable but not critical gaps.
Maintenance
Related MCP Connectors
Verified hardware specifications (GPU, CPU, PSU) for autonomous agents. No scraping needed.
Read-only local AI advice, shared reports and website audits. No PC scan or local actions.
Lints + auto-fixes how AI coding agents discover any new product. 24 rules, 6 tools, score 0-100.
Deterministic reasoning stack for AI agents: simulate, decide & compute, plus cross-domain tools.
Related MCP Servers
- AlicenseAqualityNot gradedmaintenanceProvides comprehensive system diagnostics and hardware analysis through 10 specialized tools for troubleshooting and environment monitoring. Offers targeted information gathering for CPU, memory, network, storage, processes, and security analysis across Windows, macOS, and Linux platforms.10MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to diagnose, troubleshoot, and manage PC settings on Windows, macOS, and Linux through natural language commands.GPL 3.0
- FlicenseAqualityCmaintenanceEnables LLM-driven agents to autonomously detect, diagnose, repair, verify, and prevent software and hardware failures on local and remote systems. Includes built-in safety checks and automatic rollbacks.15-

Yamaru Hardware Probeofficial
AlicenseAqualityDmaintenanceExpert system hardware probe and performance diagnostic engine for AI, Gaming, and High-Performance workflows. Provides deep system insights such as real-time monitoring, thermal diagnostics, and LLM optimization.1128 npm7Apache 2.0