MCP Server

FindWeedNY

com.findweedny/findweedny

What this MCP does

Searches New York cannabis dispensaries, brands, deals, reviews, market statistics, and verifies state cannabis licenses.

get_brand
Get brand details + where to buy
Full public record for one brand by slug or name, including which licensed NY dispensaries currently stock it (from crawled menu availability, preview tier), its parent / child brands, and FindWeedNY's own reviews of its products when there are any.
Read only
Input schema
{'type': 'object', 'required': ['brand'], 'properties': {'brand': {'type': 'string', 'description': 'Brand slug or name'}}}
Output schema
{'type': 'object', 'required': ['found'], 'properties': {'brand': {'type': 'object', 'required': ['id', 'name', 'slug', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'type': {'type': 'string', 'description': 'local | national | mso'}, 'isMSO': {'type': 'boolean'}, 'founded': {'type': 'number'}, 'reviews': {'type': 'array', 'items': {'type': 'object', 'properties': {'url': {'type': 'string'}, 'date': {'type': 'string'}, 'title': {'type': 'string'}, 'rating': {'type': 'number'}, 'thcPct': {'type': 'number'}, 'product': {'type': 'string'}, 'productType': {'type': 'string'}, 'totalTerpenesPct': {'type': 'number'}}, 'additionalProperties': True}, 'description': 'FindWeedNY reviews of this brand'}, 'website': {'type': 'string'}, 'growType': {'type': 'string', 'description': 'indoor | outdoor | mixed-light | combination (from OCM cultivator licenses)'}, 'childBrands': {'type': 'array', 'items': {'type': 'object', 'properties': {'url': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'growType': {'type': 'string'}}, 'additionalProperties': True}}, 'description': {'type': 'string'}, 'licenseType': {'type': 'string'}, 'parentBrand': {'type': 'string', 'description': 'Slug of the house brand that owns this one'}, 'headquarters': {'type': 'string'}, 'licenseNumber': {'type': 'string'}, 'certifications': {'type': 'array', 'items': {'type': 'string'}}, 'isNewYorkBased': {'type': 'boolean'}, 'parentBrandUrl': {'type': 'string'}, 'dispensaryCount': {'type': 'number', 'description': 'Stores currently stocking the brand'}, 'isMicrobusiness': {'type': 'boolean'}, 'notableProducts': {'type': 'array', 'items': {'type': 'string'}}, 'parentBrandName': {'type': 'string'}, 'shortDescription': {'type': 'string'}, 'productCategories': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}, 'found': {'type': 'boolean'}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'message': {'type': 'string'}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}, 'availability': {'type': 'object', 'required': ['dispensaryCount', 'availableAt'], 'properties': {'asOf': {'type': 'string'}, 'note': {'type': 'string'}, 'tier': {'type': 'string', 'description': 'preview | full'}, 'byCity': {'type': 'array', 'items': {'type': 'object', 'properties': {'city': {'type': 'string'}, 'count': {'type': 'number'}}, 'additionalProperties': True}}, 'availableAt': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'city': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': True}}, 'dispensaryCount': {'type': 'number', 'description': 'Stores stocking the brand'}, 'crawledCategories': {'type': 'array', 'items': {'type': 'string'}}, 'listedDispensaries': {'type': 'number'}}, 'additionalProperties': True}}, 'additionalProperties': True}
get_deals
Get current deal previews
Current cannabis deal and promotion PREVIEWS (top deals per dispensary) for one dispensary or a city. The full deal feed requires a free account at findweedny.com.
Read only
Input schema
{'type': 'object', 'properties': {'city': {'type': 'string', 'description': 'City name (returns up to 5 dispensaries with deals)'}, 'limit': {'type': 'number', 'description': 'Max deals per dispensary, default 6, cap 10'}, 'dispensary_id': {'type': 'string', 'description': 'OCM license number'}}}
Output schema
{'type': 'object', 'properties': {'note': {'type': 'string'}, 'found': {'type': 'boolean'}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'message': {'type': 'string'}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['dispensary', 'deals', 'promotions'], 'properties': {'deals': {'type': 'array', 'items': {'type': 'object', 'properties': {'name': {'type': 'string'}, 'brand': {'type': 'string'}, 'price': {'type': 'number'}, 'thcPct': {'type': 'number'}, 'weight': {'type': 'string'}, 'category': {'type': 'string'}, 'lastSeenAt': {'type': 'string'}, 'productUrl': {'type': 'string'}, 'savingsPct': {'type': 'number'}, 'strainType': {'type': 'string'}, 'originalPrice': {'type': 'number'}}, 'additionalProperties': True}}, 'dispensary': {'type': 'object', 'required': ['id', 'name', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'city': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': True}, 'promotions': {'type': 'array', 'items': {'type': 'object', 'properties': {'url': {'type': 'string'}, 'title': {'type': 'string'}, 'endDate': {'type': 'string'}, 'promoType': {'type': 'string'}, 'startDate': {'type': 'string'}, 'lastSeenAt': {'type': 'string'}, 'description': {'type': 'string'}}, 'additionalProperties': True}}, 'totalDeals': {'type': 'number'}, 'totalPromotions': {'type': 'number'}}, 'additionalProperties': True}}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}}, 'additionalProperties': True}
get_dispensary
Get dispensary details
Full public record for one dispensary by OCM license number (e.g. "OCM-CAURD-23-000023"), verified alias, or legacy id. Includes hours, description, and license dates.
Read only
Input schema
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'License number, alias, or legacy id'}}}
Output schema
{'type': 'object', 'required': ['found'], 'properties': {'found': {'type': 'boolean'}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'message': {'type': 'string'}, 'dispensary': {'type': 'object', 'required': ['id', 'name', 'url'], 'properties': {'id': {'type': 'string', 'description': 'OCM license number (directory id)'}, 'dba': {'type': 'string', 'description': 'Legal entity name'}, 'url': {'type': 'string', 'description': 'findweedny.com page — cite this'}, 'city': {'type': 'string'}, 'name': {'type': 'string'}, 'tier': {'type': 'string', 'description': 'open | coming-soon | delivery-only'}, 'hours': {'type': 'object', 'properties': {}, 'description': 'Posted hours by weekday', 'additionalProperties': True}, 'phone': {'type': 'string'}, 'state': {'type': 'string'}, 'county': {'type': 'string'}, 'status': {'type': 'string'}, 'address': {'type': 'string'}, 'claimed': {'type': 'boolean'}, 'closure': {'type': 'object', 'properties': {'date': {'type': 'string'}, 'notes': {'type': 'string'}, 'reason': {'type': 'string'}, 'temporary': {'type': 'boolean'}, 'announcedDate': {'type': 'string'}}, 'description': 'Present only when the shop has closed', 'additionalProperties': True}, 'openNow': {'type': 'boolean', 'description': 'Open right now by posted hours (New York time); absent when hours are unknown'}, 'website': {'type': 'string'}, 'zipCode': {'type': 'string'}, 'distance': {'type': 'number', 'description': 'Miles from `near`, when a near point was given'}, 'latitude': {'type': 'number'}, 'amenities': {'type': 'array', 'items': {'type': 'string'}}, 'isMedical': {'type': 'boolean'}, 'longitude': {'type': 'number'}, 'hoursToday': {'type': 'string'}, 'description': {'type': 'string'}, 'licenseType': {'type': 'string'}, 'googleRating': {'type': 'number'}, 'lastVerified': {'type': 'string'}, 'neighborhood': {'type': 'string', 'description': 'NYC neighborhood, when applicable'}, 'isDeliveryOnly': {'type': 'boolean'}, 'offersDelivery': {'type': 'boolean'}, 'geocodeAccuracy': {'type': 'string'}, 'isMicrobusiness': {'type': 'boolean'}, 'deliveryZipCodes': {'type': 'array', 'items': {'type': 'string'}}, 'licenseIssueDate': {'type': 'string'}, 'retailDateOpened': {'type': 'string', 'description': 'YYYY-MM-DD the shop opened to the public'}, 'googleReviewCount': {'type': 'number'}, 'operationalStatus': {'type': 'string', 'description': 'Active | Non-Operational | Unknown'}, 'licenseExpirationDate': {'type': 'string'}}, 'additionalProperties': True}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}}, 'additionalProperties': True}
get_market_stats
NY cannabis market stats
Summary statistics for the New York licensed cannabis market: dispensary totals, counts by license type and tier, microbusiness / delivery / non-operational counts, top cities, dispensaries opened and closed in the last 90 days, and brand totals by type and grow method.
Read only
Input schema
{'type': 'object', 'properties': {}}
Output schema
{'type': 'object', 'required': ['total'], 'properties': {'total': {'type': 'number', 'description': 'Licensed dispensaries in the directory'}, 'brands': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'byType': {'type': 'object', 'properties': {}, 'additionalProperties': True}, 'byGrowType': {'type': 'object', 'properties': {}, 'additionalProperties': True}, 'microbusinesses': {'type': 'number'}}, 'additionalProperties': True}, 'byTier': {'type': 'object', 'properties': {}, 'description': 'open | coming-soon | delivery-only → count', 'additionalProperties': True}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'topCities': {'type': 'array', 'items': {'type': 'object', 'properties': {'city': {'type': 'string'}, 'count': {'type': 'number'}}, 'additionalProperties': True}}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}, 'openDataHub': {'type': 'string'}, 'deliveryOnly': {'type': 'number'}, 'byLicenseType': {'type': 'object', 'properties': {}, 'description': 'license type → count', 'additionalProperties': True}, 'medicalServing': {'type': 'number'}, 'nonOperational': {'type': 'number'}, 'recentlyClosed': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'city': {'type': 'string'}, 'name': {'type': 'string'}, 'closed': {'type': 'string'}, 'reason': {'type': 'string'}, 'temporary': {'type': 'boolean'}}, 'additionalProperties': True}, 'description': 'Closed in the last 90 days'}, 'recentlyOpened': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'city': {'type': 'string'}, 'name': {'type': 'string'}, 'opened': {'type': 'string'}}, 'additionalProperties': True}, 'description': 'Opened in the last 90 days'}, 'microbusinesses': {'type': 'number'}, 'offeringDelivery': {'type': 'number'}}, 'additionalProperties': True}
get_metrc_market_landscape
Get Metrc NY market landscape
Statewide New York cannabis market aggregates, crawled from Metrc’s public Cannabis Market Landscape dashboard — the seed-to-sale system every licensee reports into. Use it for market-size and trend questions (how much does NY sell a month, which regions and product categories, how many licenses exist and how fast are they being issued, what share of lab tests pass). Returns a `summary` of the four headline numbers plus a `metrics` array: monthly retail sales, cumulative sales, units sold, transaction count, basket size, average price per unit, lab test volume and pass rate, retail sales by region and by product category, active licenses by type and by region, monthly new licenses and cumulative license growth. Narrow it with `section` or `metric`; `metricsAvailable` always lists everything in the snapshot. This is dashboard-level aggregate data, not transaction-level Metrc records, and license counts may differ from NY OCM totals. For dispensary-by-dispensary counts use get_market_stats instead.
Read only
Input schema
{'type': 'object', 'properties': {'metric': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Only these metric names (see metricsAvailable), e.g. ["retail_sales_by_region"].'}, 'section': {'enum': ['market_overview', 'license_activity'], 'type': 'string', 'description': 'Only metrics from this dashboard tab.'}}, 'additionalProperties': True}
Output schema
{'type': 'object', 'required': ['found'], 'properties': {'found': {'type': 'boolean'}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'message': {'type': 'string'}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}, 'marketLandscape': {'type': 'object', 'properties': {'meta': {'type': 'object', 'properties': {'scope': {'type': 'string'}, 'source': {'type': 'string'}, 'dateRange': {'type': 'string', 'description': 'The dashboard filter this snapshot was read under; YTD is the default.'}, 'fetchedAt': {'type': 'string', 'description': 'When this snapshot was taken. The dashboard itself keeps no archive.'}, 'sourceUrl': {'type': 'string'}}, 'additionalProperties': True}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['section', 'metric', 'title', 'unit', 'points'], 'properties': {'unit': {'type': 'string', 'description': 'USD | licenses | units | transactions | tests | percent | USD per unit | USD per transaction'}, 'title': {'type': 'string', 'description': 'The chart title as it appears on the dashboard'}, 'metric': {'type': 'string'}, 'points': {'type': 'array', 'items': {'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'number'}, 'period': {'type': 'string', 'description': 'ISO month start (YYYY-MM-01). Present on monthly series only.'}, 'category': {'type': 'string', 'description': 'The breakdown member. Present on breakdowns only — see dimension.'}}, 'additionalProperties': True}}, 'section': {'type': 'string', 'description': 'market_overview | license_activity — which dashboard tab published it'}, 'dimension': {'type': 'string', 'description': 'What each point’s category is: region | product_category | license_type. Absent on scalars and monthly series.'}, 'derivedFrom': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Present only when FindWeedNY computed this metric by dividing the listed series, because the dashboard did not return its own element that day.'}}, 'additionalProperties': True}}, 'summary': {'type': 'object', 'properties': {'activeLicenses': {'type': 'number'}, 'totalRetailSales': {'type': 'number', 'description': 'Year-to-date retail sales in USD, at full precision.'}, 'newLicensesYearToDate': {'type': 'number'}, 'overallAverageTestPassRate': {'type': 'number', 'description': 'Percent, 0-100.'}}, 'description': 'The four headline numbers, so simple questions do not need the metrics array.', 'additionalProperties': True}, 'metricsAvailable': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Every metric in the snapshot, including any filtered out of this response. Call again with `metric` to fetch one.'}}, 'description': 'Aggregate values crawled from Metrc’s public New York Cannabis Market Landscape dashboard', 'additionalProperties': True}}, 'additionalProperties': True}
get_review
Get one FindWeedNY review
One review by slug (from search_reviews) with the full lab panel: every cannabinoid and terpene measured, batch number, price paid, COA link, and the excerpt. Full review text stays on the linked page.
Read only
Input schema
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Review slug, e.g. "1slice-superboof-flower"'}}}
Output schema
{'type': 'object', 'required': ['found'], 'properties': {'found': {'type': 'boolean'}, 'review': {'type': 'object', 'required': ['slug', 'title', 'rating', 'url'], 'properties': {'url': {'type': 'string'}, 'date': {'type': 'string'}, 'slug': {'type': 'string'}, 'batch': {'type': 'string'}, 'brand': {'type': 'string'}, 'price': {'type': 'string'}, 'title': {'type': 'string'}, 'coaUrl': {'type': 'string', 'description': 'Certificate of analysis'}, 'rating': {'type': 'number', 'description': "1–5, FindWeedNY's opinion"}, 'strain': {'type': 'string'}, 'thcPct': {'type': 'number', 'description': 'Total THC ≈ THCa×0.877 + Δ9, from the COA'}, 'excerpt': {'type': 'string'}, 'product': {'type': 'string'}, 'brandUrl': {'type': 'string'}, 'terpenes': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'pct'], 'properties': {'pct': {'type': 'number'}, 'name': {'type': 'string'}}, 'additionalProperties': True}}, 'brandSlug': {'type': 'string'}, 'productUrl': {'type': 'string'}, 'cultivation': {'type': 'string'}, 'productType': {'type': 'string', 'description': 'flower | vape | concentrate | edible | accessory | dispensary'}, 'topTerpenes': {'type': 'array', 'items': {'type': 'string'}}, 'cannabinoids': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'pct'], 'properties': {'pct': {'type': 'number'}, 'name': {'type': 'string'}}, 'additionalProperties': True}}, 'totalTerpenesPct': {'type': 'number'}}, 'additionalProperties': True}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'message': {'type': 'string'}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}}, 'additionalProperties': True}
search_brands
Search NY cannabis brands
Search cannabis brands sold in New York. Filter by name, product category (e.g. flower, vapes, edibles, pre-rolls), brand type (local / national / mso), New York origin, microbusiness licensees, grow method (indoor / outdoor / mixed-light / combination — from OCM cultivator licenses; "sun-grown" and "greenhouse" accepted as aliases), ownership certification (woman-owned, veteran-owned, bipoc-owned, social-equity…), tag, or parent brand (the house that owns it — e.g. which brands PharmaCann or 1 Off run in NY). Rows include growType, licenseType, certifications, tags and how many dispensaries stock the brand.
Read only
Input schema
{'type': 'object', 'properties': {'tag': {'type': 'string', 'description': 'Catalog tag, e.g. "craft", "small-batch", "living-soil", "hudson-valley"'}, 'type': {'enum': ['local', 'national', 'mso'], 'type': 'string', 'description': 'Brand type: local (NY), national, or multi-state operator'}, 'limit': {'type': 'number', 'description': 'Max rows, default 10, cap 50'}, 'query': {'type': 'string', 'description': 'Substring match on brand name'}, 'offset': {'type': 'number', 'description': 'Rows to skip for paging: the result echoes `total` and `offset`, so request offset + limit for the next page'}, 'parent': {'type': 'string', 'description': 'Only brands owned by this parent brand / house (slug or name), e.g. "1-off", "PharmaCann", "GTI"'}, 'category': {'type': 'string', 'description': 'Product category, e.g. "vapes"'}, 'ny_based': {'type': 'boolean', 'description': 'Only brands headquartered / grown in New York'}, 'grow_type': {'enum': ['indoor', 'outdoor', 'mixed-light', 'combination', 'sun-grown', 'greenhouse'], 'type': 'string', 'description': 'Cultivation method from OCM license data. sun-grown = outdoor; greenhouse = mixed-light or combination'}, 'certification': {'type': 'string', 'description': 'Ownership/impact certification, e.g. "woman-owned", "veteran-owned", "bipoc-owned", "social-equity"'}, 'microbusiness': {'type': 'boolean', 'description': 'Only brands holding a NY microbusiness license'}}}
Output schema
{'type': 'object', 'required': ['total', 'offset', 'brands'], 'properties': {'total': {'type': 'number'}, 'brands': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'slug', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'type': {'type': 'string', 'description': 'local | national | mso'}, 'isMSO': {'type': 'boolean'}, 'founded': {'type': 'number'}, 'growType': {'type': 'string', 'description': 'indoor | outdoor | mixed-light | combination (from OCM cultivator licenses)'}, 'licenseType': {'type': 'string'}, 'parentBrand': {'type': 'string', 'description': 'Slug of the house brand that owns this one'}, 'headquarters': {'type': 'string'}, 'licenseNumber': {'type': 'string'}, 'certifications': {'type': 'array', 'items': {'type': 'string'}}, 'isNewYorkBased': {'type': 'boolean'}, 'dispensaryCount': {'type': 'number', 'description': 'Stores currently stocking the brand'}, 'isMicrobusiness': {'type': 'boolean'}, 'shortDescription': {'type': 'string'}, 'productCategories': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}}, 'offset': {'type': 'number'}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}}, 'additionalProperties': True}
search_dispensaries
Search NY dispensaries
Search licensed New York State cannabis dispensaries (adult-use and medical). Free-text `query` is ranked and typo-tolerant (name, DBA, city, neighborhood, address, ZIP, license) and may include the site search operators (zip: city: county: neighborhood: brand: product: is:open|operating|delivery|micro|medical|verified|closed radius:N — quote multi-word values). Structured filters do the same thing explicitly. NOTE: `brand` filters against the PUBLIC availability preview (≤10 listed stores per brand); the result's `brandAvailability` block gives the true known count and, with `city`/`county`, how many stores there stock the brand even when none are listed — never conclude "nobody in X carries it" from an empty list. Sort by relevance (default with a query), distance (default when near is given), name, or recently_opened. Returns compact rows; each row has a citable `url`, Google rating/review count when known, `openNow` + `hoursToday` from posted hours (New York time), and a `closure` object (date, reason, temporary) when a shop has closed.
Read only
Input schema
{'type': 'object', 'properties': {'zip': {'type': 'string', 'description': '5-digit ZIP code'}, 'city': {'type': 'string', 'description': 'Exact city name, case-insensitive (e.g. "Buffalo")'}, 'near': {'type': 'object', 'required': ['lat', 'lng'], 'properties': {'lat': {'type': 'number', 'description': 'Latitude in decimal degrees'}, 'lng': {'type': 'number', 'description': 'Longitude in decimal degrees (negative in New York)'}, 'radius_miles': {'type': 'number', 'description': 'Search radius in miles, default 25'}}, 'description': 'Filter/sort by distance from a point (results gain a `distance` in miles)'}, 'sort': {'enum': ['relevance', 'distance', 'name', 'recently_opened'], 'type': 'string', 'description': 'Default: relevance with a query, distance with near, otherwise name'}, 'brand': {'type': 'string', 'description': 'Only dispensaries stocking this brand (name or alias)'}, 'limit': {'type': 'number', 'description': 'Max rows, default 10, cap 50'}, 'query': {'type': 'string', 'description': 'Ranked, typo-tolerant search over name/DBA/city/neighborhood/address/ZIP/license; accepts operators, e.g. "housing works", "gotham zip:100", "brand:ayrloom is:open"'}, 'county': {'type': 'string', 'description': 'Exact county name, case-insensitive'}, 'offset': {'type': 'number', 'description': 'Rows to skip for paging: the result echoes `total` and `offset`, so request offset + limit for the next page'}, 'medical': {'type': 'boolean', 'description': 'Only dispensaries serving medical patients'}, 'delivery': {'type': 'boolean', 'description': 'Only dispensaries that offer delivery'}, 'open_now': {'type': 'boolean', 'description': 'Only dispensaries open right now by posted hours'}, 'verified': {'type': 'boolean', 'description': 'Only owner-verified / claimed listings'}, 'neighborhood': {'type': 'string', 'description': 'NYC neighborhood name or slug'}, 'microbusiness': {'type': 'boolean', 'description': 'Only microbusiness licensees'}}}
Output schema
{'type': 'object', 'required': ['total', 'offset', 'dispensaries'], 'properties': {'notes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Caveats about the filters applied'}, 'total': {'type': 'number', 'description': 'Matches before paging'}, 'offset': {'type': 'number'}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}, 'dispensaries': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'url'], 'properties': {'id': {'type': 'string', 'description': 'OCM license number (directory id)'}, 'dba': {'type': 'string', 'description': 'Legal entity name'}, 'url': {'type': 'string', 'description': 'findweedny.com page — cite this'}, 'city': {'type': 'string'}, 'name': {'type': 'string'}, 'tier': {'type': 'string', 'description': 'open | coming-soon | delivery-only'}, 'phone': {'type': 'string'}, 'state': {'type': 'string'}, 'county': {'type': 'string'}, 'status': {'type': 'string'}, 'address': {'type': 'string'}, 'closure': {'type': 'object', 'properties': {'date': {'type': 'string'}, 'notes': {'type': 'string'}, 'reason': {'type': 'string'}, 'temporary': {'type': 'boolean'}, 'announcedDate': {'type': 'string'}}, 'description': 'Present only when the shop has closed', 'additionalProperties': True}, 'openNow': {'type': 'boolean', 'description': 'Open right now by posted hours (New York time); absent when hours are unknown'}, 'website': {'type': 'string'}, 'zipCode': {'type': 'string'}, 'distance': {'type': 'number', 'description': 'Miles from `near`, when a near point was given'}, 'latitude': {'type': 'number'}, 'isMedical': {'type': 'boolean'}, 'longitude': {'type': 'number'}, 'hoursToday': {'type': 'string'}, 'licenseType': {'type': 'string'}, 'googleRating': {'type': 'number'}, 'neighborhood': {'type': 'string', 'description': 'NYC neighborhood, when applicable'}, 'isDeliveryOnly': {'type': 'boolean'}, 'offersDelivery': {'type': 'boolean'}, 'isMicrobusiness': {'type': 'boolean'}, 'retailDateOpened': {'type': 'string', 'description': 'YYYY-MM-DD the shop opened to the public'}, 'googleReviewCount': {'type': 'number'}, 'operationalStatus': {'type': 'string', 'description': 'Active | Non-Operational | Unknown'}}, 'additionalProperties': True}}, 'brandAvailability': {'type': 'object', 'required': ['brand', 'tier', 'listedDispensaries', 'knownDispensaries'], 'properties': {'note': {'type': 'string'}, 'tier': {'type': 'string', 'description': 'preview (public: ≤10 stores listed) | full (signed-in /mcp/full)'}, 'brand': {'type': 'string'}, 'inCity': {'type': 'object', 'properties': {'city': {'type': 'string'}, 'count': {'type': 'number'}}, 'additionalProperties': True}, 'inCounty': {'type': 'object', 'properties': {'count': {'type': 'number'}, 'county': {'type': 'string'}}, 'additionalProperties': True}, 'knownDispensaries': {'type': 'number', 'description': 'How many stores actually stock the brand'}, 'listedDispensaries': {'type': 'number'}}, 'description': 'Present when a brand filter was applied. Never conclude "nobody carries it" from an empty list — read knownDispensaries / inCity.', 'additionalProperties': True}}, 'additionalProperties': True}
search_reviews
Search FindWeedNY product reviews
FindWeedNY's own independent, lab-anchored reviews of New York cannabis products (flower, vapes, concentrates, edibles). Every review has a 1–5 rating and, for cannabis products, the COA numbers: THC %, total terpenes %, top terpenes, plus a link to the certificate of analysis. Filter by brand, product type, strain, cultivation method, or minimum rating; sort by date, rating, or terpenes. Use this for "is brand X any good", "best-tested flower", or "most terpene-rich vape" questions. Rows carry an excerpt and a `url` to the full review.
Read only
Input schema
{'type': 'object', 'properties': {'sort': {'enum': ['date', 'rating', 'terpenes', 'thc'], 'type': 'string', 'description': 'Default date (newest first)'}, 'brand': {'type': 'string', 'description': 'Brand name or slug'}, 'limit': {'type': 'number', 'description': 'Max rows, default 10, cap 50'}, 'query': {'type': 'string', 'description': 'Text match on title, product, brand, or strain'}, 'offset': {'type': 'number', 'description': 'Rows to skip for paging: the result echoes `total` and `offset`, so request offset + limit for the next page'}, 'strain': {'type': 'string', 'description': 'Strain or type, e.g. "hybrid", "sativa", "indica", or a strain name'}, 'min_rating': {'type': 'number', 'description': '1–5'}, 'cultivation': {'enum': ['indoor', 'outdoor', 'mixed-light', 'greenhouse'], 'type': 'string', 'description': 'How the flower was grown, when the review records it'}, 'product_type': {'enum': ['flower', 'vape', 'concentrate', 'edible', 'accessory', 'dispensary'], 'type': 'string', 'description': 'Kind of product reviewed'}}}
Output schema
{'type': 'object', 'required': ['total', 'offset', 'reviews'], 'properties': {'note': {'type': 'string'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'reviews': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'rating', 'url'], 'properties': {'url': {'type': 'string'}, 'date': {'type': 'string'}, 'slug': {'type': 'string'}, 'brand': {'type': 'string'}, 'price': {'type': 'string'}, 'title': {'type': 'string'}, 'coaUrl': {'type': 'string', 'description': 'Certificate of analysis'}, 'rating': {'type': 'number', 'description': "1–5, FindWeedNY's opinion"}, 'strain': {'type': 'string'}, 'thcPct': {'type': 'number', 'description': 'Total THC ≈ THCa×0.877 + Δ9, from the COA'}, 'excerpt': {'type': 'string'}, 'product': {'type': 'string'}, 'brandUrl': {'type': 'string'}, 'brandSlug': {'type': 'string'}, 'cultivation': {'type': 'string'}, 'productType': {'type': 'string', 'description': 'flower | vape | concentrate | edible | accessory | dispensary'}, 'topTerpenes': {'type': 'array', 'items': {'type': 'string'}}, 'totalTerpenesPct': {'type': 'number'}}, 'additionalProperties': True}}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}}, 'additionalProperties': True}
verify_license
Verify a NY OCM cannabis license
Look up ANY New York OCM cannabis license number — retail dispensary, microbusiness, cultivator, processor, distributor, registered organization — against the full OCM licensing record (3,000+ licenses), not just shops. Returns the license type, status, holder, dates, county, and for cultivators the grow method; links the matching dispensary listing and brand when we have them. A partial number, application number, or company name returns candidates in `similar`. Use it to answer "is this a real licensed NY business" and "who holds this license".
Read only
Input schema
{'type': 'object', 'required': ['license_number'], 'properties': {'license_number': {'type': 'string', 'description': 'OCM license number (e.g. "OCM-CAURD-23-000023", "OCM-PROC-24-000096"), application number, or part of one; a company name also works'}}}
Output schema
{'type': 'object', 'required': ['found', 'licensed'], 'properties': {'brand': {'type': 'object', 'properties': {'url': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'description': 'The brand catalog entry holding this license, when known', 'additionalProperties': True}, 'found': {'type': 'boolean', 'description': 'A license record matched exactly'}, 'source': {'type': 'string', 'description': 'Attribution line — CC BY 4.0, cite the row url'}, 'license': {'type': 'object', 'required': ['licenseType', 'status', 'entityName', 'url'], 'properties': {'dba': {'type': 'string'}, 'url': {'type': 'string', 'description': 'findweedny.com license page'}, 'city': {'type': 'string'}, 'county': {'type': 'string'}, 'region': {'type': 'string'}, 'status': {'type': 'string', 'description': 'OCM license status, e.g. Active'}, 'address': {'type': 'string'}, 'website': {'type': 'string'}, 'zipCode': {'type': 'string'}, 'tierType': {'type': 'string', 'description': 'Cultivator / microbusiness canopy tier'}, 'entityName': {'type': 'string', 'description': 'Licensed legal entity'}, 'issuedDate': {'type': 'string'}, 'cultivation': {'type': 'object', 'properties': {'indoor': {'type': 'boolean'}, 'outdoor': {'type': 'boolean'}, 'mixedLight': {'type': 'boolean'}, 'combination': {'type': 'boolean'}}, 'description': 'Present for cultivator / microbusiness licenses', 'additionalProperties': True}, 'licenseType': {'type': 'string', 'description': 'e.g. Adult-Use Retail Dispensary License, Adult-Use Processor License, Adult-Use Cultivator License'}, 'seeCategory': {'type': 'string', 'description': 'Social & economic equity category, when declared'}, 'effectiveDate': {'type': 'string'}, 'licenseNumber': {'type': 'string'}, 'processorType': {'type': 'string'}, 'expirationDate': {'type': 'string'}, 'businessPurpose': {'type': 'string'}, 'licenseTypeCode': {'type': 'string'}, 'retailDateOpened': {'type': 'string'}, 'applicationNumber': {'type': 'string'}, 'operationalStatus': {'type': 'string'}}, 'additionalProperties': True}, 'message': {'type': 'string'}, 'similar': {'type': 'array', 'items': {'type': 'object', 'properties': {'dba': {'type': 'string'}, 'url': {'type': 'string'}, 'status': {'type': 'string'}, 'entityName': {'type': 'string'}, 'licenseType': {'type': 'string'}, 'licenseNumber': {'type': 'string'}}, 'additionalProperties': True}, 'description': 'Close matches when there is no exact one'}, 'licensed': {'type': 'boolean', 'description': 'found and the license status is Active'}, 'dispensary': {'type': 'object', 'required': ['id', 'name', 'url'], 'properties': {'id': {'type': 'string', 'description': 'OCM license number (directory id)'}, 'dba': {'type': 'string', 'description': 'Legal entity name'}, 'url': {'type': 'string', 'description': 'findweedny.com page — cite this'}, 'city': {'type': 'string'}, 'name': {'type': 'string'}, 'tier': {'type': 'string', 'description': 'open | coming-soon | delivery-only'}, 'phone': {'type': 'string'}, 'state': {'type': 'string'}, 'county': {'type': 'string'}, 'status': {'type': 'string'}, 'address': {'type': 'string'}, 'closure': {'type': 'object', 'properties': {'date': {'type': 'string'}, 'notes': {'type': 'string'}, 'reason': {'type': 'string'}, 'temporary': {'type': 'boolean'}, 'announcedDate': {'type': 'string'}}, 'description': 'Present only when the shop has closed', 'additionalProperties': True}, 'openNow': {'type': 'boolean', 'description': 'Open right now by posted hours (New York time); absent when hours are unknown'}, 'website': {'type': 'string'}, 'zipCode': {'type': 'string'}, 'distance': {'type': 'number', 'description': 'Miles from `near`, when a near point was given'}, 'latitude': {'type': 'number'}, 'isMedical': {'type': 'boolean'}, 'longitude': {'type': 'number'}, 'hoursToday': {'type': 'string'}, 'licenseType': {'type': 'string'}, 'googleRating': {'type': 'number'}, 'neighborhood': {'type': 'string', 'description': 'NYC neighborhood, when applicable'}, 'isDeliveryOnly': {'type': 'boolean'}, 'offersDelivery': {'type': 'boolean'}, 'isMicrobusiness': {'type': 'boolean'}, 'retailDateOpened': {'type': 'string', 'description': 'YYYY-MM-DD the shop opened to the public'}, 'googleReviewCount': {'type': 'number'}, 'operationalStatus': {'type': 'string', 'description': 'Active | Non-Operational | Unknown'}}, 'description': 'The directory listing, when the license is a retail dispensary we list', 'additionalProperties': True}, 'dataUpdated': {'type': 'string', 'description': 'ISO timestamp of the feed this result came from: dispensary directory (OCM refresh), deals export, brand-availability export, or review index'}}, 'additionalProperties': True}
Added
get_metrc_market_landscape
Sept. 17, 2026, 12:34 p.m.
Added
get_market_stats
Sept. 17, 2026, 12:34 p.m.
Added
get_review
Sept. 17, 2026, 12:34 p.m.
Added
search_reviews
Sept. 17, 2026, 12:34 p.m.
Added
get_deals
Sept. 17, 2026, 12:34 p.m.
Added
get_brand
Sept. 17, 2026, 12:34 p.m.
Added
search_brands
Sept. 17, 2026, 12:34 p.m.
Added
verify_license
Sept. 17, 2026, 12:34 p.m.
Added
get_dispensary
Sept. 17, 2026, 12:34 p.m.
Added
search_dispensaries
Sept. 17, 2026, 12:34 p.m.