Skip to main content
Glama

findabis

Server Details

Public directory of UK medical cannabis clinics, pharmacies, products and strains.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.2/5.0

Scored across 6 tools

Disambiguation4/5

Most tools are clearly distinct: clinics, pharmacies, products, strains, and a cross-entity search. get_product is a detail lookup for a product, which could be confused with find_products, but the descriptions clarify that find_products is for discovery and get_product is for full details.

Naming Consistency4/5

The naming pattern is mostly consistent with find_* for search/discovery tools and get_product for a detail retrieval. The inclusion of search_findabis breaks the find_* pattern slightly, but it is still readable and predictable.

Tool Count5/5

Six tools is well-scoped for a medical cannabis information server: discovery across four entity types, a detail lookup, and a cross-entity search. Each tool has a clear purpose and none feel redundant.

Completeness4/5

The tool set covers the main public information needs: finding clinics, pharmacies, products, strains, and product details. A minor gap is the lack of a dedicated brand lookup or comparison tool, but search_findabis and find_products cover most use cases.

Available Tools

6 tools
find_clinicsFind medical cannabis clinicsA
Read-only
Inspect

UK clinics that can prescribe medical cannabis, with location, consultation fees and rating. Search by name, city or postcode. This lists who offers a service; it says nothing about whether any particular person is eligible for treatment, which only a specialist can decide.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoDefault az.
limitNoDefault 10.
queryNoName, city or postcode. Postcode is matched as text, not by distance.
acceptingNewPatientsNoOnly clinics currently taking new patients.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds the useful clarification that the tool only lists providers and does not assess eligibility, which is a meaningful behavioral boundary. It does not disclose details like whether results are paginated or how ratings are computed, but the annotations carry the main safety burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long and front-loads the core purpose and key data fields. The second sentence adds an important scope clarification without unnecessary detail. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only list tool with no required parameters and a fully documented schema, the description is largely complete. It covers what the tool returns, how to search, and what it does not do. The only minor gap is that it does not mention the sort and limit parameters, but those are already described in the schema, so the description does not need to repeat them.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters. The description adds a small amount of context by mentioning search by name, city, or postcode, which maps to the query parameter, and it clarifies that postcode is matched as text, not by distance. However, it does not add much beyond the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool finds UK medical cannabis clinics and lists the key data fields (location, consultation fees, rating). It also distinguishes itself from eligibility assessment, which helps an agent understand its scope. The verb 'find' plus the resource 'clinics' is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does and explicitly clarifies that it does not determine patient eligibility, which is a useful exclusion. However, it does not explicitly contrast with sibling tools like find_pharmacies or find_products, so an agent might need to infer when to choose this over those. The search-by-name/city/postcode hint gives some context for when to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_pharmaciesFind dispensing pharmaciesA
Read-only
Inspect

UK pharmacies that dispense medical cannabis, with location, delivery options and rating. A pharmacy dispenses against a prescription that a clinic has already issued; it cannot prescribe.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoDefault 10.
queryNoName, city or postcode.
deliversNoOnly pharmacies that deliver.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so the description is not required to restate safety. It adds useful domain context about the pharmacy's role and what fields are included, though it does not disclose return format or result variability beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no filler. The core purpose and scope are front-loaded, and the distinguishing 'cannot prescribe' clarification is placed efficiently at the end.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only listing tool with three optional parameters, fully described in the schema, the description covers the domain context, the UK scope, and the key distinction from clinics. An output schema would have been helpful but is not essential given the description's mention of location, delivery options and rating.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description does not need to document parameters. It does add light context by mentioning location, delivery options and rating, which loosely maps to query and delivers, but provides no additional parameter semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states exactly what the tool returns: UK pharmacies that dispense medical cannabis, with location, delivery options and rating. It also differentiates from the sibling tools by clarifying the pharmacy role and explicitly noting it cannot prescribe, which separates it from find_clinics and related product/strain tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool: after a clinic has issued a prescription, the user needs a pharmacy to dispense it. It contrasts with prescribing clinics but does not explicitly name alternative tools or state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_productsFind medical cannabis productsA
Read-only
Inspect

Products on the UK market by category, brand or name, with THC and CBD content, the price range across pharmacies and how many stock them. Availability and price change daily — cite the product page rather than quoting a figure as settled. Listing a product is not a statement that it suits anyone.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoDefault name_asc.
limitNoDefault 10.
queryNoProduct, brand or strain name.
categoryNoDose form.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, and the description adds meaningful context beyond them: prices/availability change daily and the agent should cite the product page rather than treating figures as settled. The medical disclaimer about listing not implying suitability is also non-obvious and valuable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no filler. The core purpose is front-loaded, the volatility caveat is immediate, and the disclaimer earns its place. Every sentence contributes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple search tool with four optional, fully documented parameters and no output schema, the description covers the returned data (THC/CBD, price range, stock count) and the caveats needed for correct use. Nothing an agent needs to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the description does not need to explain parameters. It does reinforce that query matches brand or name and category is a dose form, but it adds no syntax, defaults, or constraints beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool surfaces UK-market products by category, brand or name, with THC/CBD content, pharmacy price ranges, and stock counts. This distinguishes it from siblings like find_clinics, find_pharmacies, and find_strains by focusing on product-level commercial data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use the tool: when you need UK-market products with filters and pharmacy pricing. However, it does not explicitly name alternatives like get_product or state when not to use this tool, so it lacks exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_strainsFind cannabis strainsA
Read-only
Inspect

