macrostrat mcp
Enables Claude to query comprehensive geologic data from the Macrostrat API, including geologic units, columns, minerals, and timescales through natural language.
Enables Claude to query comprehensive geologic data from the Macrostrat API, including geologic units, columns, minerals, and timescales through natural language.
Claude MCP server for Macrostrat API
An MCP server implementation for providing access to the Macrostrat API within Claude Desktop.
This Model Context Protocol (MCP) server enables AI assistants and applications to:
Users can run queries using natural language.
Q. What is the geologic history of Nashville, TN?
A. Let me check the geological data for Nashville's location.
View Result from find-units from macrostrat (local)
{
"lat": 36.1627,
"lng": -86.7816,
"responseType": "long"
}
Part of the ancient North American craton
Early-Middle Cambrian (518-504 million years ago)
Part of the developing continental shelf
Middle-Late Cambrian (504-498 million years ago)
Alternating limestone and shale indicating fluctuating sea levels
Late Cambrian-Early Ordovician (498-470 million years ago)
Represents long period of stable marine conditions
Middle-Late Ordovician (470-443 million years ago) Several important formations:
Multiple cycles of sea level change
Early-Middle Silurian (443-423 million years ago)
Various marine environments from shallow to deeper water
Middle Devonian-Early Mississippian (390-357 million years ago)
Chattanooga Shale represents deeper, oxygen-poor conditions
Early-Late Mississippian (357-331 million years ago) Several limestone formations:
Diverse marine environments
Cenozoic to Present
The bedrock of Nashville today consists primarily of Ordovician limestone formations exposed at the surface, particularly the Stones River and Nashville Group limestones. These rocks are well exposed in many areas and have influenced the development of local karst topography, including caves and sinkholes that are common in the region.
To install Macrostrat API Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @blake365/macrostrat-mcp --client claude
If you want to make changes to the server you can do so by editing the src/index.ts
file.
- Run npm install
to install dependencies
- Run npm run build
to build the server
- Quit and restart Claude Desktop after making changes
~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%Claudeclaude_desktop_config.json
Add the server configuration:
{
"mcpServers": {
"macrostrat": {
"command": "node",
"args": [
"/Full/Route/to/Folder/macrostrat/build/index.js"
]
}
}
}
Close/Quit then restart Claude Desktop
Once you restart you should see a small hammer icon in the lower right corner of the textbox. If you hover over the icon you'll see the number of MCP tools available.
If you get errors when running the server you may need to provide the full path to the node
command. For example, on macOS: /usr/local/bin/node
[
{
"description": "Query Macrostrat stratigraphic columns",
"inputSchema": {
"properties": {
"adjacents": {
"description": "Include adjacent columns",
"type": "boolean"
},
"lat": {
"description": "A valid latitude in decimal degrees",
"type": "number"
},
"lng": {
"description": "A valid longitude in decimal degrees",
"type": "number"
},
"responseType": {
"default": "long",
"description": "The length of response long or short",
"enum": [
"long",
"short"
],
"type": "string"
}
},
"required": [
"lat",
"lng",
"responseType"
],
"type": "object"
},
"name": "find-columns"
},
{
"description": "Query Macrostrat geologic units",
"inputSchema": {
"properties": {
"lat": {
"description": "A valid latitude in decimal degrees",
"type": "number"
},
"lng": {
"description": "A valid longitude in decimal degrees",
"type": "number"
},
"responseType": {
"default": "long",
"description": "The length of response long or short. Long provides lots of good details",
"enum": [
"long",
"short"
],
"type": "string"
}
},
"required": [
"lat",
"lng",
"responseType"
],
"type": "object"
},
"name": "find-units"
},
{
"description": "Routes giving access to standard fields and dictionaries used in Macrostrat",
"inputSchema": {
"properties": {
"endpoint": {
"description": "The endpoint to query",
"enum": [
"lithologies",
"structures",
"columns",
"econs",
"minerals",
"timescales",
"environments",
"strat_names",
"measurements",
"intervals"
],
"type": "string"
},
"parameters": {
"description": "parameters to pass to the endpoint",
"type": "string"
}
},
"required": [
"endpoint",
"parameters"
],
"type": "object"
},
"name": "defs"
},
{
"description": "Quickly retrieve all definitions matching a query. Limited to 100 results",
"inputSchema": {
"properties": {
"query": {
"description": "the search term",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "defs-autocomplete"
},
{
"description": "Get information about a mineral, use one property",
"inputSchema": {
"properties": {
"element": {
"description": "An element that the mineral is made of",
"type": "string"
},
"mineral": {
"description": "The name of the mineral",
"type": "string"
},
"mineral_type": {
"description": "The type of mineral",
"type": "string"
}
},
"type": "object"
},
"name": "mineral-info"
},
{
"description": "Get information about a time period",
"inputSchema": {
"properties": {
"age": {
"type": "number"
}
},
"type": "object"
},
"name": "timescale"
}
]