{
  "markdown": "# urdb-mcp\n\n<a href=\"https://glama.ai/mcp/servers/GetMystAdmin/urdb-mcp\">\n  <img width=\"380\" height=\"200\" src=\"https://glama.ai/mcp/servers/GetMystAdmin/urdb-mcp/badge\" />\n</a>\n\nMCP server for [URDB](https://urdb.io). Gives your AI assistant **76 electronics, hardware and firmware calculators** — plus the product integrity database tracking downgrades, shrinkflation, warranty cuts and enshittification.\n\nAsk *\"what UBRR do I need for 9600 baud on a 16 MHz AVR?\"* and get `103` with the error percentage and the worked derivation, instead of a plausible-sounding guess.\n\n## Setup\n\n**1. Get an API key** at [urdb.io/settings/api-keys](https://urdb.io/settings/api-keys) (free tier available)\n\n**2. Add to your MCP host**\n\nClaude Desktop config lives at `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\\Claude\\claude_desktop_config.json` (Windows).\n\n```json\n{\n  \"mcpServers\": {\n    \"urdb\": {\n      \"command\": \"npx\",\n      \"args\": [\"urdb-mcp\"],\n      \"env\": {\n        \"URDB_API_KEY\": \"urdb_live_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n**3. Restart your host**\n\nCalculators are metered separately from product data — 1,000 calculator calls a day on the free tier, so an agent working through a design won't exhaust your quota on arithmetic.\n\n## Example prompts\n\n- \"Size the current-limiting resistor for a blue LED on 5 V\"\n- \"Give me every valid CAN bit timing for 500 kbit/s on a 40 MHz clock\"\n- \"What trace width do I need for 3 A with a 20 °C rise on an external layer?\"\n- \"Decode this struct's padding for a 32-bit target\"\n- \"Is 1000 km realistic on LoRa SF12?\"\n- \"Which laptops have the highest integrity scores?\"\n- \"Has the KitchenAid Stand Mixer gotten worse over the years?\"\n\n## Tools\n\nCall `tools/list` to see the current set — the calculator catalogue is fetched from the server at runtime, so it grows without a package update.\n\n### Calculators\n\n76 tools across seven categories, named `calc_<name>`:\n\n| Category | Covers |\n|----------|--------|\n| **Components** (11) | Resistor and capacitor colour/SMD codes, E-series snapping, LED resistors, RC time constants, series/parallel networks |\n| **Circuits** (16) | 555 timers, op-amps, filters, buck/boost converters, MOSFET gate drive, Ohm's law, zener and LM317 regulators, Schmitt triggers |\n| **Power & Wiring** (13) | PCB trace width and impedance, wire gauge, voltage drop, fuse sizing, heat sinks, battery packs, solar sizing, via current |\n| **Firmware** (22) | UART baud rates, CAN bit timing, PLL dividers, timer prescalers, CRC, IEEE 754, struct padding, bitfields, watchdogs, Intel HEX |\n| **RF & Signals** (7) | Antenna lengths, LoRa airtime, path loss, VSWR, Nyquist, FFT bins, wavelength |\n| **Mechanical** (4) | Stepper motors, E-steps, gear ratios, tap drill sizes |\n| **Reference** (3) | Pinouts, logic levels, MCU comparison |\n\nEach returns the answer, machine-readable values, the worked derivation and a link to the same tool on the web at `https://urdb.io/tools/<name>`.\n\n### Product data\n\n| Tool | Description |\n|------|-------------|\n| `urdb_search` | Search products by name or keyword, with integrity scores |\n| `urdb_get_product` | Full integrity breakdown across 7 dimensions |\n| `urdb_get_changes` | Documented enshittification events for a product |\n| `urdb_list_products` | List/filter products by category, brand, score |\n\n## How it works\n\nThis package is a thin stdio→HTTPS proxy for `https://urdb.io/api/v1`. It contains no calculation logic: the catalogue and every tool's JSON Schema are fetched from `/api/v1/tools` when the server starts.\n\nThat means a calculator added to URDB shows up here on your next restart, and a fix reaches you via a deploy rather than `npm update`. If the API is unreachable the server still starts and serves the product tools, and retries the catalogue on the next `tools/list`.\n\nCalculators follow published standards where one exists — IPC-2221 and IPC-2141 for trace geometry, IEC 60063 for E-series, IEC 60127 for fuses, ISO 11898-1 for CAN, IEEE 754 for floats. Where a result is an extrapolation rather than a measurement, the tool says so.\n\n## REST API\n\nEverything here is available over plain HTTP:\n\n```bash\ncurl -H \"Authorization: Bearer $URDB_API_KEY\" https://urdb.io/api/v1/tools\n\ncurl -X POST https://urdb.io/api/v1/tools/uart-baud-rate \\\n  -H \"Authorization: Bearer $URDB_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"clockHz\": 16000000, \"baud\": 9600, \"family\": \"avr-normal\"}'\n```\n\nFull docs: [urdb.io/api](https://urdb.io/api)\n\n## Configuration\n\n| Variable | Required | Description |\n|----------|----------|-------------|\n| `URDB_API_KEY` | yes | Your key from [urdb.io/settings/api-keys](https://urdb.io/settings/api-keys) |\n| `URDB_API_URL` | no | API base URL. Defaults to `https://urdb.io/api/v1`. |\n\n## Development\n\n```bash\nnpm run typecheck\nnpm run build     # bundle to dist/index.js\nnpm test          # stdio end-to-end against a mock API\n```\n\n## License\n\nMIT\n",
  "bytes": 4957,
  "sha": "be2333571c69c07447d3095fd595d6c5eea527f70f037f110477ca4723de8477",
  "repo_slug": "getmystadmin/urdb-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_getmystadmin_urdb_mcp_97ad21ef/readme"
}