Skip to main content
Glama

Server Details

Match dog breeds to your life, compare them, plan a test drive and estimate U.S. vet costs.

Ownership verified
Status
Healthy
Uptime
99.6% over 21 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.4/5.0

Scored across 10 tools

Disambiguation5/5

Each tool targets a distinct action/resource, and the descriptions explicitly cross-reference each other (e.g. 'use match_dog_breeds when no breed is named', 'assess_breed_fit to check one breed'). Even the closely related breed tools (profile, fit, similar, match) have clearly stated boundaries. create_test_drive_plan and review_test_drive form an unambiguous lifecycle pair.

Naming Consistency5/5

All ten tools use a consistent snake_case verb_noun pattern (assess_breed_fit, compare_dog_breeds, get_breed_profile, list_breeds, etc.). The convention is uniform across create/get/list/match/review/estimate verbs with no mixing of styles.

Tool Count5/5

Ten tools is well-scoped for a breed-matching and cost-estimation service. Each tool earns its place: discovery, matching, comparison, cost, prep, and a create/review test-drive pair, with no redundant or filler tools.

Completeness4/5

The surface covers the full selection journey: list breeds, profile, match, assess fit, compare, similar breeds, insurance cost, arrival checklist, and test-drive create/review. Minor gap is the deliberate statelessness — there is no save/update/retrieve for plans or reports, so agents must tell users to persist results themselves.

Available Tools

10 tools
assess_breed_fitCheck how well one specific dog breed fits a personA
Read-onlyIdempotent
Inspect

Use this when the user asks whether a specific breed is right for them or what would make it work. It computes a personal fit score and rank for that breed. Reality-checks ONE named breed against the person's lifestyle with the TheDogs.app quiz scoring: overall fit %, its rank among 121 breeds for the same answers, a per-area breakdown (home, activity, experience, kids, shedding, barking, time alone, vet budget, strangers, trainability), the biggest mismatch, and which single change in the person's situation would raise the fit most. Use when someone asks 'is a right for me?', 'should I get a ?' or 'what would make a work?'. The five key answers (home, activity, experience, kids, time alone) must come from the user: if any is unknown, ask for it first and never guess or assume a value. The rest default to neutral. Use match_dog_breeds instead when no breed is named. In apps that display widgets, a visual card with these results is shown to the user; there, keep your text reply short and do not repeat every number or list from the card. Do not use for symptoms, emergencies or treatment questions (refer the user to a veterinarian) or for training and behavior how-tos. If several of the five key answers are missing, ask for all of them in one short message, and reuse any answers the user already gave earlier in the conversation.

NameRequiredDescriptionDefault
kidsYesSmall children at home
breedYesBreed name or slug, e.g. 'Husky', 'border collie'
barkingNoBarking tolerance
sheddingNoShedding tolerance
alone_timeYesHow long the dog is alone on a typical day
experienceYesDog experience
friendlinessNoHow the dog should treat strangers
health_costsNoBudget for vet bills
trainabilityNoPreferred trainability
activity_levelYesOwner's activity level
living_situationYesHome type

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive, closed-world, so the description does not need to restate safety. It adds real behavioral context: optional parameters silently default to neutral, values must never be guessed or assumed, and widget-displaying apps render a card so the agent should keep its text reply short and not restate the numbers. It does not say what happens with an unrecognized breed name or slug, which is the remaining relevant gap.

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?

Information-dense and front-loaded, with the purpose, the sample user phrasings, and the routing rule to match_dog_breeds all stated early. It loses a point for restating the usage trigger in overlapping forms ('Use this when the user asks whether a specific breed is right for them' then 'Use when someone asks is a <breed> right for me?'), which is mild redundancy.

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?

There is no output schema, and the description compensates by enumerating the return contents in detail, plus the widget-rendering caveat and the input-completeness rule. For an 11-parameter, enum-heavy scoring tool, an agent has everything it needs to call it correctly and interpret the result.

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 description coverage is 100%, so the baseline is 3, but the description adds meaning the schema lacks: it identifies the five key answers that must come from the user (home, activity, experience, kids, time alone) and states that every other parameter defaults to neutral rather than failing. That materially changes how an agent should populate the 11-param payload.

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 precise verb+resource ('check how well one specific dog breed fits a person', 'computes a personal fit score and rank for that breed') and enumerates the concrete outputs (fit %, rank among 121 breeds, per-area breakdown, biggest mismatch, highest-leverage change). It differentiates cleanly from siblings by naming match_dog_breeds as the multi-breed alternative.

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?

Gives explicit triggers ('is a <breed> right for me?'), an explicit alternative ('Use match_dog_breeds instead when no breed is named'), and explicit exclusions (symptoms/emergencies/treatment -> vet; training and behavior how-tos). The requirement to collect the five key answers before calling, and to batch the request, is spelled out.

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

compare_dog_breedsCompare 2–3 dog breeds side by sideA
Read-onlyIdempotent
Inspect

Use this when the user compares two or three breeds or asks 'X or Y'. Compares 2–3 dog breeds on size, energy, shedding, barking, trainability, kid-friendliness and life expectancy, plus estimated vet costs (expected lifetime cost and modeled monthly insurance premium (benchmark, not a quote) at age 1, U.S. average prices). Use for 'X vs Y' questions. Estimates are statistical, not quotes or recommendations of a policy. In apps that display widgets, a visual card with these results is shown to the user; there, keep your text reply short and do not repeat every number or list from the card. Do not use for symptoms, emergencies or treatment questions (refer the user to a veterinarian) or for training and behavior how-tos. Do not use for cost questions outside the U.S.

NameRequiredDescriptionDefault
breedsYes2–3 breed names

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description adds genuine extra context: results are statistical benchmarks rather than quotes or policy recommendations, U.S.-average pricing, and widget-rendering behavior that should shorten the text reply. It does not describe pagination or response structure, but for a read-only comparison tool the disclosure is solid.

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?

Use case and scope are front-loaded and most sentences carry unique information. Minor redundancy between 'asks X or Y' and the later 'Use for X vs Y questions', and the nested parenthetical on insurance premiums is dense, but overall efficiently written.

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?

With no output schema, the description correctly compensates by enumerating the compared attributes and the cost outputs (lifetime cost, modeled monthly premium at age 1), and it front-loads caveats and downstream reply behavior. An agent has everything needed to call and frame the result.

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?

A single parameter at 100% schema description coverage, so the schema already documents it. The description corroborates the 2–3 breed constraint but adds no name-format or disambiguation guidance beyond what the schema provides, matching the baseline of 3.

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 (compares) and resource (2–3 dog breeds) and enumerates the exact comparison dimensions, so an agent can distinguish it from assess_breed_fit or get_breed_profile without opening the schema.

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?

Explicitly names triggering phrasings ('X or Y', 'X vs Y') and multiple exclusions: symptoms/emergencies/treatment (refer to vet), training and behavior how-tos, and non-U.S. cost questions. This is a full when/when-not statement.

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

create_test_drive_planCreate a 'test drive' plan to try life with a dog breed before getting oneA
Read-onlyIdempotent
Inspect

Use this when the user is unsure whether they are ready for a specific breed or wants to try life with it before adopting. Builds a short, practical try-before-you-adopt plan (3, 7 or 14 days) for ONE named breed, matched to the person's lifestyle: 3–8 concrete trials (daily exercise at the breed's level, workday/alone-time plan, coat care, noise, floor space, kids supervision, training commitment, and a dog-account budget using TheDogs.app vet-cost estimates), each with daily time ranges and a pass criterion. The trial that tests the person's biggest mismatch is marked decisive and comes first. Use when someone asks how to know if they're ready for a breed, wants to 'try before buying', or is unsure about a specific breed. The five key answers (home, activity, experience, kids, time alone) must come from the user: ask for any that are missing, never guess. Returns a plan_id: nothing is stored, so tell the user to save the summary. In apps that display widgets, a visual card with these results is shown to the user; there, keep your text reply short and do not repeat every number or list from the card. Do not use for symptoms, emergencies or treatment questions (refer the user to a veterinarian) or for training and behavior how-tos. If several of the five key answers are missing, ask for all of them in one short message, and reuse any answers the user already gave earlier in the conversation.

NameRequiredDescriptionDefault
daysNoTrial length in days (default 7)
kidsYesSmall children at home
breedYesBreed name or slug
barkingNoBarking tolerance
sheddingNoShedding tolerance
alone_timeYesHow long the dog would be alone on a typical day
experienceYesDog experience
friendlinessNoHow the dog should treat strangers
health_costsNoBudget for vet bills
trainabilityNoPreferred trainability
activity_levelYesOwner's activity level
living_situationYesHome type

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description reinforces this with 'nothing is stored, so tell the user to save the summary' and 'Returns a plan_id'. It additionally discloses widget-mode behavior (keep replies short, don't repeat the card) and the anti-hallucination rule ('must come from the user... never guess'), which annotations cannot express.

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?

Front-loaded with the purpose and use condition, and nearly every clause adds operational detail. There is mild redundancy: the 'use when the user is unsure...' framing is restated later as 'Use when someone asks how to know if they're ready for a breed', which could be merged.

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 12-parameter tool with no output schema, the description covers everything an agent needs: required user-supplied inputs, what the plan contains, the plan_id return, storage semantics, and widget display behavior. Nothing material is left for the agent to infer.

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 description coverage is 100% and includes enums for 11 of 12 params, so the baseline is 3. The description adds genuine meaning by naming the five key answers that must come from the user (home, activity, experience, kids, time alone) and by tying trial content to inputs like coat care, noise, floor space and the vet-cost budget, exceeding what the schema alone conveys.

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 and artifact ('Builds a short, practical try-before-you-adopt plan (3, 7 or 14 days) for ONE named breed') and enumerates the concrete contents of the plan. It is clearly distinguishable from siblings like assess_breed_fit (which evaluates fit) and review_test_drive (which reviews an existing plan).

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?

Gives explicit triggering conditions ('when the user is unsure whether they are ready for a specific breed', 'wants to try before buying') and explicit exclusions ('Do not use for symptoms, emergencies or treatment questions... or for training and behavior how-tos'), redirecting symptom questions to a veterinarian. It also captures a behavioral nuance: if the eight weeks... rather, if several of the five key answers are missing, ask for them in one message and reuse prior answers.

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

estimate_dog_insurance_costEstimate vet costs and pet insurance value for a dog breedA
Read-onlyIdempotent
Inspect

Use this when the user asks what a specific dog breed will cost at the vet, whether pet insurance is worth it for their dog, or how deductible or reimbursement choices change their risk. It runs TheDogs.app's cost simulation for that breed, age and ZIP code. Simulates thousands of possible lifetimes for a U.S. dog of the given breed and age (breed health-registry data + U.S. vet cost ranges adjusted to ZIP code) and returns expected vet costs, the chance of a year with bills above the owner's emergency savings, the plan structure that keeps that risk under 5%, and a modeled monthly premium (benchmark, not a quote). Use when a user asks whether pet insurance is worth it for their dog, how much vet care or insurance costs for a breed, or how deductible and reimbursement levels change their risk. Present results as a statistical estimate, not as advice: do not tell the user to buy insurance or that 'the model suggests/recommends' a policy; say what the numbers show and leave the decision to the user. Always give the user the reportUrl link (full report with price-by-age chart and all 27 plan structures) and mention that it is an estimate, not a quote. In apps that display widgets, a visual card with these results is shown to the user; there, keep your text reply short and do not repeat every number or list from the card. Do not use for symptoms, emergencies or treatment questions (refer the user to a veterinarian) or for training and behavior how-tos. Do not use for cost questions outside the U.S.

NameRequiredDescriptionDefault
zipNoOptional 5-digit U.S. ZIP code; adjusts for local vet prices
breedYesDog breed name or slug, e.g. 'French Bulldog', 'frenchie', 'golden-retriever'
age_yearsYesDog's age in years (0.5 for puppies under 1)
emergency_savings_usdNoHow much the owner could pay for a surprise vet bill today; rounded to 500/1000/2000/5000/10000. Default 2000.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare this a safe, idempotent read, so the description is free to add the higher-value context it does provide: the simulation methodology, that the premium is a benchmark not a quote, that a reportUrl must always be surfaced, how to phrase results (statistical estimate, no advice, no 'model recommends'), and widget-mode behavior where the text reply should be short. That is behavior an agent could not infer from 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.

Conciseness3/5

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

The opening and exclusions are front-loaded well, but the 'when to use' clause is substantially restated mid-paragraph ('Use when a user asks whether pet insurance is worth it for their dog, how much vet care or insurance costs for a breed...'), which duplicates the first sentence. The presentation/advice guidance is worth keeping; the redundancy is not.

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 4-parameter simulation tool with no output schema, the description covers the return contents, the mandatory reportUrl hand-off, the estimate-vs-quote framing, the advice boundary, and the widget display case. An agent has everything needed to call it and present results correctly.

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 baseline is 3, but the description earns extra by tying parameters to their model effect: ZIP 'adjusts to local vet prices' and emergency_savings_usd drives 'the chance of a year with bills above the owner's emergency savings'. Breed and age are used but not elaborated beyond what the schema already says.

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 names a specific verb and resource ('runs TheDogs.app's cost simulation'), the exact inputs it consumes (breed, age, ZIP), and the concrete outputs (expected vet costs, risk-of-exceeding-savings, plan structure under 5%, modeled premium). It is clearly distinguishable from siblings like get_breed_profile or compare_dog_breeds, which cover traits rather than simulated costs.

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?

Explicit triggering conditions are given ('when the user asks what a specific dog breed will cost at the vet, whether pet insurance is worth it'), plus hard exclusions: no symptoms/emergencies/treatment (refer to a veterinarian), no training/behavior how-tos, and no non-U.S. cost questions. This is close to a complete when/when-not routing statement.

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

find_similar_breedsFind breeds with the same look and vibe as a breed the user lovesA
Read-onlyIdempotent
Inspect

Use this when the user loves a breed that may not fit them, or asks for a similar but easier breed. Finds breeds that share the look and personality of a breed the user is drawn to (e.g. 'I love Huskies but…', 'something like a German Shepherd but smaller/easier', 'dogs similar to a Golden'). Uses TheDogs.app look & personality tags plus AKC group. If the five key lifestyle answers are given, it only returns easier-to-find breeds that fit the user at least 10 points better than the loved breed, with their fit %; without answers it returns the closest look-and-vibe twins. Use match_dog_breeds when no breed is named, assess_breed_fit to check one breed. In apps that display widgets, a visual card with these results is shown to the user; there, keep your text reply short and do not repeat every number or list from the card. Do not use for symptoms, emergencies or treatment questions (refer the user to a veterinarian) or for training and behavior how-tos.

NameRequiredDescriptionDefault
kidsNoSmall children at home
breedYesThe breed the user loves
alone_timeNoHow long the dog is alone on a typical day
experienceNoDog experience
activity_levelNoOwner's activity level
living_situationNoHome type

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the bar is lower. The description still adds genuinely non-obvious behavior: results change conditionally depending on whether the five lifestyle answers are supplied (easier-to-find breeds at least 10 points better fit, with fit %, versus look-and-vibe twins), plus a note that a visual widget card may already be shown. That conditional-logic disclosure is valuable, though it doesn't cover result count or ranking ties.

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 front-loaded: trigger, mechanism, conditional behavior, alternatives, UI guidance, and exclusions each occupy one clause with no repetition. It is longer than average, but each sentence carries distinct routing or behavioral information, so little is wasted.

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?

There is no output schema, and the description partially compensates by stating what comes back (breeds with their fit %) and how the widget card interacts with the text reply. Combined with a 6-parameter schema and rich annotations, an agent has enough to call it correctly, though number of results returned and ranking behavior remain unstated.

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 description coverage is 100% with enums documented, so the baseline is 3. The description adds meaning the schema cannot: the five optional lifestyle parameters are not just filters but a mode switch that changes the entire result set and gates the fit-% output. It doesn't describe per-parameter validation (e.g. breed string matching), so it stops short of 5.

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 and resource ('finds breeds that share the look and personality of a breed the user is drawn to') with concrete examples of the user's phrasing. It explicitly contrasts itself against match_dog_breeds and assess_breed_fit, so an agent can distinguish it from the closest siblings without opening a schema.

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?

Gives explicit trigger conditions ('user loves a breed that may not fit them', 'something similar but easier'), names the two alternatives and the condition that selects each, and adds hard exclusions (no symptoms/emergencies/treatment, no training how-tos). This is full when/when-not/alternative coverage.

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

get_arrival_checklistArrival checklist (starter kit) for a new dog of a given breedA
Read-onlyIdempotent
Inspect

Use this when the user is getting a dog soon and asks what to buy or prepare. Builds TheDogs.app's arrival checklist for a breed: what to have before the dog comes home, on day one and in the first week, sized for the breed (crate, harness), with breed-specific items (e.g. ramp for back-problem breeds, cooling mat for flat-faced breeds) and a 'don't buy yet' list. Optional lifestyle answers personalize it (apartment, alone all day, first dog). Use when the user is getting a dog soon, passed a test drive, or asks what to buy/prepare. The list is editorial, not sponsored; it contains no prices or shopping links. In apps that display widgets, a visual card is shown to the user; there, keep your text reply short and do not repeat every item from the card. Do not use for symptoms, emergencies or treatment questions (refer the user to a veterinarian) or for training and behavior how-tos.

NameRequiredDescriptionDefault
kidsNoSmall children at home
breedYesThe breed the user is getting
alone_timeNoHow long the dog is alone on a typical day
experienceNoDog experience
activity_levelNoOwner's activity level
living_situationNoHome type

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, so safety is covered. The description adds real context beyond that: the list is editorial and non-sponsored with no prices or shopping links, and in widget-capable apps a visual card is shown so the text reply should stay short and not duplicate items. That last point materially changes how an agent should respond.

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

Conciseness3/5

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

The trigger condition is stated twice in near-identical wording ("Use this when the user is getting a dog soon and asks what to buy or prepare" and "Use when the user is getting a dog soon, passed a test drive, or asks what to buy/prepare"). Content is front-loaded and scannable, but one sentence does not earn 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?

With no output schema, the description carries the return-value burden and does so partially: it characterizes the payload (editorial list, categorized by timing, no prices/links) and notes the widget card rendering. It never lists explicit section keys or confirms the personalization effect on output, but an agent has enough to call and present it correctly.

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% with enums fully documented, so the baseline is 3. The description goes slightly beyond by explaining what the optional lifestyle inputs do ("Optional lifestyle answers personalize it (apartment, alone all day, first dog)"), mapping them to living_situation, alone_time, and experience rather than restating enum values.

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 and resource: "Builds TheDogs.app's arrival checklist for a breed," then enumerates the scope (before home, day one, first week, breed-specific sizing). It is clearly distinguishable from siblings like create_test_drive_plan or get_breed_profile, which serve different stages of the same journey.

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?

Explicit triggers ("user is getting a dog soon," "passed a test drive," "asks what to buy/prepare") plus explicit exclusions: no symptoms/emergencies/treatment (refer to vet) and no training/behavior how-tos. This leaves little ambiguity about routing.

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

get_breed_profileGet a dog breed's profile cardA
Read-onlyIdempotent
Inspect

Use this when the user asks for a general overview of ONE named breed (what it's like, pros and cons, health watch). For a personal fit check use assess_breed_fit; to weigh 2–3 breeds use compare_dog_breeds; for vet costs use estimate_dog_insurance_cost. Returns TheDogs.app's (sarcastic but factual) profile of a dog breed: tagline, short description, strengths, Dr. Waggs' reality check, health watch list, key stats and breed-specific gear picks (product types chosen for the breed's health risks), with links to the full breed page and its vet-cost estimate. Health items are general breed tendencies, not a diagnosis. In apps that display widgets, a visual card with these results is shown to the user; there, keep your text reply short and do not repeat every number or list from the card.

NameRequiredDescriptionDefault
breedYesBreed name or slug, e.g. 'Corgi', 'german shepherd'

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already cover the safety profile (read-only, idempotent, non-destructive), and the description adds rich context beyond them: exact return contents (tagline, strengths, Dr. Waggs reality check, health watch, gear picks), the caveat that health items are tendencies not diagnoses, and widget-rendering behavior that instructs the agent to shorten its reply. This is information annotations cannot convey.

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?

Front-loads the triggering condition, routes to alternatives compactly, then describes the return. Every sentence earns its place with no restatement of the name, schema, or annotations.

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 single-param read-only tool with no output schema, the description fully specifies when to use it, what it returns, the widget-display behavior, and the health-disclaimer scope. Nothing an agent needs to call 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?

Only one parameter with 100% schema coverage including examples ('Corgi', 'german shepherd'), so the schema fully documents it. The description adds no format or syntax guidance beyond the schema, making the baseline 3 appropriate.

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+resource (retrieve profile card for a breed) and explicitly distinguishes scope: 'ONE named breed' general overview. Names the exact siblings it is not (assess_breed_fit, compare_dog_breeds, estimate_dog_insurance_cost) with conditions that select each.

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?

Explicit when-to-use ('general overview of ONE named breed') and three explicit when-not-to-use alternatives with their triggering conditions (personal fit, comparing 2-3 breeds, vet costs). Nothing is left to inference.

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

list_breedsList supported dog breedsA
Read-onlyIdempotent
Inspect

Use this when the user asks which breeds TheDogs.app covers or a breed name can't be matched. Lists dog breeds supported by the TheDogs.app pet insurance cost estimator, optionally filtered by a search term.

NameRequiredDescriptionDefault
queryNoOptional filter, e.g. 'terrier'

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, openWorld=false, and non-destructive, so the safety profile is fully covered. The description adds the useful framing that this is a coverage/reference lookup for a cost estimator, but says nothing about result size, ordering, or pagination.

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 tight sentences with the usage trigger front-loaded and the purpose statement second. No redundant or filler text.

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 trivial one-parameter, read-only list tool with no output schema, the description covers both what it returns and when to call it. A brief note on return shape (e.g. names only vs. breed objects) would make it fully self-contained.

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% and the single 'query' parameter is fully documented with an example in the schema. The description restates it as an optional search filter, adding no syntax or matching-behavior detail beyond the schema.

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 ('Lists dog breeds supported by the TheDogs.app pet insurance cost estimator'), plus the optional filter. The purpose is clear and distinct from siblings like get_breed_profile or compare_dog_breeds, though it doesn't explicitly name an alternative for disambiguation.

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?

Gives two explicit trigger conditions: when the user asks which breeds are covered, or when a breed name fails to match. This is concrete when-to-use guidance, but it names no exclusions or sibling alternatives (e.g. vs. find_similar_breeds or match_dog_breeds).

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

match_dog_breedsFind dog breeds that fit a lifestyle (TheDogs.app quiz)A
Read-onlyIdempotent
Inspect

Use this when the user wants a personal recommendation of which dog breed suits their home, schedule, activity level, experience or family. It scores all 121 breeds with TheDogs.app's matching engine. Runs the TheDogs.app breed-matching quiz on 121 breeds and returns the top 3 matches as cards with a sarcastic tagline, why the breed works, Dr. Waggs' reality check and a link to the breed page. Use when someone asks which dog breed suits them. The five key answers (living situation, activity, experience, kids, time alone) must come from the user: if any is unknown, ask for it first and never guess or assume a value. The rest default to neutral. Always share the links. In apps that display widgets, a visual card with these results is shown to the user; there, keep your text reply short and do not repeat every number or list from the card. Do not use for symptoms, emergencies or treatment questions (refer the user to a veterinarian) or for training and behavior how-tos. If several of the five key answers are missing, ask for all of them in one short message, and reuse any answers the user already gave earlier in the conversation.

NameRequiredDescriptionDefault
kidsYesSmall children at home
barkingNoBarking tolerance
sheddingNoShedding tolerance (hate_it = hypoallergenic only)
alone_timeYesHow long the dog is alone on a typical day
experienceYesDog experience
friendlinessNoHow the dog should treat strangers
health_costsNoBudget for vet bills
trainabilityNoPreferred trainability
activity_levelYesOwner's activity level
living_situationYesHome type

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare a read-only, idempotent, non-destructive, closed-world call, so the safety profile is covered. The description nevertheless adds real operational detail: top-3 output shape (cards with sarcastic tagline, why-it-works, Dr. Waggs' reality check, breed link), the 'share the links' obligation, and the defaulting rule for non-key answers. It does not state cost/rate behavior or whether results are stable across identical inputs, but there are no annotation contradictions.

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?

Front-loaded with the trigger and the engine, then flows into output, prerequisites and exclusions. There is mild redundancy — '121 breeds' and the 'use when someone asks which dog breed suits them' clause restate the opening sentence — but the remaining sentences each carry distinct instructions (defaults, links, widget behavior, refusals).

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 10-parameter quiz tool with no output schema, the definition covers trigger, required-vs-default inputs, user-elicitation rules, result shape, link-sharing, widget-mode guidance and out-of-scope refusals. An agent has everything needed to call it and to render its answer correctly.

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% with enums fully described, so the schema carries the baseline. The description adds meaning the schema cannot: it designates living_situation, activity_level, experience, kids and alone_time as the five must-collect answers and states that all remaining parameters default to neutral, which tells the agent which fields it is expected to elicit from the user.

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 concrete verb and resource ('scores all 121 breeds with TheDogs.app's matching engine ... returns the top 3 matches as cards') and defines the trigger ('when the user wants a personal recommendation of which dog breed suits their home, schedule, activity level, experience or family'). It differentiates from the medical/training domain but never names the near-identical sibling assess_breed_fit, so the boundary against same-family tools is left implicit.

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?

Explicit when-to-use, explicit when-not-to-use ('Do not use for symptoms, emergencies or treatment'), and a hard prerequisite: the five key answers must come from the user, never guessed, with a stated fallback (ask in one short message, reuse earlier answers). It also tells the agent how to behave differently when a widget renders the results.

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

review_test_driveReview the results of a dog-breed test driveA
Read-onlyIdempotent
Inspect

Use this when the user reports back on a TheDogs.app test drive plan (by plan ID or by describing how the trials went). Reviews a finished TheDogs.app test drive: takes the plan_id and, for each trial, whether it worked, was a struggle, or was skipped. Returns three blocks (Worked / Needs a solution / Not yet known), a fix for each struggle, an overall readout that weighs the decisive trial most, and better-matching, easier-to-find breeds when it didn't go well. Use when the user reports back on a test drive. Trial keys come from the plan (exercise, alone, coat, noise, space, kids, training, budget); map the user's words to them and leave out trials they didn't mention. Nothing is stored. In apps that display widgets, a visual card with these results is shown to the user; there, keep your text reply short and do not repeat every number or list from the card.

NameRequiredDescriptionDefault
plan_idYesThe plan ID from create_test_drive_plan, e.g. td1.border-collie.7.0010110101
resultsYesOutcome per trial

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the readOnly/idempotent/non-destructive annotations, it discloses that nothing is stored and, crucially, prescribes agent behavior when a widget card is present ('keep your text reply short and do not repeat every number or list from the card'). That is a substantive behavioral trait not captured by 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.

Conciseness4/5

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

The definition is front-loaded, putting the trigger and return shape before implementation details. It loses a point for redundancy, restating 'Use when the user reports back on a test drive' after already opening with that same condition.

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?

With no output schema, the description compensates by describing the returned blocks (Worked / Needs a solution / Not yet known) and the fallback breed suggestions. Combined with the mapping rules and widget-response guidance, an agent has everything needed to call and report correctly.

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 baseline is 3. The description still adds meaning: it explains that trial keys come from the plan, lists the mapping vocabulary, instructs the agent to map the user's words onto those keys, and to omit unmentioned trials — guidance the enum schema cannot provide.

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 names a specific verb and resource ('Reviews a finished TheDogs.app test drive') and enumerates the concrete outputs (three result blocks, a fix per struggle, a readout). It is clearly distinguishable from the sibling create_test_drive_plan, which produces the plan this tool consumes.

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?

It states a clear trigger ('Use this when the user reports back on a test drive plan') and even allows two input modes, by plan ID or by describing how trials went. It does not name when-not-to-use or point at a sibling alternative, keeping it short of a 5.

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. 10 tool updates
    • First observedassess_breed_fit
    • First observedcompare_dog_breeds
    • First observedcreate_test_drive_plan
    • First observedestimate_dog_insurance_cost
    • First observedfind_similar_breeds
    • First observedget_arrival_checklist
    • First observedget_breed_profile
    • First observedlist_breeds
    • First observedmatch_dog_breeds
    • First observedreview_test_drive

Publisher details

Operator
ANIMUS MOTVS Kft. · Publisher source
Vendor relationship
First-party · Publisher source
Trust center
Not available
Restrictions
No account, sign-in or OAuth required. Vet-cost estimates cover the United States only. · Publisher source

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables users to search dog breeds, retrieve detailed breed information, get random dog facts, and access AKC breed groups through the dogapi.dog v2 API.
    283 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to fetch dog breed data, including descriptions, attributes, and group information, via the Dog API through natural language queries.
    -
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to look up verified, sourced dog rules for parks, beaches, trails, campgrounds, hotels and restaurant patios across California and Nevada, including leash and weight restrictions, pet fees and chain policies. It also supports trip planning, hotel matching by dog size and fee budget, highway stop lists, comparisons and change tracking, with each answer citing its official source and the date it was verified.
    13
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Provides live US healthcare cost data including procedure cost estimates, provider pricing, insurance coverage rules, and medical bill analysis using real hospital transparency and CMS data.
    12
    56 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources