MCP server for querying BLM land data: PLSS coordinates, surface management agency, and mining claims
Project description
mcblmplss
MCP server for querying U.S. public land data by coordinates.
Drop a pin anywhere in the western U.S. and instantly get:
- PLSS location — Section 12, Township 4N, Range 6E
- Land manager — BLM, Forest Service, National Park, Private, etc.
- Mining claims — Active lode/placer claims with serial numbers
When would I use this?
| Use Case | What you get |
|---|---|
| Dispersed camping | Check if land is BLM/Forest Service before setting up camp |
| Land research | Get legal descriptions for title searches or due diligence |
| Prospecting | Find existing mining claims before staking your own |
| Navigation | Convert GPS coordinates to the township/range system used on paper maps |
| GIS workflows | Programmatic access to BLM cadastral data |
Installation
pip install mcblmplss
Or run directly without installing:
uvx mcblmplss
Add to Claude Code
claude mcp add blm "uvx mcblmplss"
Tools
get_plss_location
Convert coordinates to Section/Township/Range.
> get_plss_location(latitude=40.0, longitude=-105.0)
Section 9, Township 1N, Range 68W, 6th Meridian
State: CO
PLSS ID: CO060010S0680W0SN090
get_land_manager
Find out who manages the land (and whether you can access it).
> get_land_manager(latitude=38.5, longitude=-110.5)
Bureau of Land Management (BLM) - Department of the Interior
Unit: Bureau of Land Management
State: UT
Status: Federal, Public access
> get_land_manager(latitude=40.0, longitude=-105.0)
Private (PVT)
State: CO
get_mining_claims
Find active mining claims at a location.
> get_mining_claims(latitude=39.5, longitude=-117.0)
Found 42 mining claim(s):
MAGA #6
Serial: NV105221817
Type: Lode Claim
Status: Active
Acres: 20.66
MS 2
Serial: NV105223666
Type: Lode Claim
Status: Active
Acres: 20.66
...
Coverage
Data is available for 30 states where the Public Land Survey System was used:
Not covered: Eastern seaboard states (use metes-and-bounds), Texas (independent surveys), Hawaii.
Error Handling
The server returns clear error messages when:
- Outside PLSS coverage: "No PLSS data found. Location may be outside surveyed areas."
- API timeout: "BLM API request timed out. The service may be slow or unavailable."
- No mining claims: "No mining claims found at this location."
Data Sources
All data comes from official BLM ArcGIS REST services:
| Data | Source | Update Frequency |
|---|---|---|
| PLSS | BLM National PLSS CadNSDI | Quarterly |
| Surface Management | BLM SMA | Annual |
| Mining Claims | BLM MLRS | Weekly |
Disclaimer: This data is for informational purposes only. For legal land descriptions, consult official BLM records or a licensed surveyor.
Development
git clone https://git.supported.systems/MCP/mcblmplss.git
cd mcblmplss
uv sync
uv run mcblmplss
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcblmplss-2024.12.3.tar.gz.
File metadata
- Download URL: mcblmplss-2024.12.3.tar.gz
- Upload date:
- Size: 10.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab0bb9f0c1ded557efac8518002d7d991ab1406777a397955fbedbd9b1102a5a
|
|
| MD5 |
b51ddcd172b1c5cc9fa6f8029bf14462
|
|
| BLAKE2b-256 |
2d4099dd3297dfa4bc60925a66fad69faf230069949e6263572bdef7c76cbfa7
|
File details
Details for the file mcblmplss-2024.12.3-py3-none-any.whl.
File metadata
- Download URL: mcblmplss-2024.12.3-py3-none-any.whl
- Upload date:
- Size: 14.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
44d674ca2562c88ff292d232f3c31890ec0ae5ffce52ce7e7a91f4e5ee53fabe
|
|
| MD5 |
6e7312f86ba490e8f152bce097471e61
|
|
| BLAKE2b-256 |
c282e8000ee13d8c21f8a5d049ff217b35987b9dce36e0ac39e0fa1957e12acf
|