ApiCrate MCP Server
  
Connect any MCP-compatible AI agent to 22 data tools across 9 domains — IP geolocation, email risk scoring, postal codes, countries, timezones, user-agent parsing, cryptographic hashing, Bible search, and QR code generation.
This package provides a local STDIO transport for the ApiCrate MCP server. It proxies tool calls from your MCP client to the hosted API, so your API key stays in an environment variable instead of a config file.
You can also connect directly to the hosted server via Streamable HTTP at
https://api.apicrate.io/mcp/— no install needed. See HTTP Setup below.
Quick Start
1. Get your API key
Sign up free at apicrate.io — no credit card required.
2. Install
pip install apicrate-mcp
Or run without installing:
uvx apicrate-mcp
3. Configure your client
<details open> <summary><strong>Claude Desktop</strong></summary>
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"apicrate": {
"command": "apicrate-mcp",
"env": {
"APICRATE_API_KEY": "ac_usr_your_key_here"
}
}
}
}
</details>
<details> <summary><strong>Claude Code</strong></summary>
claude mcp add apicrate -- apicrate-mcp
Then set your key:
export APICRATE_API_KEY=ac_usr_your_key_here
Or add a .mcp.json to your project root:
{
"mcpServers": {
"apicrate": {
"command": "apicrate-mcp",
"env": {
"APICRATE_API_KEY": "ac_usr_your_key_here"
}
}
}
}
</details>
<details> <summary><strong>Cursor</strong></summary>
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"apicrate": {
"command": "apicrate-mcp",
"env": {
"APICRATE_API_KEY": "ac_usr_your_key_here"
}
}
}
}
</details>
<details> <summary><strong>Windsurf</strong></summary>
Add to ~/.codeium/windsurf/mcp_settings.json:
{
"mcpServers": {
"apicrate": {
"command": "apicrate-mcp",
"env": {
"APICRATE_API_KEY": "ac_usr_your_key_here"
}
}
}
}
</details>
Streamable HTTP (no install)
If your client supports Streamable HTTP, skip the install and connect directly:
{
"mcpServers": {
"apicrate": {
"type": "streamableHttp",
"url": "https://api.apicrate.io/mcp/",
"headers": {
"X-API-Key": "ac_usr_your_key_here"
}
}
}
}
4. Verify
Ask your agent:
"What country has code DE?"
It should call apicrate-lookup-country and return information about Germany.
Tools
User Agents
| Tool | Description | Credits | |------|-------------|---------| | apicrate-parse-user-agent | Parse browser, OS, device & bot from a UA string | 2 | | apicrate-parse-user-agents-bulk | Batch parse up to 100 UA strings | 1/UA |
IP Geolocation
| Tool | Description | Credits | |------|-------------|---------| | apicrate-geolocate-ip | Country, city, ISP, ASN & VPN/Tor detection | 5 |
Countries
| Tool | Description | Credits | |------|-------------|---------| | apicrate-lookup-country | Full ISO 3166-1 record — capital, currencies, languages | 1 | | apicrate-search-countries | Filter by region, sub-region, or query | 3 | | apicrate-validate-country-codes | Validate up to 50 country codes in one call | 1/code |
Postal Codes
| Tool | Description | Credits | |------|-------------|---------| | apicrate-lookup-postal-code | Resolve to city, admin regions & coordinates | 2 | | apicrate-validate-postal-code | Check format validity and database existence | 1 | | apicrate-search-postal-codes | Search by prefix or place name | 3 | | apicrate-list-postal-systems | List all countries with postal code data | 2 | | apicrate-get-postal-system | Format, regex & examples for a country | 2 | | apicrate-validate-postal-codes-bulk | Batch validate up to 50 postal codes | 2/code | | apicrate-find-nearby-postal-codes | Find codes within a radius of a GPS point | 5 |
Timezones
| Tool | Description | Credits | |------|-------------|---------| | apicrate-get-timezone-info | Current time, UTC offset & DST status | 1 | | apicrate-convert-time | Convert time between two timezones | 1 |
Hashing
| Tool | Description | Credits | |------|-------------|---------| | apicrate-compute-hash | MD5, SHA-1, SHA-256, or SHA-512 | 1 | | apicrate-hash-password | bcrypt, scrypt, or argon2id | 2 |
Bible
| Tool | Description | Credits | |------|-------------|---------| | apicrate-get-bible-verse | Fetch a verse or range across 30+ translations | 1 | | apicrate-search-bible | Full-text search across translations | 3 |
Email Risk
| Tool | Description | Credits | |------|-------------|---------| | apicrate-check-email-risk | Syntax, MX, disposable, domain age, abuse list | 4 | | apicrate-check-email-risk-bulk | Bulk assess up to 10 emails | 4/email |
QR Code
| Tool | Description | Credits | |------|-------------|---------| | apicrate-generate-qr | Generate QR from text, URL, WiFi, vCard, email, SMS, or geo | 2 |
Example Prompts
Once connected, try these:
- "Where is IP 203.0.113.5 located?"
- "What city is postal code EC1A 1BB in?"
- "Parse this User-Agent string for me"
- "Convert 9am London time to Tokyo"
- "Hash this password with argon2id"
- "Look up John 3:16 in the NIV"
- "Is this email address risky: test@tempmail.com?"
- "Find postal codes within 10km of Berlin's center"
Configuration
| Environment Variable | Default | Description | |---------------------|---------|-------------| | APICRATE_API_KEY | (required) | Your API key from apicrate.io | | APICRATE_BASE_URL | https://api.apicrate.io | API base URL (for testing/self-hosted) | | APICRATE_TIMEOUT | 30 | HTTP request timeout in seconds |
Credits & Pricing
MCP tool calls consume credits from a daily pool, separate from REST API quota.
| Plan | Credits/day | Price | |------|-------------|-------| | Starter | 100 | Free | | Pro | 50,000 | $19/mo | | Enterprise | Unlimited | Custom |
Every response includes quota headers (X-Quota-Limit, X-Quota-Remaining, X-Quota-Reset) so you always know your usage.
Development
# Clone the repo
git clone https://github.com/apicrateio/apicrate-mcp.git
cd apicrate-mcp
# Create a virtual environment
python -m venv .venv
source .venv/bin/activate
# Install in development mode
pip install -e ".[dev]"
# Run tests
pytest
# Run the server locally
APICRATE_API_KEY=ac_usr_your_key apicrate-mcp
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.











