APIShed is a remote MCP server that gives an AI agent 29 tools, among them datemath_add, datemath_age, datemath_businessdays. It answers at https://apished.com/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 10 of 10 times since 4 September 2026; the last check, on 17 October 2026, succeeded.
Validates PESEL/NIP/REGON/IBAN/Luhn/ISBN/EAN/BIC/VAT; RPN, dates, hash, tokens, random, encode, time
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
datemath_add | Adds years/months/days to date. years/months are applied together with end-of-month clamping — e.g. 2026-01-31 + 1 month = 2026-02-28, not an overflowed 2026-03-03. days is then applied as plain calendar-day arithmetic. Inputs: date, years, months, days |
datemath_age | Age in whole years as of asOf (optional, defaults to the current UTC date). A Feb-29 birthDate is treated as falling on March 1 in a non-leap asOf year. Inputs: birthDate, asOf |
datemath_businessdays | Counts days in [from, to] (inclusive on both ends) whose weekday is in weekdays (default mon-fri) and which aren't in holidays. Inputs: from, to, weekdays, holidays |
datemath_dayofweek | Day of the week for date: both the weekday name and its ISO 8601 weekday number (1=Monday..7=Sunday). Inputs: date |
datemath_diff | Day difference between two YYYY-MM-DD dates: to minus from, in whole days. Negative if to is before from. Inputs: from, to |
datemath_leapyear | Checks whether year is a leap year in the Gregorian calendar. Inputs: year |
ean_validate | Validates an 8-digit (EAN-8), 12-digit (UPC-A), 13-digit (EAN-13), or 14-digit (GTIN-14) barcode checksum: alternating weights 1 3 applied right-to-left, check digit is (10 - sum mod 10) mod 10. Inputs: value |
email_validate | Checks value is a single, bare RFC 5322 email address — syntax only, not a deliverability check. user@localhost is valid (no TLD required). "Name <email>" display syntax is rejected. Inputs: value |
hash_digest | Computes a hash digest of input (decoded per encoding: "text" default, "base64", or "hex") using algo: md5, sha1, sha256, sha512, or crc32. Returns the digest as lowercase hex. Inputs: algo, input, encoding |
iban_validate | Validates an IBAN's length for its issuing country (per the SWIFT IBAN registry) and its mod-97 checksum. Does not decompose the BBAN into a bank code/account number or resolve a BIC. Inputs: value |
isbn_validate | Validates a 10- or 13-character ISBN. ISBN-10 uses weights 10..1 over 10 characters (last may be X, worth 10), sum mod 11 must be 0. ISBN-13 uses the same GTIN checksum as barcodes. Inputs: value |
jsonschema_validate | Validates document against schema (JSON Schema draft-07 or 2020-12). Reports one specific violation per call, not an aggregated list. Inputs: schema, document |
luhn_validate | Validates a numeric string against the Luhn (mod-10) checksum — payment card numbers, IMEI numbers, and similar identifiers. Inputs: value |
nip_validate | Validates the checksum of a 10-digit Polish tax identification number (NIP). Checksum uses weights 6 5 7 2 3 4 5 6 7 over the first 9 digits; sum mod 11 must equal the 10th digit. A sum mod 11 of 10 is itself invalid. Inputs: value |
pesel_validate | Validates the checksum of an 11-digit Polish national identification number (PESEL). Checksum uses weights 1 3 7 9 1 3 7 9 1 3 over the first 10 digits; control digit is (10 - sum mod 10) mod 10. On success also decodes the date of birth an Inputs: value |
regex_match | Tests input against pattern (Go's regexp package: RE2 syntax, not PCRE — no backreferences or lookaround; use inline flags like (?i) for case-insensitive matching). Returns the full match and captured groups. Inputs: pattern, input |
regon_validate | Validates the checksum of a 9- or 14-digit Polish business registry number (REGON). 9-digit: weights 8 9 2 3 4 5 6 7 over the first 8 digits, sum mod 11 (10 mapped to 0) must equal the 9th digit. 14-digit: the first 9 digits must themselves Inputs: value |
rpncalc_eval | Evaluates a Reverse Polish Notation (postfix) expression: whitespace-separated tokens, each a number or an operator/function that pops its operands off a stack and pushes the result. Supports arithmetic, exponentiation/modulo, roots, trigon Inputs: expr |
swiftbic_validate | Structural format validation only for a SWIFT/BIC code: 8 or 11 characters (4 letters bank code + 2 letters country code + 2 alphanumeric location code + optional 3 alphanumeric branch code). The country code is not cross-checked against IS Inputs: value |
text_charat | Returns the 0-indexed character (rune) at index in text. Inputs: text, index |
text_count | Counts non-overlapping occurrences of substring in text (rune-safe, not byte-based). Inputs: text, substring |
text_palindrome | Checks whether text reads the same forwards and backwards. ignoreCase/ignoreNonAlnum default false (strict, literal comparison); set both true for phrase-style palindromes like "A man, a plan, a canal: Panama". Inputs: text, ignoreCase, ignoreNonAlnum |
text_reverse | Reverses text by Unicode code point (rune), not grapheme cluster. Inputs: text |
text_sort | Sorts text's characters or words alphabetically. by: "chars" (default, sorts runes, no separator) or "words" (splits on whitespace, rejoins with a single space). Inputs: text, by |
text_stats | Descriptive statistics for text: rune/byte/word/line counts, a unique-rune count, a letters/digits/spaces/punctuation/other breakdown, an exact per-character frequency table, and word-length min/max/average plus the actual shortest/longest Inputs: text |
text_wordcount | Counts whitespace-delimited words in text. Inputs: text |
tokens_count | Counts tokens under an OpenAI-compatible (tiktoken) encoding. Provide exactly one of model (e.g. "gpt-4o") or encoding ("o200k_base" or "cl100k_base"). No Claude/Anthropic tokenizer. Inputs: text, model, encoding |
url_validate | Checks value is a well-formed absolute URL (has both a scheme and a host) — syntax only, not a reachability check. Inputs: value |
vateu_validate | Format validation only (no VIES lookup) for an EU VAT number: checks the 2-letter member-state prefix (EL for Greece, XI for Northern Ireland) against that country's digit/letter pattern. A format-valid result does not mean the number is ac Inputs: value |
Every block below points at https://apished.com/mcp. Pick your client and copy.
claude mcp add --transport http apished https://apished.com/mcp
{
"mcpServers": {
"apished": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://apished.com/mcp"]
}
}
}{
"mcpServers": {
"apished": {
"url": "https://apished.com/mcp"
}
}
}{
"servers": {
"apished": {
"type": "http",
"url": "https://apished.com/mcp"
}
}
}{
"context_servers": {
"apished": {
"url": "https://apished.com/mcp"
}
}
}{
"mcpServers": {
"apished": {
"serverUrl": "https://apished.com/mcp"
}
}
}{
"mcpServers": {
"apished": {
"url": "https://apished.com/mcp"
}
}
}name: APIShed
version: 0.0.1
schema: v1
mcpServers:
- name: APIShed
type: streamable-http
url: https://apished.com/mcp{
"mcpServers": {
"apished": {
"httpUrl": "https://apished.com/mcp"
}
}
}{
"mcpServers": {
"apished": {
"type": "http",
"url": "https://apished.com/mcp"
}
}
}{
"mcpServers": {
"apished": {
"url": "https://apished.com/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fapished.com%2Fmcp&type=streamable_http&id=apished&name=APIShed
It answered our last check on 17 October 2026 in 173 ms. Over 10 checks since 4 September 2026 it answered 10. Status here comes from Neuronto's own probes, not from the publisher.
Yes. It is published by apished.com and served from apished.com, the vendor's own domain: https://apished.com/mcp.
29, as returned by the server's own tools/list on 10 September 2026: datemath_add, datemath_age, datemath_businessdays, datemath_dayofweek, datemath_diff, datemath_leapyear, ean_validate, email_validate, and 21 more.
It answered our last check on 17 October 2026 in 173 ms. Over 10 checks since 4 September 2026 it answered 10.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://apished.com/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: com.apished. Endpoint host: apished.com. ARD identifier: urn:air:com.apished:mcp:apished.
First indexed 31 August 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.