Skip to main content
Glama

doulas

Server Details

Find a birth, postpartum or end-of-life doula near you.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A3.8/5.0

Scored across 6 tools

Disambiguation5/5

Each tool targets a clearly distinct concern: single-record retrieval (get_listing), aggregate metrics (get_stats), and four separate enumeration/search operations over different facets. get_listing vs search_listings is disambiguated by singular retrieval by slug versus text/facet search. No two tools overlap in purpose.

Naming Consistency5/5

All six tools follow a strict verb_noun snake_case pattern: get_listing, get_stats, list_categories, list_places, list_sources, search_listings. Verbs (get/list/search) accurately reflect the operation type and are used consistently.

Tool Count5/5

Six tools is a well-scoped set for a read-only directory API, covering retrieval, search, aggregates, and the category/place/source taxonomies without redundancy. Every tool earns its place.

Completeness4/5

The surface covers the natural lifecycle of a read-only directory: search, single lookup, stats, and all supporting metadata (categories, places, sources with licenses). Minor gaps such as pagination/filtering details or a bulk lookup are absent but agents can work around them via repeated calls.

Available Tools

6 tools
get_listingB
Read-onlyIdempotent
Inspect

Get one published doula by its slug.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe listing slug.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive, and closed-world, so the safety profile is fully covered. The description adds one real behavioral constraint beyond annotations: only published listings are returned, meaning unpublished ones are invisible. It says nothing about behavior for a missing/unpublished slug, so it stays at a 3.

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?

A single short sentence with the key qualifier ('published') and the lookup key ('slug') front-loaded; nothing is redundant. It is arguably too terse for an agent unfamiliar with the toolset, but there is no filler.

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 one-parameter read tool with full annotation coverage, a fully documented schema, and no output schema, the description is nearly sufficient: an agent knows it fetches one published doula by slug. It lacks only error/missing-slug behavior, which is a minor gap at this complexity level.

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?

There is a single parameter and schema description coverage is 100%; the schema already defines the slug format, length, and pattern. The description only restates 'by its slug' and adds no syntax or semantics beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb (Get) and resource (one published doula), scoped to published listings and keyed by slug. It is clearly distinguishable from list_* and search_listings by being a single-item fetch, though it does not name that sibling explicitly.

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

Usage Guidelines2/5

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

No when-to-use guidance or alternatives are stated. The phrase 'by its slug' implies the caller must already have a slug, which is a faint usage signal, but nothing tells the agent when to prefer this over search_listings or what to do if the slug is unknown.

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

get_statsA
Read-onlyIdempotent
Inspect

Get the number of published doulas, places and categories, and when the data last changed.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds meaningful behavioral scope beyond that by specifying that only *published* entities are counted and that a last-modified timestamp is included.

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?

A single sentence with no filler, front-loading the verb and the full list of returned metrics. Every clause carries information; nothing could be removed without losing meaning.

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?

With no output schema, the description carries the burden of describing return values and does so adequately, naming the three counts and the last-changed timestamp. The exact response shape (field names, nesting) remains unspecified, but the semantic content is complete for a zero-argument read tool.

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?

The tool takes zero parameters, so the baseline of 4 applies. There is no argument syntax for the description to explain, and it correctly does not invent any.

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

Purpose4/5

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

The description states a specific verb (Get) and resource (stats) and enumerates exactly which aggregates are returned: counts of published doulas, places, and categories, plus the last-change timestamp. This clearly separates it from the list_* and search_* siblings, though it never names an alternative explicitly.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: an agent can infer this is the aggregate-count tool versus the item-listing siblings, and there is no filter or parameter to consider. However, there is no explicit when-to-use guidance or exclusion telling the agent when a list tool is preferable.

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

list_categoriesA
Read-onlyIdempotent
Inspect

List categories with their doula counts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds the useful content hint that counts are returned, but says nothing about pagination, ordering, or whether counts are scoped/filtered.

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?

A single front-loaded sentence with no filler. Every word (verb, resource, returned attribute) carries information.

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 zero-parameter read tool with full annotation coverage and no output schema, the description adequately conveys both the operation and the returned data. It could be more complete by noting ordering or the scope of the counts, but nothing essential is missing 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?

The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a no-parameter tool applies.

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

Purpose4/5

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

States a specific verb and resource ('List categories') plus a payload detail ('with their doula counts'), which is enough for an agent to know what comes back. It does not explicitly differentiate from siblings like list_places or list_sources, but the distinct resource name makes collision unlikely.

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

Usage Guidelines2/5

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

The description offers no when-to-use guidance, no conditions, and no alternatives among the list_* and search_listings siblings. Usage is only inferable from the verb itself.

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

list_placesB
Read-onlyIdempotent
Inspect

List countries, regions and cities that have doulas.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and closed-world scope, so the safety profile is covered. The description adds the meaningful constraint that only places containing doulas are returned, which is not derivable from the annotations. It says nothing about pagination, result ordering, or the shape of the geographic hierarchy.

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?