Strain profiles: genetics, THC and CBD ranges and reported effects. Strains describe a plant lineage, not a product you can buy — use find_products for what is actually dispensed.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoDefault 10.
queryNoStrain name.
geneticsNoIndica, Sativa or Hybrid.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds meaningful behavioral context by clarifying that results are botanical lineage data rather than dispensary inventory, which is a subtle and valuable distinction beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences with zero filler. The core purpose is front-loaded, and the clarifying product-vs-strain distinction is placed exactly where it prevents misinterpretation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, read-only search tool with all parameters documented, the description provides the necessary result-domain context and sibling disambiguation. The absence of an output schema is acceptable because the description names the returned fields.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so limit, query, and genetics are already documented in the schema. The description mentions 'genetics' and result content but does not add meaning to individual parameters; this meets the baseline but does not exceed it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies a specific resource ('strain profiles') and the content returned ('genetics, THC and CBD ranges and reported effects'). It also explicitly distinguishes strains from products, making the tool's purpose stand apart from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance: strains are plant lineages, not purchasable products, and it names the alternative tool ('use find_products for what is actually dispensed'). This prevents misuse better than most definitions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_productGet one product in fullA
Read-only
Inspect

Everything public about one product: form and strength, strain and brand, terpenes, what it contains (carrier oil, allergens, capsule shell), dosage and storage notes, pack sizes, how many UK pharmacies have it in stock and the public price range, patient leaflets, FAQs and its review score. Which pharmacy charges what is shown only to verified patients on the product page. Get the slug from find_products or search_findabis first.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe product page slug, e.g. "demo-kush-t20-c1".

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide readOnlyHint=true and openWorldHint=true, so the safety profile is already known. The description adds a meaningful access boundary: pharmacy-level pricing is 'shown only to verified patients on the product page,' while public price range is included. This clarifies what is and is not visible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but purposeful: the opening clause 'Everything public about one product' frames the tool, and the following list names concrete return fields. It is longer than strictly necessary, but every clause adds useful detail rather than fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description compensates by enumerating the response scope in detail: product attributes, prices, stock, leaflets, FAQs, and review score. It also covers the key access caveat and the prerequisite for obtaining the slug, making it sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the slug parameter is already well documented with an example. The description adds value by telling the agent exactly where to get the slug from ('find_products or search_findabis first'), which supplements the schema with practical sourcing guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action and resource: 'Everything public about one product...' and enumerates the exact data returned. It clearly distinguishes this from sibling search tools by instructing the agent to obtain the slug from find_products or search_findabis first.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Get the slug from find_products or search_findabis first,' which routes the agent to the correct discovery tools before calling get_product. It implies this is the tool for full product detail after a slug is known, though it does not explicitly contrast against all siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_findabisSearch everythingA
Read-only
Inspect

One search across clinics, pharmacies, products, strains and brands. Use it when you do not yet know which of those the question is about; use the specific tool when you do, because it returns more detail.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoDefault 8 per kind.
queryYesWhat to look for.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety and open-world profile is covered. The description adds the behavioral trait that results are less detailed than the specific tools, which is useful. It doesn't disclose pagination or result grouping, but with annotations covering the main behavioral profile, a 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no waste. The core purpose and scope are front-loaded, and the usage guidance is compactly appended. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only search tool with a simple two-parameter schema and no output schema, the description covers purpose, scope, and tool selection. The only minor gap is that it doesn't describe the result format or grouping, but the annotations and schema carry enough context for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters. The description adds the context that 'limit' defaults to 8 per kind, which is a useful nuance beyond the schema, but it doesn't need to compensate for missing schema docs. Baseline 3 is correct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('search') and resource ('clinics, pharmacies, products, strains and brands'), and explicitly frames it as a cross-cutting search. It distinguishes itself from the sibling tools by naming the specific tools as alternatives, so an agent can tell it apart without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance: use it when you do not yet know which category the question is about, and use the specific tool when you do, because it returns more detail. This directly addresses tool selection and names the alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 6 tool updates
    • First observedfind_clinics
    • First observedfind_pharmacies
    • First observedfind_products
    • First observedfind_strains
    • First observedget_product
    • First observedsearch_findabis

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying the UK MHRA medicines register to search by product, brand, or active substance, retrieve all documents for a licence, and monitor recent changes to published medicines documents.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides access to the European Medicines Agency's public medicines register and related datasets, enabling search and monitoring of approved medicines, herbal substances, shortages, safety communications, referrals, and post-authorisation procedures.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources