rescuedogs-mcp-server
MCP server for discovering rescue dogs from European and UK organizations. Search, filter, and get detailed profiles of dogs available for adoption.
README
rescuedogs-mcp-server
Search by lifestyle

Get detailed profiles

MCP server for discovering rescue dogs from European and UK organizations. Search, filter, and get detailed profiles of dogs available for adoption.
Installation
npm install -g rescuedogs-mcp-server
Claude Desktop Configuration
Add to ~/.config/claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"rescuedogs": {
"command": "npx",
"args": ["-y", "rescuedogs-mcp-server"]
}
}
}
Available Tools
rescuedogs_search_dogs
Search for rescue dogs with comprehensive filtering.
"Find medium-sized dogs good for first-time owners"
"Show me golden retrievers available to adopt in the UK"
"Find low-energy dogs suitable for apartments"
Parameters:
query- Free-text searchbreed- Filter by breed namebreed_group- Filter by FCI group (Herding, Sporting, etc.)size- Tiny, Small, Medium, Large, XLargeage_category- puppy, young, adult, seniorsex- male, femaleenergy_level- low, medium, high, very_highexperience_level- first_time_ok, some_experience, experienced_onlyhome_type- apartment_ok, house_preferred, house_requiredadoptable_to_country- ISO country code (GB, IE, FR, DE)include_images- Include dog photos (default: false)
rescuedogs_get_dog_details
Get full details for a specific dog including AI-generated personality profile.
"Tell me about the dog with slug 'buddy-12345'"
"Show me details for Max"
Parameters:
slug- Dog's URL slug (required)include_image- Include photo (default: true)
rescuedogs_list_breeds
Get available breeds with counts and statistics.
"What breeds are available?"
"Show me herding breeds with at least 10 dogs"
Parameters:
breed_group- Filter by FCI groupmin_count- Minimum dogs availablelimit- Number of breeds to return
rescuedogs_get_statistics
Get overall platform statistics.
"How many rescue dogs are available?"
"Show me platform statistics"
rescuedogs_get_filter_counts
Get available filter options with counts based on current filters.
"What filter options are available if I've selected Labrador breed?"
"Show me available sizes for dogs in Spain"
rescuedogs_list_organizations
List rescue organizations with their statistics.
"Which rescue organizations are in the UK?"
"Show me all organizations"
rescuedogs_match_preferences
Find dogs matching your lifestyle preferences.
"I live in an apartment, have moderate activity, and am a first-time dog owner"
"Find dogs for an active family with a house and garden"
Parameters:
living_situation- apartment, house_small_garden, house_large_garden, ruralactivity_level- sedentary, moderate, active, very_activeexperience- first_time, some, experiencedhas_children,has_other_dogs,has_cats- booleanadoptable_to_country- ISO country code
rescuedogs_get_adoption_guide
Get information about the rescue dog adoption process.
"How does rescue dog adoption work?"
"Tell me about transport for adopting to the UK"
"What fees should I expect?"
Parameters:
topic- overview, transport, fees, requirements, timelinecountry- ISO code for country-specific info
Geographic Scope
This server covers European and UK rescue organizations only:
- United Kingdom
- Ireland
- Germany
- France
- Spain
- Italy
- Romania
- Greece
- Bulgaria
- Cyprus
- And more...
US, Canadian, and Australian rescues are not supported.
Country Codes
Use these codes for the adoptable_to_country parameter:
| Code | Country |
|---|---|
| GB | United Kingdom (UK also accepted) |
| IE | Ireland |
| DE | Germany |
| FR | France |
| ES | Spain |
| IT | Italy |
| NL | Netherlands |
| BE | Belgium |
| AT | Austria |
| RO | Romania |
| GR | Greece |
| BG | Bulgaria |
| CY | Cyprus |
Dogs can be adopted to countries where the rescue organization ships to. Use rescuedogs_list_organizations to see which countries each organization serves.
Data Source
All data comes from rescuedogs.me, aggregating listings from vetted rescue organizations.
- 1,500+ available dogs
- 12+ rescue organizations
- 370+ breeds
- 96% AI personality profile coverage
The platform is powered by the open-source rescue-dog-aggregator project, which handles web scraping, data standardization, AI-powered personality extraction, and the public API.
Docker
docker build -t rescuedogs-mcp .
docker run -i rescuedogs-mcp
Environment Variables
| Variable | Description | Default |
|---|---|---|
RESCUEDOGS_API_URL |
Base URL for the rescuedogs API | https://api.rescuedogs.me |
RESCUEDOGS_IMAGE_URL |
Base URL for the image CDN | https://images.rescuedogs.me |
Architecture
src/
├── index.ts # Entry point — server setup and stdio transport
├── constants.ts # Shared constants (API URLs, cache TTLs, display limits)
├── types.ts # TypeScript type definitions for API responses
├── schemas/
│ └── index.ts # Zod input schemas for all tools
├── services/
│ ├── api-client.ts # Axios-based API client with retry logic
│ ├── cache-service.ts # In-memory cache with TTL support
│ ├── formatters.ts # Markdown formatters for API responses
│ └── image-service.ts # Image fetching and CDN transform URLs
├── tools/
│ ├── index.ts # Tool registration barrel with logging wrapper
│ ├── search-dogs.ts # rescuedogs_search_dogs handler
│ ├── get-dog-details.ts
│ ├── list-breeds.ts
│ ├── get-statistics.ts
│ ├── get-filter-counts.ts
│ ├── list-organizations.ts
│ ├── match-preferences.ts
│ └── get-adoption-guide.ts
├── utils/
│ └── mappings.ts # Value mappings (age, sex, country, preferences)
└── data/
└── adoption-guides.ts # Static adoption guide content
Development
# Install dependencies
npm install
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Type check
npm run typecheck
# Lint
npm run lint
# Lint with auto-fix
npm run lint:fix
# Build
npm run build
# Development mode (tsx)
npm run dev
Contributing
See CONTRIBUTING.md. Issues and PRs welcome!
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.