Skip to main content

townshipamerica-mcp

PyPI License: MIT

Model Context Protocol (MCP) server that exposes Township America's PLSS and Texas TXSS conversion tools to AI agents — Claude, ChatGPT, Cursor, GitHub Copilot, Windsurf, or any MCP-compatible client.

Also includes a Python client (TownshipMCPClient) for scripts and notebooks, backed by the townshipamerica SDK.

API Documentation · GitHub · PyPI · npm (Node)

Requires a Pro+ subscription ($99/mo) for bundled API access.

Installation

pip install townshipamerica-mcp

Requires Python 3.10+.

Quick Start

Set your API key (generate at app.townshipamerica.com/settings/api-keys):

export TOWNSHIP_AMERICA_API_KEY="ta_…"

Tools

Tool Description
plss_to_coordinates Convert a PLSS or Texas TXSS description to GPS
coordinates_to_plss Reverse-lookup coordinates to a legal description
plss_to_geojson Return the tract polygon/multipolygon as GeoJSON
validate_description Validate and normalize locally (PLSS + TXSS, no API)
batch_convert Convert up to 100 descriptions in one request
autocomplete Suggestions for partial PLSS or TXSS input (max 10)

Coverage: 30 PLSS states, 37 principal meridians, and all 254 Texas counties (TXSS). Powered by BLM CadNSDI V2 and Texas GLO survey data.

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "townshipamerica": {
      "command": "townshipamerica-mcp",
      "env": {
        "TOWNSHIP_AMERICA_API_KEY": "ta_…"
      }
    }
  }
}

Restart Claude Desktop to apply.

Cursor / VS Code / Continue

{
  "mcpServers": {
    "townshipamerica": {
      "command": "townshipamerica-mcp",
      "env": { "TOWNSHIP_AMERICA_API_KEY": "ta_…" },
    },
  },
}

Stdio (any MCP client)

TOWNSHIP_AMERICA_API_KEY=ta_… townshipamerica-mcp

Environment variables

Variable Default Purpose
TOWNSHIP_AMERICA_API_KEY (required) Your Pro+ API key (preferred)
TA_API_KEY Legacy alias for TOWNSHIP_AMERICA_API_KEY
TOWNSHIP_AMERICA_BASE_URL https://developer.townshipamerica.com Override the API endpoint
MCP_LOG_LEVEL INFO Log level for stderr

Quota

Pro+ bundled API access: 1,000 search calls/month. If exceeded, tools return a clear quota message with upgrade guidance. Visit townshipamerica.com/pricing.

Python client

For programmatic use without an MCP host:

from townshipamerica_mcp import TownshipMCPClient

client = TownshipMCPClient(api_key="ta_…")

result = client.plss_to_coordinates("NW 25 24N 1E 6th Meridian")
print(result.lat, result.lng)

v = client.validate_description("NW 25 24N 1E 6th Meridian")
print(v.valid, v.normalized)

batch = client.batch_convert(["NW 25 24N 1E 6th Meridian", "SE 12 4N 5E Boise Meridian"])
print(batch.converted, batch.failed)

For full SDK features (async, GeoPandas-friendly models), use pip install townshipamerica.

Exceptions

Exception Trigger
AuthenticationError Invalid or missing API key
QuotaExceededError Rate limit / quota exceeded
NotFoundError Location not in PLSS database
ValidationError Malformed request
TownshipMCPError Base class / other errors

License

MIT — see LICENSE.

Download files

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

Source Distribution

townshipamerica_mcp-1.0.3.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

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

townshipamerica_mcp-1.0.3-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file townshipamerica_mcp-1.0.3.tar.gz.

File metadata

  • Download URL: townshipamerica_mcp-1.0.3.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.17.0 {"ci":true,"cpu":"x86_64","distro":{"id":"noble","libc":{"lib":"glibc","version":"2.39"},"name":"Ubuntu","version":"24.04"},"implementation":{"name":"CPython","version":"3.12.13"},"installer":{"name":"hatch","version":"1.17.0"},"openssl_version":"OpenSSL 3.0.13 30 Jan 2024","python":"3.12.13","system":{"name":"Linux","release":"6.17.0-1018-azure"}} HTTPX2/2.4.0

File hashes

Hashes for townshipamerica_mcp-1.0.3.tar.gz
Algorithm Hash digest
SHA256 3d07461a5b938ff6c056f975159114160fd8f6a20a59a93dc264ff8e675a0d28
MD5 9906c0fe38cd689fd543c02cdcc45e7f
BLAKE2b-256 73db0325e82204503d4d9c3896e17c08771e40d8c8f012a5bc3a8384ff9dbd78

See more details on using hashes here.

File details

Details for the file townshipamerica_mcp-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: townshipamerica_mcp-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 14.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.17.0 {"ci":true,"cpu":"x86_64","distro":{"id":"noble","libc":{"lib":"glibc","version":"2.39"},"name":"Ubuntu","version":"24.04"},"implementation":{"name":"CPython","version":"3.12.13"},"installer":{"name":"hatch","version":"1.17.0"},"openssl_version":"OpenSSL 3.0.13 30 Jan 2024","python":"3.12.13","system":{"name":"Linux","release":"6.17.0-1018-azure"}} HTTPX2/2.4.0

File hashes

Hashes for townshipamerica_mcp-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b029ff5aac412444d908583803b34ec0d0c12bfca7627c76b08fd5c62caf9592
MD5 9278ac8b83f9d345c5767f850323e13a
BLAKE2b-256 1a949ea856f2cd08a54a694e63029340f398eebccddd39c655b8b0941511e3d4

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.3 This release

2 files

1.0.2

2 files

1.0.0

2 files

Supported by

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