TerraVault

U.S. state cannabis license lookups, licensed stores nearby, CA recalls. Read-only, no key.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
93%
Naming quality
83%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,370Tokens (tool definitions)
~915 BTypical response size
Moderate attention impact (1.07% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "licenses": {
      "url": "https://terravaulthq.com/api/mcp"
    }
  }
}

Remote endpoints

https://terravaulthq.com/api/mcpstreamable-http

What it can do

Tool inventory

Tools (7)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢lookup_license(query, state)

Look up a cannabis or hemp business license by license number or business name on the state lists TerraVault reads (CA, CO, CT, DC, FL, IL, MA, MD, ME, MN, MO, NJ, NV, NY, OH, OR, VT, WA). Returns the license type, status as the state prints it, city and county, the date the list was read, the state's own record link and the TerraVault page. Never returns phone numbers, emails or owner details.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 3,
      "maxLength": 120,
      "description": "A license number (e.g. C10-0000123-LIC) or part of a business name."
    },
    "state": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "Optional two-letter state code."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢licensed_near(zip, city, state, kind, miles, ...)

Find licensed cannabis stores and delivery services near a ZIP code, or near a city in a given state, nearest first, from the state's own license lists. Each result has its distance, how the distance was measured, and its TerraVault page. A result of kind "maker" is a New York microbusiness that sells only what it grows and makes itself. A license is not a promise a store is open or has an item.

Input Schema

{
  "type": "object",
  "properties": {
    "zip": {
      "type": "string",
      "pattern": "^\\d{5}(-\\d{1,4})?$",
      "description": "US ZIP code."
    },
    "city": {
      "type": "string",
      "description": "City name; give state too."
    },
    "state": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "Two-letter state code, needed with city."
    },
    "kind": {
      "type": "string",
      "enum": [
        "store",
        "delivery",
        "any"
      ],
      "default": "any"
    },
    "miles": {
      "type": "integer",
      "enum": [
        10,
        25,
        50
      ],
      "default": 25
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25,
      "default": 10
    }
  },
  "additionalProperties": false
}
🟢organic_growers(city, county)

List cannabis growers and distributors certified under OCal, California's comparable-to-organic standard, from the state's own list, with links to their TerraVault license pages where the name matches. Optional city or county filter. California only.

Input Schema

{
  "type": "object",
  "properties": {
    "city": {
      "type": "string",
      "description": "Optional California city."
    },
    "county": {
      "type": "string",
      "description": "Optional California county, e.g. Humboldt."
    }
  },
  "additionalProperties": false
}
🟢state_license_counts(state)

Count the active cannabis licenses on one state's list, by license type, with the date the list was last read and the state agency that publishes it.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "Two-letter state code."
    }
  },
  "required": [
    "state"
  ],
  "additionalProperties": false
}
🟢check_recall(uid, batch, maker, licenseNumber)

Check a cannabis package or license against California's own cannabis recall list. Give the package UID, a batch number with its maker, or a license number. Answers RECALLED only on an exact match, SOLD_RECALLED_PRODUCT when the state lists the license only as a store that sold a recalled product, NOT_IN_INDEX with the date the list was read, or NOT_CHECKED when it cannot say. Never answers that a product is safe. California only.

Input Schema

{
  "type": "object",
  "properties": {
    "uid": {
      "type": "string",
      "minLength": 10,
      "maxLength": 40,
      "description": "The track-and-trace UID printed on the package."
    },
    "batch": {
      "type": "string",
      "description": "The batch number on the label; give maker or licenseNumber with it."
    },
    "maker": {
      "type": "string",
      "description": "The maker or brand named on the label."
    },
    "licenseNumber": {
      "type": "string",
      "description": "A California cannabis license number."
    }
  },
  "additionalProperties": false
}
🟢state_license_report(state, month)

One state's monthly cannabis license report from its own published list: licenses at the start and end of the month, first seen, left and came back, by license type, county and city. Reports start October 2026. Defaults to the month in progress.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "Two-letter state code."
    },
    "month": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}$",
      "description": "YYYY-MM, from 2026-10."
    }
  },
  "required": [
    "state"
  ],
  "additionalProperties": false
}
🟢marys_desk(days)

Mary's Desk: TerraVault's short daily update from its own records. Licenses first seen on or gone from each state's published list since the previous update, new California cannabis recalls, and California's month-to-date license report. Every line names its source and the date it was read. Returns the latest day by default, up to the last 7.

Input Schema

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 7,
      "default": 1,
      "description": "How many recent daily entries to return."
    }
  },
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded7 tools