Zippopotam

liveGeography

Look up ZIP and postal codes worldwide via Zippopotam.us

2tools
0msauth
free tier50 calls/day

Tools

lookup_zipcoderequired: country, zipcode

Look up place information (city, state, coordinates) for a ZIP or postal code in a given country.

Parameters
NameTypeDescription
countryreqstringISO 3166-1 alpha-2 country code (e.g. "us", "gb", "de").
zipcodereqstringZIP or postal code to look up (e.g. "90210").
Try it
lookup_cityrequired: country, state, city

Get all postal codes for a city in a given country and state/province.

Parameters
NameTypeDescription
countryreqstringISO 3166-1 alpha-2 country code (e.g. "us", "gb").
statereqstringState or province abbreviation (e.g. "ca" for California).
cityreqstringCity name (e.g. "beverly+hills" or "beverly hills").
Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/zippopotam/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/zippopotam/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"lookup_zipcode","arguments":{"country": "US", "zipcode": "example"}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("lookup_zipcode", {"country":"example","zipcode":"example"});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("look up zip and postal codes worldwide via zippopotam");