Jerome Handy Wash MCP
A read-only MCP server that allows AI assistants to look up public information about Jerome Handy Wash laundromat, including machine details, pricing, hours, payment methods, amenities, FAQ answers, and contact links. It supports English and Spanish and requires no authentication.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://jeromehandywash.com/mcpWhat its tools do
8 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to jeromehandywash.com ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Look up machine sizes, counts, and wash prices
- Check laundromat opening hours and contact details
- Find published FAQ answers regarding laundry items
- Generate a pre-filled contact form link for issues
Source and maintenance
Protocol and capabilities
- Server
- com.jeromehandywash/site 2.1.4
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 8 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
8 advertised
get_machines — Washers and dryers
Every washer and dryer size at Jerome Handy Wash as the pricing page lists it: size, how many there are, the price and the notes on each card, plus the services page's machine description and its real cycle times. All Speed Queen. Counts are machines on site, not which are free right now (no tool knows that).
{
"type": "object",
"examples": [
{
"language": "en"
}
],
"properties": {
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"description": "Which language of the site to quote: \"en\" (default) or \"es\" (the Spanish pages, under /es/)."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"language",
"url",
"notice",
"washers",
"dryers",
"about",
"cycleTimes",
"services"
],
"properties": {
"url": {
"type": "string"
},
"about": {
"type": "array",
"items": {
"type": "string"
}
},
"dryers": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"description",
"price",
"priceUnit",
"notes",
"capacityLb",
"count"
],
"properties": {
"flag": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer"
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"price": {
"type": "string"
},
"priceUnit": {
"type": "string"
},
"capacityLb": {
"type": "number"
},
"description": {
"type": "string"
},
"startMinutes": {
"type": "integer"
},
"minutesPerQuarter": {
"type": "integer"
}
}
}
},
"notice": {
"type": "string"
},
"washers": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"description",
"price",
"priceUnit",
"notes",
"capacityLb",
"count"
],
"properties": {
"flag": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer"
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"price": {
"type": "string"
},
"priceUnit": {
"type": "string"
},
"capacityLb": {
"type": "number"
},
"description": {
"type": "string"
},
"startMinutes": {
"type": "integer"
},
"minutesPerQuarter": {
"type": "integer"
}
}
}
},
"language": {
"enum": [
"en",
"es"
],
"type": "string"
},
"services": {
"type": "string"
},
"cycleTimes": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"value"
],
"properties": {
"label": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
}
}{
"title": "Washers and dryers",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_pricing — Prices
The pricing page: each washer and dryer price exactly as printed, what a typical wash and dry costs, vending prices, the 25 cent Scan to Pay surcharge note and the commercial or bulk note. Returns published prices without calculating custom totals.
{
"type": "object",
"examples": [
{
"language": "en"
}
],
"properties": {
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"description": "Which language of the site to quote: \"en\" (default) or \"es\" (the Spanish pages, under /es/)."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"language",
"url",
"notice",
"heading",
"washers",
"dryers",
"typicalVisit",
"supplies",
"surcharge",
"commercial"
],
"properties": {
"url": {
"type": "string"
},
"lead": {
"type": "string"
},
"dryers": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"description",
"price",
"priceUnit",
"notes",
"capacityLb",
"count"
],
"properties": {
"flag": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer"
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"price": {
"type": "string"
},
"priceUnit": {
"type": "string"
},
"capacityLb": {
"type": "number"
},
"description": {
"type": "string"
},
"startMinutes": {
"type": "integer"
},
"minutesPerQuarter": {
"type": "integer"
}
}
}
},
"notice": {
"type": "string"
},
"heading": {
"type": "string"
},
"washers": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"description",
"price",
"priceUnit",
"notes",
"capacityLb",
"count"
],
"properties": {
"flag": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer"
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"price": {
"type": "string"
},
"priceUnit": {
"type": "string"
},
"capacityLb": {
"type": "number"
},
"description": {
"type": "string"
},
"startMinutes": {
"type": "integer"
},
"minutesPerQuarter": {
"type": "integer"
}
}
}
},
"language": {
"enum": [
"en",
"es"
],
"type": "string"
},
"supplies": {
"type": "object",
"required": [
"heading",
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"item",
"price"
],
"properties": {
"item": {
"type": "string"
},
"price": {
"type": "string"
}
}
}
},
"heading": {
"type": "string"
}
}
},
"surcharge": {
"type": "object",
"required": [
"heading",
"text"
],
"properties": {
"text": {
"type": "string"
},
"heading": {
"type": "string"
}
}
},
"commercial": {
"type": "object",
"required": [
"heading",
"text"
],
"properties": {
"text": {
"type": "array",
"items": {
"type": "string"
}
},
"heading": {
"type": "string"
}
}
},
"typicalVisit": {
"type": "string"
}
}
}{
"title": "Prices",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_payment_methods — How to pay
How you can pay at Jerome Handy Wash, as the pricing page lists it (coins, the change machine and the bills it takes, the ATM, cards, the Speed Queen app, Scan to Pay wallets), the surcharge note, the Speed Queen app location code and what the app does. Payment happens at the machine; nothing here takes one.
{
"type": "object",
"examples": [
{
"language": "en"
}
],
"properties": {
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"description": "Which language of the site to quote: \"en\" (default) or \"es\" (the Spanish pages, under /es/)."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"language",
"url",
"notice",
"heading",
"methods",
"surcharge",
"locationCode",
"app"
],
"properties": {
"app": {
"type": "object",
"required": [
"url",
"heading",
"text",
"links"
],
"properties": {
"url": {
"type": "string"
},
"text": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"required": [
"text",
"href"
],
"properties": {
"href": {
"type": "string"
},
"text": {
"type": "string"
}
}
}
},
"heading": {
"type": "string"
}
}
},
"url": {
"type": "string"
},
"notice": {
"type": "string"
},
"heading": {
"type": "string"
},
"methods": {
"type": "array",
"items": {
"type": "string"
}
},
"language": {
"enum": [
"en",
"es"
],
"type": "string"
},
"surcharge": {
"type": "object",
"required": [
"heading",
"text"
],
"properties": {
"text": {
"type": "string"
},
"heading": {
"type": "string"
}
}
},
"locationCode": {
"type": "object",
"required": [
"label",
"code",
"note"
],
"properties": {
"code": {
"type": "string"
},
"note": {
"type": "string"
},
"label": {
"type": "string"
}
}
}
}
}{
"title": "How to pay",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_location_hours — Location, hours and contact
Where Jerome Handy Wash is and when it is open, from the contact page: address, hours, phone, email, mailing address and languages as listed, the page's own opening lines, the map and directions links, and the coordinates and opening hours from the page's structured data.
{
"type": "object",
"examples": [
{
"language": "en"
}
],
"properties": {
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"description": "Which language of the site to quote: \"en\" (default) or \"es\" (the Spanish pages, under /es/)."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"language",
"url",
"notice",
"name",
"summary",
"details",
"address",
"geo",
"openingHours",
"directions"
],
"properties": {
"geo": {
"type": "object",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number"
},
"longitude": {
"type": "number"
}
}
},
"url": {
"type": "string"
},
"name": {
"type": "string"
},
"notice": {
"type": "string"
},
"address": {
"type": "object",
"required": [
"street",
"locality",
"region",
"postalCode",
"country"
],
"properties": {
"region": {
"type": "string"
},
"street": {
"type": "string"
},
"country": {
"type": "string"
},
"locality": {
"type": "string"
},
"postalCode": {
"type": "string"
}
}
},
"details": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"text"
],
"properties": {
"href": {
"type": "string"
},
"text": {
"type": "string"
},
"label": {
"type": "string"
}
}
}
},
"summary": {
"type": "array",
"items": {
"type": "string"
}
},
"language": {
"enum": [
"en",
"es"
],
"type": "string"
},
"directions": {
"type": "string"
},
"openingHours": {
"type": "object",
"required": [
"dayOfWeek",
"opens",
"closes"
],
"properties": {
"opens": {
"type": "string"
},
"closes": {
"type": "string"
},
"dayOfWeek": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}{
"title": "Location, hours and contact",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_amenities — What is on site
What the store offers, from the services page: its feature cards, the full amenities list, what the space is like (parking, cameras, folding tables, benches, restroom, unattended), the softened water and the free WiFi (network name and password as published).
{
"type": "object",
"examples": [
{
"language": "en"
}
],
"properties": {
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"description": "Which language of the site to quote: \"en\" (default) or \"es\" (the Spanish pages, under /es/)."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"language",
"url",
"notice",
"features",
"amenities",
"space",
"water",
"wifi"
],
"properties": {
"url": {
"type": "string"
},
"wifi": {
"type": "object",
"required": [
"heading",
"text"
],
"properties": {
"text": {
"type": "string"
},
"heading": {
"type": "string"
}
}
},
"space": {
"type": "object",
"required": [
"heading",
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "string"
}
},
"heading": {
"type": "string"
}
}
},
"water": {
"type": "object",
"required": [
"heading",
"text"
],
"properties": {
"text": {
"type": "string"
},
"heading": {
"type": "string"
}
}
},
"notice": {
"type": "string"
},
"features": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"text"
],
"properties": {
"text": {
"type": "string"
},
"title": {
"type": "string"
}
}
}
},
"language": {
"enum": [
"en",
"es"
],
"type": "string"
},
"amenities": {
"type": "object",
"required": [
"heading",
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "string"
}
},
"heading": {
"type": "string"
}
}
}
}
}{
"title": "What is on site",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}report_machine_issue — How to report a machine problem
Read-only: how the site says to report a machine or payment problem (a machine that took money, stopped mid cycle or will not open), in English or Spanish: what to include, the email and phone, the response and refund lines as published, and the report page. It does NOT file, send or store a report.
{
"type": "object",
"examples": [
{
"language": "es"
}
],
"properties": {
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"description": "Which language of the site to quote: \"en\" (default) or \"es\" (the Spanish pages, under /es/)."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"language",
"url",
"notice",
"heading",
"lead",
"include",
"contacts",
"response",
"refunds",
"reportPage",
"filesNothing"
],
"properties": {
"url": {
"type": "string"
},
"lead": {
"type": "string"
},
"sign": {
"type": "string"
},
"alsoOn": {
"type": "string"
},
"notice": {
"type": "string"
},
"heading": {
"type": "string"
},
"include": {
"type": "object",
"required": [
"heading",
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "string"
}
},
"heading": {
"type": "string"
}
}
},
"refunds": {
"type": "string"
},
"contacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"text",
"href"
],
"properties": {
"href": {
"type": "string"
},
"text": {
"type": "string"
},
"label": {
"type": "string"
}
}
}
},
"language": {
"enum": [
"en",
"es"
],
"type": "string"
},
"response": {
"type": "string"
},
"reportPage": {
"type": "string"
},
"filesNothing": {
"type": "string"
}
}
}{
"title": "How to report a machine problem",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}search_faq — Search the FAQ
The site's FAQ answers (hours, prices, machines, payment, ATM, WiFi, what to do when something goes wrong). Take A Load Off answers identify the separate wash-and-fold partner and link to its own site, without its prices, turnaround or phone. Returns up to five answers by default, with or without a query. Use language "es" to search the Spanish FAQ.
{
"type": "object",
"examples": [
{
"query": "Is there an ATM?"
}
],
"properties": {
"limit": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "At most this many answers (default 5, maximum 10). The source page contains the full FAQ."
},
"query": {
"type": "string",
"pattern": "\\S",
"maxLength": 200,
"minLength": 1,
"description": "Nonblank words to look for, e.g. \"ATM\" or \"king comforter\"; omit to browse FAQ answers."
},
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"description": "Which language of the site to quote: \"en\" (default) or \"es\" (the Spanish pages, under /es/)."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"language",
"url",
"notice",
"queryWords",
"results",
"total"
],
"properties": {
"url": {
"type": "string"
},
"total": {
"type": "integer"
},
"notice": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"n",
"question",
"answer",
"url"
],
"properties": {
"n": {
"type": "integer"
},
"url": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"required": [
"text",
"href"
],
"properties": {
"href": {
"type": "string"
},
"text": {
"type": "string"
}
}
}
},
"answer": {
"type": "string"
},
"question": {
"type": "string"
}
}
}
},
"language": {
"enum": [
"en",
"es"
],
"type": "string"
},
"queryWords": {
"type": "array",
"items": {
"type": "string"
}
}
}
}{
"title": "Search the FAQ",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_contact_form_link — Contact form link
A link that opens the site's contact form with the reason (topic), the machine number and the message already filled in, in English or Spanish. It only builds the link and sends nothing. There are no separate name, email or phone inputs. Message text is included in the URL. The person checks the form, adds their own name and email, and presses Send message.
{
"type": "object",
"examples": [
{
"topic": "machine",
"machine": "12",
"message": "Washer 12 took my money and did not start"
}
],
"properties": {
"topic": {
"enum": [
"general",
"machine",
"payment",
"bulk",
"other"
],
"type": "string",
"description": "The reason, one of the form's own values: general (a question), machine (a broken machine), payment (a payment or refund problem), bulk (commercial or bulk pricing), other."
},
"machine": {
"type": "string",
"maxLength": 20,
"description": "The machine number, if it applies."
},
"message": {
"type": "string",
"maxLength": 1500,
"description": "The message, in the person's own words."
},
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"description": "Which language of the site to quote: \"en\" (default) or \"es\" (the Spanish pages, under /es/)."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"language",
"url",
"notice",
"link",
"filled",
"topics",
"sendButton",
"sendsNothing"
],
"properties": {
"url": {
"type": "string"
},
"link": {
"type": "string"
},
"filled": {
"type": "array",
"items": {
"type": "string"
}
},
"notice": {
"type": "string"
},
"topics": {
"type": "array",
"items": {
"type": "object",
"required": [
"value",
"label"
],
"properties": {
"label": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
},
"language": {
"enum": [
"en",
"es"
],
"type": "string"
},
"sendButton": {
"type": "string"
},
"sendsNothing": {
"type": "string"
}
}
}{
"title": "Contact form link",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1014 ms
- 95th percentile latency
- 1014 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1014 ms · metadata changed · 8 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http jerome-handy-wash-mcp https://jeromehandywash.com/mcpCodex
codex mcp add jerome-handy-wash-mcp --url https://jeromehandywash.com/mcpCursor
{
"mcpServers": {
"jerome-handy-wash-mcp": {
"url": "https://jeromehandywash.com/mcp"
}
}
}Cline
{
"mcpServers": {
"jerome-handy-wash-mcp": {
"type": "streamableHttp",
"url": "https://jeromehandywash.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"jerome-handy-wash-mcp": {
"type": "http",
"url": "https://jeromehandywash.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http jerome-handy-wash-mcp https://jeromehandywash.com/mcpClaude Desktop
https://jeromehandywash.com/mcpWindsurf
{
"mcpServers": {
"jerome-handy-wash-mcp": {
"serverUrl": "https://jeromehandywash.com/mcp"
}
}
}Let your agent find its tools
Find servers like Jerome Handy Wash MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other productivity and knowledge servers
Do you run Jerome Handy Wash MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.