What it is
A Model Context Protocol server using the Streamable HTTP transport in stateless mode: your client POSTs JSON-RPC to the URL above and gets JSON back. There is no login, no API key and no session to manage. Every tool is read-only and returns exactly the same data as the REST API, plus an html_url to cite and, for live data, an as_of timestamp.
Connect a client
Claude Desktop / Claude Code
Claude Desktop: Settings → Connectors → Add custom connector, paste the URL. Claude Code:
claude mcp add --transport http prime-cuts-nursery https://www.primecutsnursery.com/api/mcpCursor
Add to ~/.cursor/mcp.json (or the project's .cursor/mcp.json):
{
"mcpServers": {
"prime-cuts-nursery": { "url": "https://www.primecutsnursery.com/api/mcp" }
}
}ChatGPT (Developer mode) and other hosted agents
Add a remote MCP server with the URL above and "No authentication". The OpenAI Agents SDK / Responses API:
tools=[{
"type": "mcp",
"server_label": "prime_cuts_nursery",
"server_url": "https://www.primecutsnursery.com/api/mcp",
"require_approval": "never"
}]Any language — raw JSON-RPC
curl -s https://www.primecutsnursery.com/api/mcp -H 'Content-Type: application/json' -d '{
"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"get_availability","arguments":{"strain":"wedding-cake"}}
}'Tools
| Tool | What it returns | Arguments |
|---|---|---|
| get_business | Prime Cuts Nursery business profileWho Prime Cuts Nursery is: legal name, phone, email, address, hours, state licence, who may buy, ordering minimums and volume tiers, deposit/delivery terms, testing policy summary, social links, and content counts. Use for any question about contacting, visiting, or ordering from the nursery. | — |
| get_testing_policy | HLVd / pathogen testing programHow mother plants and incoming genetics are tested (RT-qPCR), which pathogens, how often, the incoming HLVd positive rate, and whether results are available to buyers. | — |
| get_locations | Nursery location and delivery areaNursery address and visit policy, California delivery terms (eligibility, free-delivery threshold, teen delivery fee) and the regional pages the nursery serves. | — |
| search | Search strains, breeders and articlesSubstring search across the cultivar encyclopedia (name/aliases), breeder registry and published articles. Start here when a user names a strain, breeder or topic and you are not sure of the slug. | q*, limit |
| list_strains | List / filter cultivarsFilter the 331-cultivar encyclopedia by name, type, breeder, dominant terpene, or whether Prime Cuts sells it (on_menu). Each result includes a 'menu' block with a live-availability URL when the cultivar is for sale. | q, type, breeder, terpene, on_menu, limit, offset |
| get_strain | Cultivar detail (with live availability if sold)Full encyclopedia record for one cultivar: lineage and parents, breeder(s), terpenes, aroma/flavor/effects, growing notes, history, awards, crosses bred from it, sources. Accepts an encyclopedia slug ('wedding-cake') or a menu slug ('wedding-cake-cannabis-clones'). If Prime Cuts sells it, 'menu.availability' is live (InStock / PreOrder / OutOfStock, units ready now, next batch date). | slug* |
| list_breeders | Breeder registryAll 51 breeders with a hub page, each with location, a documented summary, number of attributed cultivars and how many are on the Prime Cuts menu. | — |
| get_breeder | Breeder detailOne breeder: summary, every cultivar attributed to them (with type, lineage and whether it is on the menu), the menu strains, and collaborators who share attributions. | slug* |
| list_articles | List guides, authority and regional pagesPublished long-form pages: kind 'authority' (topic hubs like wholesale, delivery, HLVd-tested clones), 'local' (regional pages), 'guide', 'buying', 'article'. Returns title, description, section headings and URLs. | kind, q, limit |
| get_article | Article textFull text (intro, sections, FAQ) of one guide/authority/regional page, with business facts already filled in. Use to answer detailed questions about ordering, delivery, testing, teens, wholesale terms, or growing topics. | slug* |
| get_availability | Live availability for every menu strainLive stock status for all 24 strains on the clone menu in one call: InStock / PreOrder / OutOfStock, units ready now, next scheduled batch date, links. Use for "what do you have in stock?" Pass 'strain' to get one strain with a dated one-sentence summary. | strain |
| get_inventory | Live clone inventory (fresh, talls, forecast)The full live clone inventory: rooted clones available now with batch cut/ready dates, talls/clearance, and a 17-day rooting forecast per strain, plus clone ordering terms. More detail than get_availability. | — |
| get_teen_inventory | Live teen inventoryReady-to-flip teens available now and upcoming groups by ready date, plus teen ordering terms (minimum, delivery fee). | — |
* required
How results are shaped
- Each
tools/callresult carriesstructuredContentand the same JSON as text:{ data, notes?, html_url?, as_of? }. notesare caveats to pass on to the user — for example that a cultivar is encyclopedia-only and not for sale, or that sales are to licensed California cultivators with a 150-clone minimum.- Lookups that miss return
isError: truewith a hint (usually "usesearchfirst") rather than a protocol error, so the model can recover. - Live tools read the nursery inventory system on each call; if it is unreachable they return an error result and the REST API's cached copy at
/api/v1/availabilityis a good fallback. - Supported protocol versions:
2025-06-18,2025-03-26,2024-11-05.GETreturns 405 (no server-initiated stream); JSON-RPC batches are accepted.
Terms
Same as the REST API — see /developers#terms. Attribute Prime Cuts Nursery and link the html_url. Inventory figures are informational, not an offer to sell.