A single front-loaded sentence with zero filler. Every word contributes: verb, three resource levels, and the scoping condition.

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

Completeness3/5

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

For a zero-parameter, read-only, idempotent tool this is nearly sufficient, but with no output schema the description bears the burden of describing returns. It names the entity types returned yet leaves open whether the three levels are nested hierarchically or returned as a flat list, and whether names or identifiers come back.

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?

The tool takes zero parameters, so there is no parameter semantics to document. Baseline of 4 applies; the description correctly implies the tool is unfiltered and returns its full set.

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

Purpose4/5

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

States a specific verb and resource: 'List countries, regions and cities that have doulas.' The scope qualifier ('that have doulas') makes the returned set unambiguous. It doesn't explicitly contrast with siblings like list_categories or search_listings, but the geographic-places framing makes it distinguishable.

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

Usage Guidelines2/5

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

No when-to-use guidance and no named alternatives. The phrase 'that have doulas' hints at the content scope but says nothing about when an agent should call this versus list_categories, search_listings, or get_stats. Usage must be inferred entirely.

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

list_sourcesA
Read-onlyIdempotent
Inspect

List where the doula data comes from, with the license and refresh of each source.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and closed-world scope, so the safety profile is covered. The description adds that each entry carries license and refresh metadata, but says nothing about result size, ordering, or whether the source list is static.

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?

One sentence, front-loaded with the verb and resource, and the trailing clause adds only useful payload detail. Nothing redundant or padded.

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 zero-param, read-only enumeration with no output schema, the description tells the agent what each entry contains (license, refresh), which is the key missing piece. It stops short of describing ordering or volume, but nothing essential to calling it correctly is absent.

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?

The tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline of 4 applies. The description correctly does not invent parameter behavior.

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?

States a specific verb (List) and resource (data sources for doula data) and clarifies the payload is provenance metadata - license and refresh per source. That distinguishes it cleanly from sibling list tools (list_categories, list_places) and from search_listings/get_listing, which retrieve records rather than their provenance.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer this is the tool to call when it needs to know data provenance or freshness before trusting listing data. There is no explicit when-to-use, no exclusions, and no routing against get_stats or the other list_* siblings.

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

search_listingsB
Read-onlyIdempotent
Inspect

Search published doulas by text, place and category.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoSearch text, with at least one letter or digit. Matches name, categories, attributes, description and place. Typos fall back to close matches.
cityNoCity slug, from /places.
sortNo`relevance` needs `q` and is the default with it. `name` is the default without `q`. `recent` is newest first.
limitNoItems per page.
cursorNo`page.nextCursor` from the previous response. Opaque. Send the same filters and `limit`.
regionNoRegion slug, from /places.
countryNoISO 3166-1 alpha-2 country code, any case. A country the directory does not cover, as listed in /places, gives 400.
categoryNoCategory slug, from /categories. A parent slug also matches its children.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive, closed-world behavior, so the safety profile needs no restating. The description adds only the 'published' scoping detail; it says nothing about pagination, empty-result behavior, or typo fallback (that lives in the schema). Some added value, but thin against a 4-hint annotation block.

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?

A single front-loaded sentence with zero filler or repetition. It is efficient, though its brevity leaves the tool under-explained relative to its 8-parameter surface; still, no sentence is wasted.

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

Completeness3/5

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

For an 8-parameter search tool with no output schema, the description is minimal but the schema itself is exceptionally rich, covering cursor pagination, sort defaults, slug sources and error cases (uncovered country gives 400). What is missing is description-level framing of how filters combine and what a result set looks like, so it is adequate rather than complete.

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 every one of the 8 parameters is already documented in the schema with patterns, defaults and cross-references. The description's 'by text, place and category' loosely maps to q/city-region-country/category but adds no syntax or semantics beyond the schema. Baseline 3 applies.

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

Purpose4/5

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

States a clear verb+resource: searching 'published doulas'. The qualifier 'published' scopes the result set meaningfully. It does not, however, distinguish itself from siblings such as get_listing, though the search/retrieve split is largely self-evident from the names.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no prerequisites (e.g. that city/region/country slugs come from list_places or category slugs from list_categories), and names no alternatives. The agent must infer all routing from sibling names and schema text.

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 observedget_listing
    • First observedget_stats
    • First observedlist_categories
    • First observedlist_places
    • First observedlist_sources
    • First observedsearch_listings

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables searching a public coach directory by free text, category, country, city, languages, specialties, hourly rate, experience and verification, and retrieving individual coach profiles, booking availability, directory facet counts, featured coaches and articles. All tools are read-only, require no authentication, and render interactive coach and profile cards inside ChatGPT and Claude clients.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Country-agnostic MCP-callable directory for AI agents to find local SMBs — realtors, insurance agents, medical practitioners — by category, location, or natural-language query. Returns business catalog data and UTM-tagged booking URLs (zero PII).
    5
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources