@ironclads/namecheap-mcp
Version:
MCP server for Namecheap API integration - domain management, DNS, and domain suggestions
29 lines (28 loc) • 1.69 kB
TypeScript
import { NamecheapConfig, DomainCheckResult, DomainInfo, DomainSuggestion, DomainSuggestionOptions, DomainListResponse, DomainListOptions, DomainContacts, TldInfo, DomainLockStatus, UserBalances, ProductPricing, PricingOptions } from './types.js';
export declare class NamecheapClient {
private client;
private config;
private parser;
constructor(config: NamecheapConfig);
private makeRequest;
checkDomain(domain: string): Promise<DomainCheckResult>;
checkDomainsBulk(domains: string[]): Promise<DomainCheckResult[]>;
getDomainInfo(domain: string): Promise<DomainInfo>;
registerDomain(domain: string, years?: number): Promise<boolean>;
renewDomain(domain: string, years?: number): Promise<boolean>;
getNameservers(domain: string): Promise<string[]>;
setNameservers(domain: string, nameservers: string[]): Promise<boolean>;
listDomains(options?: Partial<DomainListOptions>): Promise<DomainListResponse>;
suggestDomains(options: DomainSuggestionOptions): Promise<DomainSuggestion[]>;
private simulateAvailability;
private getEstimatedPrice;
getContacts(domain: string): Promise<DomainContacts>;
setContacts(domain: string, contacts: DomainContacts): Promise<boolean>;
getTldList(): Promise<TldInfo[]>;
reactivate(domain: string): Promise<boolean>;
getRegistrarLock(domain: string): Promise<DomainLockStatus>;
setRegistrarLock(domain: string, lockStatus: boolean): Promise<boolean>;
getBalances(): Promise<UserBalances>;
getPricing(options: PricingOptions): Promise<ProductPricing[]>;
getDomainPricing(tlds: string[], actionType?: 'REGISTER' | 'RENEW'): Promise<Map<string, ProductPricing[]>>;
}