Skip to main content

MCP server for Tractive GPS pet trackers — location, status, history, and more

Project description

tractive-mcp

An MCP server for the Tractive GPS pet tracker. Lets AI assistants like Claude query your pet's location, tracker status, position history, and more.

Requirements

  • Python 3.13+
  • uv
  • A Tractive account with at least one GPS tracker

Quick Start (from PyPI)

# Authenticate
uvx tractive-mcp auth

# Add to Claude Code
claude mcp add tractive -- uvx tractive-mcp

No cloning or manual setup needed.

Install from Source

git clone https://github.com/rexchoppers/tractive-mcp.git
cd tractive-mcp
uv sync
uv run tractive-mcp auth
claude mcp add tractive -- uv run tractive-mcp

Authentication

Tractive does not provide any OAuth mechanisms. As a result, email and passwords have to be stored locally. Run the auth command to save your Tractive credentials:

uvx tractive-mcp auth

Credentials are stored at ~/.config/tractive-mcp/credentials.json with 0600 permissions.

Alternatively, set environment variables (useful for CI/Docker):

export TRACTIVE_EMAIL="you@example.com"
export TRACTIVE_PASSWORD="your-password"

Usage with Claude Code

claude mcp add tractive -- uvx tractive-mcp

Usage with Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "tractive": {
      "command": "uvx",
      "args": ["tractive-mcp"]
    }
  }
}

Available Tools

Discovery

Tool Description
ping Health check — returns "pong"
whoami Confirms credentials are valid and returns user info
list_pets Lists all pets on the account with their name, type, and device_id

Location

Tool Description
get_pet_location(device_id) Current GPS coordinates, speed, altitude, accuracy
get_pet_distance_from_home(device_id) Distance in metres from the pet's home location
get_recent_positions(device_id, hours, include_points) Position history with summary stats (distance, bounding box, point count). Set include_points=True for the full breadcrumb trail

Tracker

Tool Description
get_tracker_status(device_id) Battery level, charging state, connection state, firmware
set_buzzer(device_id, active) Turn the tracker buzzer on/off
set_led(device_id, active) Turn the tracker LED on/off
set_live_tracking(device_id, active) Toggle live tracking mode (more frequent GPS, more battery)

Pet Info

Tool Description
get_pet_profile(device_id) Full pet profile — breed, weight, birthday, activity goals

Emergency

Tool Description
lost_pet(device_id, enable_live_tracking, enable_buzzer, enable_led) All-in-one emergency tool. Returns location, distance from home, tracker status, and recent activity. Optionally activates live tracking, buzzer, and LED

Project Structure

src/tractive_mcp/
  server.py    — MCP server, tool definitions, auth CLI
  client.py    — Credential management, Tractive client helper
  models.py    — Response dataclasses

License

See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tractive_mcp-0.1.0.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tractive_mcp-0.1.0-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file tractive_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: tractive_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tractive_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0dde8d298bb32ed87b0c39f5ccda6b4659a22c4f9da7299dffca0a9234ddcecc
MD5 ad61c6b27d8673b5e4d1b27186d6cf69
BLAKE2b-256 e0437221e45b283db01950dc12157a002a12f09edcf8f7e4c84ce6ca223ffbec

See more details on using hashes here.

File details

Details for the file tractive_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: tractive_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tractive_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 275615e7ff06b7bc09dfb8531840f4cbb50e5ad43f68dae4c1dbe63590b3f052
MD5 23484ebcdc8acb5857f6b2f2db8225fc
BLAKE2b-256 6271a3c867fbbb88e4a1ce2ed7dc6e79cf2e82f8ab31fe28c09eed4438ac0cb6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page