pet-adoption-mcp
Version:
A Model Context Protocol (MCP) server that helps users find adoptable pets through the Petfinder API
57 lines (56 loc) • 1.67 kB
TypeScript
import { AxiosInstance } from "axios";
import { Gender, Coat, Color, Location, Status, Age, Animal, AnimalType, MultipleSize, Sort } from "./types";
export interface IPetfinderClient {
searchAnimals(params: {
type: string;
location?: Location;
size?: MultipleSize;
age?: Age;
gender?: Gender;
coat?: Coat;
color?: Color;
status?: Status;
limit?: number;
good_with_children?: boolean;
good_with_dogs?: boolean;
good_with_cats?: boolean;
house_trained?: boolean;
declawed?: boolean;
special_needs?: boolean;
distance?: number;
before?: string;
after?: string;
}): Promise<Animal[]>;
}
export declare class PetfinderClient implements IPetfinderClient {
private static instance;
http: AxiosInstance;
private config;
private animalTypes;
private constructor();
static getInstance(apiKey: string, secretKey: string): PetfinderClient;
private authenticate;
searchAnimals(params: {
type: string;
location: Location;
size?: MultipleSize;
age?: Age;
gender?: Gender;
coat?: Coat;
color?: Color;
breed?: string;
status?: Status;
limit?: number;
good_with_children?: boolean;
good_with_dogs?: boolean;
good_with_cats?: boolean;
house_trained?: boolean;
declawed?: boolean;
special_needs?: boolean;
distance?: number;
sort?: Sort;
before?: string;
after?: string;
}): Promise<Animal[]>;
getAnimalTypes(): Promise<AnimalType[]>;
}