mcp-wag
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-wagFind available dog walkers in Denver for a 30-minute walk tomorrow"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@striderlabs/mcp-wag
An MCP (Model Context Protocol) connector for Wag dog walking and pet care services. Enables AI assistants like Claude to search for walkers, book walks, check walk status with GPS tracking, view walker profiles, leave reviews, and retrieve pet report cards — all via Playwright browser automation against the live Wag website.
What It Does
This MCP server wraps the Wag web app using Playwright so any MCP-compatible AI client can:
Search for available dog walkers, sitters, boarding, or daycare near a location
Book one-time or recurring walk sessions
Track an in-progress walk with GPS coordinates
View full walker profiles (bio, certifications, reviews, pricing, photos)
Rate and tip a walker after a completed walk
Retrieve the post-walk report card (photos, potty breaks, behavior notes, route)
Related MCP server: MCP Playwright Server
Installation
npm install -g @striderlabs/mcp-wag
# Install Playwright browser binaries (one-time setup)
npx playwright install chromiumOr use it directly from the tarball:
npm install -g ./striderlabs-mcp-wag-1.0.0.tgz
npx playwright install chromiumConfiguration
Set these environment variables before running the server:
Variable | Required | Description |
| For auth tools | Your Wag account email address |
| For auth tools | Your Wag account password |
| No | Set to |
search_walkers and view_walker_profile do not require credentials. All booking, status, rating, and report tools require WAG_EMAIL and WAG_PASSWORD.
Usage with Claude Desktop
Add the following to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"wag": {
"command": "mcp-wag",
"env": {
"WAG_EMAIL": "your@email.com",
"WAG_PASSWORD": "yourpassword",
"WAG_HEADLESS": "true"
}
}
}
}If you installed from a local path instead of globally:
{
"mcpServers": {
"wag": {
"command": "node",
"args": ["/path/to/dist/index.js"],
"env": {
"WAG_EMAIL": "your@email.com",
"WAG_PASSWORD": "yourpassword"
}
}
}
}Tools
search_walkers
Search for available dog walkers by location, date, and service type.
Input:
Field | Type | Required | Description |
| string | Yes | City, zip, or full address |
| string | Yes | Date in YYYY-MM-DD format |
|
| Yes | Type of service |
| number | No | Desired walk duration (20, 30, 60) |
Output: List of walker cards with name, rating, review count, price, availability, and profile URL.
book_walk
Book a dog walking session. Requires authentication.
Input:
Field | Type | Required | Description |
| string | Yes | Walker profile slug or ID |
| string | Yes | Name of your pet |
| string | Yes | Date in YYYY-MM-DD format |
| string | Yes | Start time, e.g. |
| number | Yes | Duration in minutes |
| string | Yes | Service type |
| string | No | Notes for the walker |
Output: Booking confirmation with booking ID, confirmation URL, and status message.
schedule_recurring
Set up a recurring walk schedule. Requires authentication.
Input:
Field | Type | Required | Description |
| string | Yes | Walker profile slug or ID |
| string | Yes | Name of your pet |
| string[] | Yes | Array of days, e.g. |
| string | Yes | Walk time, e.g. |
| number | Yes | Duration in minutes |
| string | Yes | Service type |
Output: Confirmation of recurring schedule submission.
get_walk_status
Check the status of a booking and get GPS tracking if in progress. Requires authentication.
Input:
Field | Type | Required | Description |
| string | Yes | Your booking ID |
Output: Status, walker name, pet name, start/end times, distance walked, live GPS coordinates (if available).
view_walker_profile
View a walker's full public profile. No authentication required.
Input:
Field | Type | Required | Description |
| string | Yes | Walker profile slug or ID |
Output: Full profile including bio, location, rating, review count, pricing per service, certifications, services offered, photos, member since date, repeat client rate, response rate, and up to 5 recent reviews.
rate_walker
Submit a star rating and written review after a completed walk. Optionally add a tip. Requires authentication.
Input:
Field | Type | Required | Description |
| string | Yes | Booking ID of the completed walk |
| number | Yes | Star rating 1–5 |
| string | Yes | Written review text |
| number | No | Tip in dollars, e.g. |
Output: Confirmation that the review was submitted.
get_pet_report
Retrieve the post-walk report card. Requires authentication.
Input:
Field | Type | Required | Description |
| string | Yes | Your booking ID |
Output: Full report card with walker name, pet name, walk date, duration, distance, steps, average pace, calories burned, potty breaks logged, behavior tags, walker notes, whether a route map is available, and walk photos.
Example Prompts
Once connected to Claude Desktop, you can use natural language:
"Find dog walkers near 90210 for next Saturday for a 30-minute walk"
"Show me the profile and reviews for walker john-smith-123"
"Book a walk with walker sarah-jones-456 for my dog Max on 2025-04-15 at 9 AM for 30 minutes"
"Set up recurring Monday/Wednesday/Friday walks at 8 AM with walker tom-brown-789"
"What's the status of my booking ABC123? Is the walker close?"
"Leave a 5-star review for booking XYZ789 saying 'Luna had a great time!' and add a $5 tip"
"Get the report card for booking DEF456 — did Bella have any potty breaks?"
Building from Source
git clone https://github.com/markswendsen-code/mcp-wag.git
cd mcp-wag
npm install
npm run build
# Output: dist/index.jsTroubleshooting
"WAG_EMAIL and WAG_PASSWORD environment variables are required"
Set these in your shell or in the MCP server config's env block.
Login fails / redirected to login page
Verify your credentials by logging in to wagwalking.com manually.
Set
WAG_HEADLESS=falseto watch the browser and diagnose the issue.Wag may require completing a CAPTCHA on first login from a new browser.
No walkers found in search results
The Wag website structure may have changed. Try setting
WAG_HEADLESS=falseto inspect.Try a more specific location (full city + state, or zip code).
Ensure Playwright Chromium is installed:
npx playwright install chromium.
Build fails
npm install
node build.jsMake sure Node.js 18+ is installed.
Playwright browser not found
npx playwright install chromiumLicense
MIT — Strider Labs
Available Tools
7 toolsbook_walkB
Book a dog walking session on wagwalking.com. Requires WAG_EMAIL and WAG_PASSWORD environment variables to be set.
| Name | Required | Description | Default |
|---|---|---|---|
| walker_id | Yes | The walker/caregiver ID or profile slug | |
| pet_name | Yes | Name of the pet to be walked | |
| date | Yes | Date for the walk in YYYY-MM-DD format | |
| time | Yes | Desired start time, e.g. "10:00 AM" | |
| duration_minutes | Yes | Walk duration in minutes (20, 30, or 60) | |
| service_type | Yes | Service type: walk, sitting, boarding, or daycare | |
| special_instructions | No | Special instructions for the walker |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions authentication requirements (environment variables) which is valuable, but doesn't describe what happens when booking succeeds/fails, whether it's idempotent, rate limits, or confirmation details. For a booking tool with no annotations, this leaves significant behavioral gaps.
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 appropriately sized with two sentences that each serve distinct purposes: stating the core functionality and specifying prerequisites. It's front-loaded with the main action. However, the second sentence about environment variables could be more integrated with the tool's purpose.
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 7 parameters with 100% schema coverage but no annotations and no output schema, the description provides basic context about authentication but lacks information about return values, error conditions, or behavioral nuances. For a booking tool with multiple parameters, this leaves the agent with incomplete operational understanding.
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 description coverage is 100%, so the schema already documents all 7 parameters thoroughly. The description adds no additional parameter information beyond what's in the schema. According to guidelines, with high schema coverage (>80%), the baseline is 3 even with no param info in description.
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 action ('Book a dog walking session') and target resource ('on wagwalking.com'), providing a specific verb+resource combination. However, it doesn't differentiate this booking tool from the 'schedule_recurring' sibling tool, which might handle recurring bookings versus this one-time booking.
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 implies usage context by mentioning environment variable prerequisites (WAG_EMAIL and WAG_PASSWORD), but doesn't explicitly state when to use this tool versus alternatives like 'schedule_recurring' or 'search_walkers' first. It provides some guidance but lacks explicit when/when-not instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pet_reportA
Get the report card for a completed walk, including photos, walker notes, potty breaks, behavior tags, and route map. Requires WAG_EMAIL and WAG_PASSWORD.
| Name | Required | Description | Default |
|---|---|---|---|
| booking_id | Yes | The booking ID of the completed walk to get the report for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and effectively discloses key behavioral traits: it's a read operation (implied by 'Get'), requires authentication ('Requires WAG_EMAIL and WAG_PASSWORD'), and specifies the data scope. However, it doesn't mention potential rate limits, error conditions, or response format details.
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 efficiently structured in two sentences: the first clearly states purpose and content, the second specifies authentication requirements. Every element serves a purpose with no wasted words, making it easy to parse quickly.
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 single-parameter read tool with no output schema, the description provides good context: purpose, content details, and authentication requirements. It could be more complete by mentioning response format or error handling, but covers the essential aspects well given the tool's simplicity.
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 description coverage is 100%, with the single parameter 'booking_id' well-documented in the schema. The description doesn't add any parameter-specific information beyond what's in the schema, so it meets the baseline score of 3 for high schema coverage without additional value.
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 specific action ('Get the report card') and resource ('for a completed walk'), with detailed content listing ('photos, walker notes, potty breaks, behavior tags, and route map'). It distinguishes from siblings like 'get_walk_status' by focusing on post-walk reports rather than current status.
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 implies usage context by specifying 'for a completed walk' and authentication requirements, but doesn't explicitly state when to use this tool versus alternatives like 'get_walk_status' for ongoing walks or 'rate_walker' for feedback. It provides some guidance but lacks explicit comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_walk_statusB
Get the status of a current or past dog walk booking, including GPS tracking if the walk is in progress. Requires WAG_EMAIL and WAG_PASSWORD.
| Name | Required | Description | Default |
|---|---|---|---|
| booking_id | Yes | The booking ID to look up |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses authentication requirements and mentions GPS tracking behavior for in-progress walks, which adds useful context. However, it doesn't cover other behavioral aspects like error conditions, rate limits, or what happens with invalid booking IDs.
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 appropriately sized with two sentences that each serve a purpose: the first states the core functionality, the second adds authentication requirements. It's front-loaded with the main purpose, though the authentication detail could potentially be moved to annotations if available.
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 single-parameter read operation with no annotations and no output schema, the description provides adequate but incomplete context. It covers authentication and GPS tracking behavior but lacks details about return format, error handling, or how to interpret different status values. More completeness would be helpful given the absence of structured metadata.
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 description coverage is 100%, so the schema already documents the single 'booking_id' parameter. The description doesn't add any additional meaning about the parameter beyond what's in the schema (e.g., format examples, validation rules). Baseline 3 is appropriate when schema does the heavy lifting.
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 verb ('Get') and resource ('status of a current or past dog walk booking'), with specific details about GPS tracking for in-progress walks. However, it doesn't explicitly differentiate from sibling tools like 'get_pet_report' or 'view_walker_profile' which might also provide status-related information.
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 mentions authentication requirements ('Requires WAG_EMAIL and WAG_PASSWORD') but provides no guidance on when to use this tool versus alternatives like 'get_pet_report' or 'view_walker_profile'. There's no explicit when/when-not usage context or comparison to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rate_walkerA
Rate and review a walker after a completed walk on wagwalking.com. Optionally add a tip. Requires WAG_EMAIL and WAG_PASSWORD.
| Name | Required | Description | Default |
|---|---|---|---|
| booking_id | Yes | The booking ID for the completed walk | |
| rating | Yes | Star rating from 1 to 5 | |
| review | Yes | Written review of the walker and walk | |
| tip_amount | No | Optional tip amount in dollars (e.g. 5.00) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It adds value by specifying authentication requirements ('Requires WAG_EMAIL and WAG_PASSWORD') and the optional tip feature, but does not cover other important traits like rate limits, error handling, or what happens to existing reviews. It adequately describes the core mutation behavior without contradictions.
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 front-loaded with the core purpose in the first sentence, followed by essential context (optional tip, authentication) in the second. Every sentence earns its place with no wasted words, making it highly efficient and easy to parse.
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 complexity (a mutation with authentication needs), no annotations, and no output schema, the description is moderately complete. It covers the purpose, prerequisites, and key parameters but lacks details on behavioral aspects like response format, error cases, or side effects, leaving some gaps for the agent to infer.
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 description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by mentioning the tip is optional and in dollars, but does not provide additional context like format examples for 'booking_id' or review length guidelines. Baseline 3 is appropriate as the schema does the heavy lifting.
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 specific action ('Rate and review'), the target resource ('a walker'), and the context ('after a completed walk on wagwalking.com'). It distinguishes from siblings like 'search_walkers' or 'view_walker_profile' by focusing on post-walk evaluation rather than discovery or viewing.
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 provides clear context for when to use this tool ('after a completed walk'), but does not explicitly state when not to use it or name alternatives. It implies prerequisites (completed walk, booking ID) but lacks explicit exclusions or comparisons to sibling tools like 'get_walk_status' for checking walk completion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
schedule_recurringC
Set up a recurring dog walking schedule with a specific walker on wagwalking.com. Requires WAG_EMAIL and WAG_PASSWORD.
| Name | Required | Description | Default |
|---|---|---|---|
| walker_id | Yes | The walker/caregiver ID or profile slug | |
| pet_name | Yes | Name of the pet | |
| days_of_week | Yes | Days of the week to schedule walks | |
| time | Yes | Walk start time, e.g. "9:00 AM" | |
| duration_minutes | Yes | Walk duration in minutes | |
| service_type | Yes | Service type: walk, sitting, boarding, or daycare |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions authentication requirements, which is helpful, but fails to describe other critical traits: whether this is a mutation (likely yes, given 'Set up'), what happens on success/failure, if there are rate limits, or if changes are reversible. For a tool with 6 required parameters and no annotations, this leaves significant gaps.
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 efficiently structured in two sentences: the first states the purpose and resource, the second notes prerequisites. It's front-loaded with the core action and wastes no words, though it could be slightly more polished (e.g., combining sentences).
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 complexity (6 required parameters, no annotations, no output schema), the description is incomplete. It lacks behavioral details (e.g., mutation effects, error handling), usage differentiation from siblings, and any information about return values. For a scheduling tool with significant user impact, this leaves too many unknowns for the agent.
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 description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no additional parameter semantics beyond implying the context ('dog walking schedule'), which doesn't enhance understanding of individual parameters. This meets the baseline for high schema coverage but doesn't compensate with extra value.
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 action ('Set up a recurring dog walking schedule') and resource ('with a specific walker on wagwalking.com'), making the purpose immediately understandable. However, it doesn't explicitly differentiate this tool from sibling tools like 'book_walk' or 'search_walkers', which likely handle one-time bookings or discovery rather than recurring schedules.
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 mentions prerequisites ('Requires WAG_EMAIL and WAG_PASSWORD') but provides no guidance on when to use this tool versus alternatives like 'book_walk' for single walks or 'search_walkers' for finding walkers. Without explicit when/when-not instructions or named alternatives, the agent lacks clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_walkersA
Search for available dog walkers on wagwalking.com by location, date, and service type. Returns walker cards with name, rating, price, and availability.
| Name | Required | Description | Default |
|---|---|---|---|
| location | Yes | City, zip code, or full address to search near | |
| date | Yes | Date for the walk in YYYY-MM-DD format | |
| service_type | Yes | Type of pet care service | |
| duration_minutes | No | Desired walk duration in minutes (e.g. 20, 30, 60) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that this is a search operation that returns walker cards with specific fields, which is helpful. However, it doesn't mention important behavioral aspects like whether this requires authentication, rate limits, pagination, or what happens if no walkers are found.
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 perfectly concise with two sentences that each earn their place. The first sentence explains what the tool does and its main parameters, while the second describes the return format. No wasted words or redundant information.
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 search tool with no annotations and no output schema, the description provides adequate basic information about purpose and return format. However, it lacks details about authentication requirements, error conditions, pagination, or how results are sorted/filtered, which would be helpful for a search operation.
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 description coverage is 100%, so the schema already fully documents all 4 parameters. The description mentions the three main parameters (location, date, service_type) but doesn't add meaningful semantic context beyond what's in the schema. The baseline 3 is appropriate when schema does the heavy lifting.
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's purpose: searching for available dog walkers on a specific website using location, date, and service type criteria. It specifies the verb 'search' and resource 'dog walkers', but doesn't explicitly differentiate from siblings like 'view_walker_profile' or 'book_walk'.
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 implies usage context by mentioning search criteria, but doesn't provide explicit guidance on when to use this tool versus alternatives like 'view_walker_profile' for detailed information or 'book_walk' for booking. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
view_walker_profileB
View a dog walker's full profile on wagwalking.com including bio, certifications, reviews, photos, and pricing.
| Name | Required | Description | Default |
|---|---|---|---|
| walker_id | Yes | The walker/caregiver ID or profile slug |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states this is a 'view' operation, implying read-only, but doesn't disclose behavioral traits like authentication needs, rate limits, or whether it's a public API. For a tool with zero annotation coverage, this is a significant gap.
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, efficient sentence that front-loads the purpose and lists included data. It could be slightly more structured (e.g., separating core action from details), but it's appropriately sized with no wasted 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?
Given no annotations, no output schema, and a simple parameter schema, the description provides basic purpose and scope. However, it lacks details on return format (e.g., structured data vs. HTML), error handling, or dependencies, making it minimally adequate but incomplete for robust use.
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 description coverage is 100%, with the parameter 'walker_id' documented as 'The walker/caregiver ID or profile slug'. The description doesn't add meaning beyond this, such as format examples or where to find the ID. Baseline 3 is appropriate when schema does the heavy lifting.
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 action ('view') and resource ('dog walker's full profile'), specifying what information is included (bio, certifications, reviews, photos, pricing). It distinguishes from siblings like 'search_walkers' (list) and 'rate_walker' (action), though not explicitly. A 5 would require explicit sibling differentiation.
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 implies usage when needing detailed profile information, but doesn't explicitly state when to use this vs. alternatives like 'search_walkers' (for finding walkers) or 'get_pet_report' (for pet data). No exclusions or prerequisites are mentioned, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose within the dog walking domain: booking, status checking, reporting, rating, scheduling, searching, and viewing profiles. There is no overlap in functionality, making tool selection straightforward for an agent.
All tool names follow a consistent verb_noun pattern (e.g., book_walk, get_pet_report, rate_walker). The naming is uniform and predictable, using snake_case throughout without any deviations.
With 7 tools, the server is well-scoped for managing dog walking services. This count covers key operations without being excessive, allowing agents to handle common workflows like booking, monitoring, and reviewing walks effectively.
The tool set provides strong coverage for core dog walking activities, including booking, status tracking, reporting, rating, scheduling, searching, and profile viewing. A minor gap exists in not having tools for modifying or canceling bookings, but agents can likely work around this with the available tools.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Hosted MCP server connecting AI assistants to 9,000+ apps and 40,000+ actions via Zapier.
MCP server for building and testing AI agents with multi-model experimentation and insights.
Managed LinkedIn MCP server for AI agents: search, connect, message and enrich on accounts you own.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI assistants to control a web browser through natural language commands, allowing them to navigate websites and extract information via SSE transport.843MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI-powered browser automation, web scraping, and testing using Playwright across Chromium, Firefox, and WebKit. It allows users to perform actions like navigation, clicking, typing, and taking screenshots through natural language interfaces.15MIT
- FlicenseNot gradedqualityNot gradedmaintenanceAn MCP server that enables AI assistants to browse, analyze, and automate interactions with wholesale websites using Playwright and recipe-based HTTP execution. It supports tasks like automated login, product searching, and cart management through browser snapshots and network log analysis.
- FlicenseNot gradedqualityCmaintenanceMCP server for grocery-related web automation using Playwright, enabling AI assistants to interact with grocery websites.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/markswendsen-code/mcp-wag'
If you have feedback or need assistance with the MCP directory API, please join our Discord server