
Plumbkit MCP server
Which MCP servers are Plumbkit's own, from the official registry and from asking its own domain, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.
read 2026-10-27
- Registry namedev.plumbkit/plumbkitverified in the MCP registry
The registry name sits under plumbkit.dev. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.
- Stateanswerschecked 2026-10-27
- Tools16
- Server calls itselfplumbkit
- Server version1.0.0
- Protocol version2025-06-18
On 2026-10-27 the server answered initialize and tools/list without a sign-in. First answer in 13 ms.
- Its tools do every use case we checked: convert a timestamp between time zones with daylight saving handled; count characters, words and UTF-8 bytes in text; check email, phone and IBAN formats before saving.
Once connected
- For "convert a timestamp between time zones with daylight saving handled", the likely first call is convert_timezone.
- For "count characters, words and UTF-8 bytes in text", the likely first call is text_stats.
- For "check email, phone and IBAN formats before saving", the likely first call is validate_email.
- Parameters are untyped or undescribed in 6 of 16 tools: check arguments before calling.
Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.
- INITE MCP score98 of 100answers 100 · does the job 100 · definitions 93 · context 98 · connects 100
- What an agent can do with it3 of 3 use cases
- Answered100% of days8 of 8 daily checks
- Median first answer111 ms
- Space in an agent's context≈ 3,249 tokensthe definitions of all its tools (16), which an agent carries on every turn
- Tool definitionsA · 93 of 100
- Typed results0 of 16 toolsdeclared outputSchema: results come typed, read once
- Parameters without a type: in 1 of 16
- Parameters without a description: in 6 of 16
What an agent can do with it
- can do · convert a timestamp between time zones with daylight saving handled
- can do · count characters, words and UTF-8 bytes in text
- can do · check email, phone and IBAN formats before saving
Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?
Worth a look
None of the five warning signs in these definitions.
A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (25%), doing the product's job (25%), definitions (20%), context (10%), use (10%) and how readily a client connects (10%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →
current_timeReturns the exact current date, time, weekday and UTC offset in any time zone. Use this whenever you need to know today's date or the current time instead of guessing — your training data does not know what day it is.
convert_timezoneConverts a date/time from one time zone to another, correctly handling daylight saving time. If the input already includes an offset or 'Z', from_timezone is ignored.
date_addAdds or subtracts a duration (years, months, weeks, days, hours, minutes, seconds) to a date/time. Use negative numbers to subtract. Calendar-aware: adding 1 month to Jan 31 gives Feb 28/29, and adding days keeps the same local clock time…
date_diffCalculates the exact time between two dates/times: a calendar breakdown (years, months, days, hours, minutes, seconds) plus totals in days, hours, minutes and seconds, and the number of calendar days. Negative if end is before start.
business_daysWorks with business (working) days. mode "add": returns the date N business days after start_date (start_date itself is not counted; negative N goes backward; 0 returns start_date, or the next business day if start_date is not one). mode…
calculateEvaluates an arithmetic expression exactly, so you don't have to do mental math. Supports + - * / % ^ (or **), parentheses, constants pi/e/tau and functions: sqrt, cbrt, abs, round(x, digits), floor, ceil, trunc, sign, ln, log(x[, base])…
convert_unitsConverts a value between units of length, mass, volume (US and imperial), area, speed, time, digital data (KB vs KiB, bits vs bytes), energy, pressure and temperature. Accepts common abbreviations (km, lb, fl oz, mph, °F, GiB). US…
text_statsCounts exactly what language models are bad at counting: characters (as humans see them), words, lines, sentences, paragraphs, UTF-8 bytes, and occurrences of a letter or substring (e.g. how many "r" in "strawberry"). Use it to check…
hash_textComputes a cryptographic hash (SHA-1, SHA-256, SHA-384, SHA-512) of text, or encodes/decodes it as Base64, Base64URL, hex or URL-encoding. Text is treated as UTF-8.
regex_testRuns a JavaScript regular expression against text and returns every match with its position and capture groups, or the text after replacement. Use it to verify a regex actually works before relying on it.
validate_emailChecks whether an email address is correctly formatted and returns a normalized version. Set check_dns=true to also confirm the domain exists and can receive mail (MX records). Does not send email and cannot confirm that a specific…
validate_phoneValidates a phone number using Google's libphonenumber rules and returns it in E.164 (+14155552671), international and national formats, plus the country and line type (mobile, fixed line, toll free...). For numbers without a +country…
validate_urlChecks that a URL is well-formed, normalizes it (lowercase host, punycode, default ports removed, spaces encoded) and splits it into parts including each query parameter. Flags common problems such as missing scheme, private/localhost…
validate_ibanValidates an International Bank Account Number: country, length for that country, and the mod-97 check digits. Returns electronic and printed formats. A valid IBAN is correctly formed; this does not confirm the account exists.
json_repairTurns almost-JSON into valid JSON: removes markdown code fences, comments and trailing commas, adds missing quotes, commas and closing brackets, converts single quotes, Python True/False/None and truncated output. Returns the repaired…
json_schema_validateChecks a JSON value against a JSON Schema (drafts 4, 7, 2019-09 and 2020-12) and lists every violation with its location. Use it to confirm structured output or an API payload is correct before sending it. `data` and `schema` may be JSON…
How to connect
Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:
{
"mcpServers": {
"plumbkit": {
"type": "http",
"url": "https://plumbkit.dev/mcp"
}
}
}Add it
Claude Code, in a terminal
claude mcp add --transport http plumbkit https://plumbkit.dev/mcpclaude.ai, ChatGPT and other clients: add https://plumbkit.dev/mcp as a custom connector in the settings.
OpenAPI spec
18 paths, read 2026-10-27. Open the spec ↗
Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.
Before we count this visit
Analytics and ad measurement tell us which pages and which of our ads do their job: Google Analytics and Google Ads, the Meta pixel, Yandex Metrica, and one first-party id of our own. Nothing is stored until you answer, and declining changes nothing about the site.