Search / io.github.kevinbett/sampuli
Sampuli
R0· no sign-inFormat-true synthetic test data for 90 countries — IBANs, SWIFT/BIC, IDs, cards, all certified.
v0.1.3 · active · repository · descriptor JSON · versions
Search / io.github.kevinbett/sampuli
R0· no sign-inFormat-true synthetic test data for 90 countries — IBANs, SWIFT/BIC, IDs, cards, all certified.
v0.1.3 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"sampuli": {
"type": "http",
"url": "https://sampuli.site/api/mcp"
}
}
}claude mcp add --transport http sampuli https://sampuli.site/api/mcp[mcp_servers.sampuli]
url = "https://sampuli.site/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"sampuli": {
"type": "remote",
"url": "https://sampuli.site/api/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"sampuli": {
"type": "http",
"url": "https://sampuli.site/api/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=sampuli&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vc2FtcHVsaS5zaXRlL2FwaS9tY3AifQ%3D%3D"
}{
"servers": {
"sampuli": {
"type": "http",
"url": "https://sampuli.site/api/mcp"
}
}
}{
"mcpServers": {
"sampuli": {
"httpUrl": "https://sampuli.site/api/mcp"
}
}
}extensions:
"sampuli":
enabled: true
name: "sampuli"
type: streamable_http
uri: "https://sampuli.site/api/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: sampuli_describe_country (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); sampuli_generate (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); sampuli_schema (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …tools.token_costabout 996 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulnsno known advisory in 99 resolved packagesdeps.mcp_sdk_version@modelcontextprotocol/sdk 1.30.1 has 1 known advisory (GHSA-6qxp-vccf-f47h); update @modelcontextprotocol/sdk to 1.31.0 or laterdeps.resolvable@sampuli/[email protected] resolved: 99 packagesNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +reachable +uptime-100% ~updated-39d-ago -unpinned-packages(1)
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
@sampuli/[email protected] npm98 dependencies, resolved · MCP SDK @modelcontextprotocol/sdk 1.30.1 · advisories checked 2026-10-19
| advisory | severity | package | fixed in |
|---|---|---|---|
| GHSA-6qxp-vccf-f47hMCP TypeScript SDK: OAuth client could send credentials to an authorization server chosen by the MCP server | high | @modelcontextprotocol/[email protected]MCP SDK, direct | fixed in 1.31.0 |
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://sampuli.site/api/mcp streamable-http | none | yes | 100% | 261 ms | 2025-11-25 | 2026-10-20 |
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
@sampuli/mcp | npm | 0.1.2 | – | |
ghcr.io/kevinbett/sampuli-mcp:0.1.3 | oci | unpinned | – |
sampuli_describe_country | List a country's available fields (phone, national ID, tax number, IBAN, SWIFT/BIC, card, …) and preset scenarios. |
sampuli_fetch | Fetch synthetic test data from a natural request when you don't know the exact spec — e.g. "a SWIFT code for China", "Kenya phone number", "German passport", "a Nigerian BVN". Sampuli resolves the country and field for you (China→cn, "SWIFT code"→swift) and generates a format-true value. Prefer sampuli_generate when you already have a spec like "cn.swift". |
sampuli_generate | Generate format-true, entirely synthetic test data for a country. spec is "<country>.<selector>" where selector is a field key ("phone"), "person" (a full coherent record), or "preset:<key>" (a scenario). Values match each country's real formats and pass validators (IBAN mod-97, card Luhn, …) but are never real or registered. |
sampuli_list_countries | List every country Sampuli can generate synthetic test data for (90 countries), with the ISO code used as a spec prefix. |
sampuli_list_types | List the country-agnostic generic types (uuid, enum, int, float, date, vin, isbn, imei, mac, email, …) usable in a custom schema or as "any.<type>". |
sampuli_schema | Generate rows from a custom schema, mixing generic types and country-accurate fields. Each field has a name and a type — a generic type ("uuid", "int:0,500", "enum:free,pro,team", "date:2021,2025") or a country field spec ("ke.phone", "de.iban"). Optional per-field "blank" (0–1) makes it null that often. |
Schemas: list_tools.
{
"name": "io.github.kevinbett/sampuli",
"title": "Sampuli",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://sampuli.site/api/mcp",
"type": "streamable-http"
}
],
"version": "0.1.3",
"packages": [
{
"version": "0.1.2",
"transport": {
"type": "stdio"
},
"identifier": "@sampuli/mcp",
"registryType": "npm"
},
{
"transport": {
"type": "stdio"
},
"identifier": "ghcr.io/kevinbett/sampuli-mcp:0.1.3",
"registryType": "oci"
}
],
"repository": {
"url": "https://github.com/kevinbett/sampuli",
"source": "github"
},
"description": "Format-true synthetic test data for 90 countries — IBANs, SWIFT/BIC, IDs, cards, all certified."
}