Developers & AI Integration

Connect AI to missing.pet

Let AI assistants search alerts, find matches, and publish new ones on behalf of users. Read-only access requires no authentication.

MCP Server

missing.pet exposes a Model Context Protocol server using the Streamable HTTP transport (spec 2025-03-26). It works with Claude Desktop, Claude.ai Integrations, and any MCP-compatible client.

Endpoint
https://missing.pet/api/mcp

Add to Claude Desktop

Settings β†’ Integrations β†’ Add MCP Server, then paste the URL above. Or add it manually to your claude_desktop_config.json:

{
  "mcpServers": {
    "missing-pet": {
      "url": "https://missing.pet/api/mcp"
    }
  }
}

Add to Claude.ai

Settings β†’ Integrations β†’ Add integration β†’ enter https://missing.pet/api/mcp

Test with MCP Inspector

npx @modelcontextprotocol/inspector https://missing.pet/api/mcp

Tool reference

ToolAuthDescription
search_alertsNo authFind alerts near a location. Params: lat, lng, radius_km, species, type, since, query, limit, cursor.
get_alertNo authGet full details of an alert by UUID or slug. Returns photos, location, and contact URL.
find_matchesNo authFind potential matches between a lost alert and found alerts. Returns a ranked list with a score (0–100) and reasons. Scores β‰₯40 = high confidence.
publish_alertEmail verifyPublish a lost or found pet alert. Sends a verification email; alert goes live after the user clicks the link.
send_messageEmail verifySend a message to an alert owner through the platform. The sender confirms via email before delivery.
subscribe_zoneEmail verifySubscribe to email notifications when new alerts appear near a location.

Example prompts

πŸ’¬"I lost my golden retriever Luna near Castelar, Argentina yesterday. Help me post an alert."
πŸ’¬"Are there any found dog alerts near 40.4168Β° N, 3.7038Β° W in the last two weeks?"
πŸ’¬"I found a black cat in Madrid. Does it match any lost cat alerts nearby?"
πŸ’¬"Notify me at my@email.com when a lost dog appears within 10 km of my location."

REST API

Standard JSON API with CORS open. No authentication required for reads.

Search alerts

GET https://missing.pet/api/v1/alerts
  ?lat=-34.6&lng=-58.4   # center of search area
  &radius_km=20          # default 50, max 500
  &species=dog           # dog | cat | bird | other
  &type=lost             # lost | found
  &since=2024-01-01      # ISO date
  &q=labrador            # free text (name, breed, color, city)
  &limit=20              # default 20, max 100
  &cursor=<timestamp>    # keyset pagination

Get one alert

GET https://missing.pet/api/v1/alerts/{uuid-or-slug}

Response fields

FieldDescription
idAlert UUID
slugURL-friendly identifier
short_code6-char code for short links and QR
alert_type"lost" or "found"
status"active", "resolved", "expired"
pet_type"dog", "cat", "bird", "other"
pet_namePet name (may be null)
breed / color / sizePhysical characteristics
city / country_codeLocation (ISO 3166-1 alpha-2)
latitude / longitudeRounded to ~1 km by default
photosArray of public image URLs
urlFull alert page URL
contact_urlLink to contact the owner (in-platform)
qr_urlURL of the QR code PNG for this alert
Never exposed: contact_phone, contact_email, user_id, creator_email, moderation_result. Contact always happens inside the platform.

QR Service

Any AI or app generating a poster for a missing pet can embed a QR code that links directly back to the alert on missing.pet. The QR image is served as PNG, CORS is open, and the response is cached for 24 hours.

GET https://missing.pet/api/qr/{short_code}          β†’ 256Γ—256 PNG
GET https://missing.pet/api/qr/{short_code}?size=400  β†’ custom size (max 512)
# The QR encodes the short link:
https://missing.pet/a/{short_code}
AI poster tip: After calling publish_alert, the response includes qr_url. Include it in the poster so anyone who scans it lands on the alert page and can contact the owner.

Privacy & rate limits

No private data in API

Phone numbers, emails, and exact GPS coordinates are never returned. Coordinates are rounded to ~1 km.

In-platform contact only

Messages go through missing.pet. AI tools never see or forward contact details.

Email verification required

All write actions require the human to click a confirmation link before anything is published or sent.

Rate limits

5 alert publications / hour per IP Β· 20 messages / hour Β· 10 subscriptions / hour.

Full privacy policy: missing.pet/en/privacy Β· Machine-readable descriptor: missing.pet/server.json Β· AI hints file: missing.pet/llms.txt