AddressPenny MCP Server
An MCP server for AddressPenny address validation that enables users to validate postal addresses, bulk-clean address lists, and extract addresses from unstructured text through Claude Desktop, Cursor, and other MCP-compatible agents.
Ask AI about AddressPenny MCP Server
Powered by Claude Β· Grounded in docs
I know everything about AddressPenny MCP Server. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
@addresspenny/mcp
Model Context Protocol server for Addresspenny address validation. Lets Claude Desktop, Cursor, and any MCP-compatible agent validate postal addresses, bulk-clean lists, and extract addresses from freeform text.
Tools
validate_addressβ validate a single postal address. Returns the standardized address and validation metadata. Consumes 1 credit.bulk_validateβ validate up to 100 addresses in one call. Consumes 1 credit per address.parse_and_validateβ extract every postal address from unstructured text (chats, transcripts, scraped pages) and validate each one. Consumes 1 credit per extracted and validated address.
Requirements
- Node.js 18 or newer
- An Addresspenny account with an API token and the token's account ID β create both at addresspenny.com
Configuration
The server reads three environment variables:
| Variable | Required | Default | Notes |
|---|---|---|---|
ADDRESSPENNY_API_KEY | yes | β | API token from Addresspenny |
ADDRESSPENNY_ACCOUNT_ID | yes | β | Prefixed account ID (e.g. acct_abc123) |
ADDRESSPENNY_API_URL | no | https://addresspenny.com/api/v1 | Override for self-hosted or staging |
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent on your OS:
{
"mcpServers": {
"addresspenny": {
"command": "npx",
"args": ["-y", "@addresspenny/mcp"],
"env": {
"ADDRESSPENNY_API_KEY": "your-api-token",
"ADDRESSPENNY_ACCOUNT_ID": "acct_your_account_id"
}
}
}
}
Restart Claude Desktop. The tools appear under the tools icon in the chat input.
Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"addresspenny": {
"command": "npx",
"args": ["-y", "@addresspenny/mcp"],
"env": {
"ADDRESSPENNY_API_KEY": "your-api-token",
"ADDRESSPENNY_ACCOUNT_ID": "acct_your_account_id"
}
}
}
}
Local development
npm install
npm run build
ADDRESSPENNY_API_KEY=... ADDRESSPENNY_ACCOUNT_ID=... node build/index.js
The server speaks MCP over stdio. It is not meant to be invoked directly β point an MCP client at it using the config above.
License
MIT
