GTH Intelligence - Substance Abuse Treatment Finder
Server Details
Search 12,338 curated, SAMHSA-sourced addiction treatment facilities across all 50 US states.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- Crindo2/gth-mcp-server
- GitHub Stars
- 0
- Server Listing
- GTH Intelligence - Substance Abuse Treatment Finder
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.6/5 across 4 of 4 tools scored.
Each tool targets a distinct aspect of the domain: discovering coverage, searching by criteria, retrieving details, and understanding treatment types. No overlapping purposes.
All tool names follow a consistent verb_noun pattern in snake_case (list_states, search_facilities, get_facility_detail, get_treatment_types), making them predictable.
With 4 tools, the server is well-scoped for its purpose—covering discovery, search, detail, and education without unnecessary complexity.
The tool surface covers the full workflow: listing states for context, searching facilities by multiple criteria, retrieving full profiles, and explaining treatment types. No obvious gaps.
Available Tools
4 toolsget_facility_detailGet Facility DetailARead-onlyIdempotentInspect
Get the full profile of one specific treatment facility: address, phone, programs offered, insurance plans accepted, SAMHSA verification status, and a direct browse URL. Supports partial name matching — returns the best match if multiple facilities contain the query string. Use after search_facilities when the user wants to drill into a named facility.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Full or partial facility name (e.g. 'Betty Ford' or 'Hazelden Betty Ford Center') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds value by disclosing the partial name matching behavior (returns best match for partial queries) and lists the returned fields, providing extra context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: first lists what is returned, second explains matching and usage. No wasted words, front-loaded with key information, and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 param, annotations present, no output schema), the description covers the return fields and matching behavior adequately. It does not mention error handling for no matches, but the partial matching hint implies no-match cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description for the 'name' parameter. The description adds examples ('Betty Ford' or 'Hazelden Betty Ford Center') and clarifies partial matching behavior, which adds meaning beyond the schema's description alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves the full profile of a specific treatment facility, listing concrete fields (address, phone, programs, insurance, SAMHSA status, browse URL). It distinguishes from sibling tool search_facilities by focusing on drilling into a named facility rather than searching.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use after search_facilities when the user wants to drill into a named facility,' providing clear when-to-use guidance and implying not to use for listing or searching. The partial name matching behavior is also mentioned as a usage hint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_treatment_typesGet Treatment Type DefinitionsARead-onlyIdempotentInspect
Get definitions of all treatment program types (Inpatient Rehab, Detox, PHP, IOP, Outpatient, MAT, Counseling, Sober Living) with duration, intensity, and typical fit. Returns markdown-formatted explanations. Use when the user is uncertain which treatment_type to pass to search_facilities, or asks 'what's the difference between X and Y'.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and openWorldHint. The description adds that it returns markdown-formatted explanations, providing useful behavioral context without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first sentence states the purpose and content, the second provides usage guidance. Well-structured and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, no output schema, and good annotations, the description covers purpose, usage context, and return format completely. No gaps for this simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so schema coverage is 100%. The description adds meaning by specifying the content of the definitions (specific treatment types and their attributes), which goes beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets definitions of all treatment program types, listing specific types and what the definitions include (duration, intensity, typical fit). It also distinguishes itself from sibling tools by specifying when to use it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use: when the user is uncertain which treatment_type to pass to search_facilities, or asks about differences between types. It doesn't mention when not to use, but the context is clear and alternatives are implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_statesList States with CoverageARead-onlyIdempotentInspect
List every US state that has treatment facility data in this directory, with per-state facility counts. Returns an array of {state, stateAbbr, count}. Use as a first step when the user's location is unclear, or to discover where coverage exists before calling search_facilities.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly and idempotent; description adds return format details. No contradictions, but could be improved with output size/latency info.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with function and usage context, no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list tool, the description fully covers purpose, output shape, and usage hints. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist; schema coverage is 100%. Baseline 4 is appropriate as no additional param info needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it lists US states with treatment facility data and per-state counts, distinguishing from sibling tools like search_facilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly recommends use when location is unclear or to discover coverage before calling search_facilities, providing direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_facilitiesSearch Treatment FacilitiesARead-onlyIdempotentInspect
Search the 12,338 curated, SAMHSA-sourced US addiction treatment facility directory by state, city, treatment type, and insurance. Returns matched facilities with name, city/state, programs offered, insurance accepted, phone, and browse URL. Use this to find candidates — then call get_facility_detail for one facility's full profile. If the user is uncertain about location coverage, call list_states first.
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | City name (partial match supported — 'san fran' matches 'San Francisco') | |
| limit | No | Max results to return (1-20, default 5) | |
| state | Yes | US state name or 2-letter abbreviation (e.g. "California" or "CA"). Required — searches are scoped to one state at a time. | |
| insurance | No | Insurance provider accepted (e.g. "Medicaid", "Aetna", "Blue Cross", "Medicare", "Private Pay"). Partial match supported. | |
| treatment_type | No | Type of treatment program. Call get_treatment_types if the user is unsure which applies. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and not open world. The description adds value by specifying the exact fields returned (name, city/state, programs, insurance, phone, browse URL) and the curated source, but does not cover edge cases like empty results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of four sentences, front-loaded with the main action and return info, then usage guidance. No unnecessary words, efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 100% schema coverage, no output schema, and the presence of annotations, the description is complete enough: it explains what the tool does, what it returns, and how to chain it with siblings. Missing details like pagination or error handling are not critical for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description mentions filter criteria and adds a usage hint for treatment_type ('Call get_treatment_types if unsure'), which provides extra value beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches a SAMHSA-sourced directory of addiction treatment facilities by multiple criteria, and distinguishes itself from siblings by explicitly directing the agent to use get_facility_detail for full profiles and list_states for location uncertainty.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use: 'Use this to find candidates' and a clear pipeline: call get_facility_detail for details, or list_states first if location is uncertain. This gives direct guidance on alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Your Connectors
Sign in to create a connector for this server.