mcpField
R
routerbase

routerbase

Local
github.com/CloudCorpRecordsSecurity0Updated 1w ago

About routerbase

routerbase is a CLI and stdio MCP server for router defaults, UK PSTI/EU CRA password compliance, and MAC address lookups. It classifies MAC addresses locally and forwards data queries to ssid.ai.

Key features

  1. 01Manufacturer-cited router login defaults
  2. 02UK PSTI and EU CRA checks
  3. 03Local MAC address classification
  4. 04Vendor lookup by MAC address
  5. 05Cited correction submissions

Use cases

  1. 01Find factory credentials for a router model
  2. 02Check universal-password rule compliance
  3. 03Identify a MAC address vendor and type

MCP support

Exposes router-default, compliance, MAC lookup, and correction tools to MCP clients. It forwards calls to the hosted ssid.ai MCP endpoint; correction submission requires an API key.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudcorprecords-routerbase": {
"command": "npx",
"args": [
"-y",
"@reneturcios/routerbase"
]
}
}
}
Run commandnpx -y @reneturcios/routerbase

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@reneturcios/routerbase0.1.0
ocighcr.io/cloudcorprecords/routerbase:0.1.0

Tools

4

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
slugstringNoRouter model slug identifying the record to fetch.
brandstringNoRouter brand name; used together with model when no slug is given.
modelstringNoRouter model name; used together with brand when no slug is given.

Details

From the project README

routerbase

routerbase answers three kinds of questions about home routers: what a model's factory login defaults are (gateway, login host, username/password, credential type, reset steps, and the manufacturer source the record cites), whether a model complies with the UK PSTI and EU CRA rules against universal default passwords, and who made the network hardware behind a MAC address. One binary serves a command-line interface and a stdio MCP server.

The data lives in a hosted service. routerbase is a local stdio server that forwards each call as a JSON-RPC tools/call request to the ssid.ai MCP endpoint at https://ssid.ai/mcp/http; that wire shape is a documented reconstruction from the service's public description. Point it elsewhere with SSID_API_BASE (a host or a full endpoint URL).

Read tools are free with no key. Setting SSID_API_KEY raises the rate limits and is sent as a Bearer token when present. submit_correction is different: the upstream gates that write tool behind its Pro tier, so without SSID_API_KEY routerbase refuses with an explanation and sends nothing — a correction is never reported as submitted when it was not.

For lookup_mac, the address classification is worked out locally, for real: the address is parsed and normalised (colon, hyphen, dot, and bare-hex forms are accepted), the multicast and locally-administered bits of the first octet decide between multicast, randomized, and universal, and anything unparseable is invalid. Only the vendor/OUI part comes from the upstream call, and an invalid address is never sent upstream.

Install

npx @reneturcios/routerbase lookup_mac 00:1A:2B:3C:4D:5E

Or run the container image:

docker run -i ghcr.io/cloudcorprecords/routerbase

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

CLI

routerbase get_router_defaults --slug <slug>
routerbase get_router_defaults --brand <brand> --model <model>
routerbase check_router_compliance --slug <slug>
routerbase lookup_mac 00:1A:2B:3C:4D:5E
routerbase submit_correction --slug <slug> --field gateway_ip \
  --proposed-value 192.168.0.1 --source-url https://example.com/manual

routerbase --version

Successful commands print the result as JSON. Exit codes: 0 on success, 1 when a call fails (including an upstream error or the correction key gate), 2 for usage errors. get_router_defaults needs either --slug or both --brand and --model; anything less is an honest error, not a guess.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

npx -y @reneturcios/routerbase mcp

MCP client configuration:

{
  "mcpServers": {
    "routerbase": {
      "command": "npx",
      "args": ["-y", "@reneturcios/routerbase", "mcp"],
      "env": {
        "SSID_API_KEY": "your key, optional for read tools"
      }
    }
  }
}
Tools
ToolInputWhat it returns
get_router_defaultsslug, or brand + modelThe manufacturer-cited factory login record for the model.
check_router_complianceslug (required)The model's standing under UK PSTI / EU CRA universal-default-password rules.
lookup_macmac (required)Local classification (universal / randomized / multicast / invalid), the normalised address and OUI, plus the upstream vendor payload.
submit_correctionslug, field, proposedValue, sourceUrl (all required)Queues a cited correction for verification. Requires SSID_API_KEY (Pro tier).

Development

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.