@ironclads/namecheap-mcp
Version:
MCP server for Namecheap API integration - domain management, DNS, and domain suggestions
692 lines (691 loc) • 21.4 kB
TypeScript
import { z } from 'zod';
export declare const NamecheapConfigSchema: z.ZodObject<{
apiUser: z.ZodString;
apiKey: z.ZodString;
username: z.ZodString;
clientIp: z.ZodOptional<z.ZodString>;
sandbox: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
apiUser: string;
apiKey: string;
username: string;
sandbox: boolean;
clientIp?: string | undefined;
}, {
apiUser: string;
apiKey: string;
username: string;
clientIp?: string | undefined;
sandbox?: boolean | undefined;
}>;
export type NamecheapConfig = z.infer<typeof NamecheapConfigSchema>;
export declare const DomainCheckResultSchema: z.ZodObject<{
domain: z.ZodString;
available: z.ZodBoolean;
premium: z.ZodOptional<z.ZodBoolean>;
price: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
domain: string;
available: boolean;
premium?: boolean | undefined;
price?: string | undefined;
}, {
domain: string;
available: boolean;
premium?: boolean | undefined;
price?: string | undefined;
}>;
export type DomainCheckResult = z.infer<typeof DomainCheckResultSchema>;
export declare const DomainInfoSchema: z.ZodObject<{
domain: z.ZodString;
owner: z.ZodString;
registrar: z.ZodString;
created: z.ZodString;
expires: z.ZodString;
nameservers: z.ZodArray<z.ZodString, "many">;
}, "strip", z.ZodTypeAny, {
domain: string;
owner: string;
registrar: string;
created: string;
expires: string;
nameservers: string[];
}, {
domain: string;
owner: string;
registrar: string;
created: string;
expires: string;
nameservers: string[];
}>;
export type DomainInfo = z.infer<typeof DomainInfoSchema>;
export declare const DomainSuggestionSchema: z.ZodObject<{
domain: z.ZodString;
available: z.ZodBoolean;
premium: z.ZodOptional<z.ZodBoolean>;
price: z.ZodOptional<z.ZodString>;
suggestion_type: z.ZodEnum<["exact", "prefix", "suffix", "alternate", "related"]>;
score: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
domain: string;
available: boolean;
suggestion_type: "exact" | "prefix" | "suffix" | "alternate" | "related";
premium?: boolean | undefined;
price?: string | undefined;
score?: number | undefined;
}, {
domain: string;
available: boolean;
suggestion_type: "exact" | "prefix" | "suffix" | "alternate" | "related";
premium?: boolean | undefined;
price?: string | undefined;
score?: number | undefined;
}>;
export type DomainSuggestion = z.infer<typeof DomainSuggestionSchema>;
export declare const DomainSuggestionOptionsSchema: z.ZodObject<{
keyword: z.ZodString;
tlds: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
maxSuggestions: z.ZodDefault<z.ZodNumber>;
includeHyphens: z.ZodDefault<z.ZodBoolean>;
includeNumbers: z.ZodDefault<z.ZodBoolean>;
minLength: z.ZodDefault<z.ZodNumber>;
maxLength: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
includeHyphens: boolean;
includeNumbers: boolean;
minLength: number;
maxLength: number;
keyword: string;
tlds: string[];
maxSuggestions: number;
}, {
keyword: string;
includeHyphens?: boolean | undefined;
includeNumbers?: boolean | undefined;
minLength?: number | undefined;
maxLength?: number | undefined;
tlds?: string[] | undefined;
maxSuggestions?: number | undefined;
}>;
export type DomainSuggestionOptions = z.infer<typeof DomainSuggestionOptionsSchema>;
export declare const DomainListItemSchema: z.ZodObject<{
domain: z.ZodString;
id: z.ZodString;
user: z.ZodString;
created: z.ZodString;
expires: z.ZodString;
isExpired: z.ZodBoolean;
isLocked: z.ZodBoolean;
autoRenew: z.ZodBoolean;
whoisGuard: z.ZodString;
}, "strip", z.ZodTypeAny, {
domain: string;
created: string;
expires: string;
id: string;
user: string;
isExpired: boolean;
isLocked: boolean;
autoRenew: boolean;
whoisGuard: string;
}, {
domain: string;
created: string;
expires: string;
id: string;
user: string;
isExpired: boolean;
isLocked: boolean;
autoRenew: boolean;
whoisGuard: string;
}>;
export type DomainListItem = z.infer<typeof DomainListItemSchema>;
export declare const DomainListResponseSchema: z.ZodObject<{
domains: z.ZodArray<z.ZodObject<{
domain: z.ZodString;
id: z.ZodString;
user: z.ZodString;
created: z.ZodString;
expires: z.ZodString;
isExpired: z.ZodBoolean;
isLocked: z.ZodBoolean;
autoRenew: z.ZodBoolean;
whoisGuard: z.ZodString;
}, "strip", z.ZodTypeAny, {
domain: string;
created: string;
expires: string;
id: string;
user: string;
isExpired: boolean;
isLocked: boolean;
autoRenew: boolean;
whoisGuard: string;
}, {
domain: string;
created: string;
expires: string;
id: string;
user: string;
isExpired: boolean;
isLocked: boolean;
autoRenew: boolean;
whoisGuard: string;
}>, "many">;
paging: z.ZodObject<{
totalItems: z.ZodNumber;
currentPage: z.ZodNumber;
pageSize: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
totalItems: number;
currentPage: number;
pageSize: number;
}, {
totalItems: number;
currentPage: number;
pageSize: number;
}>;
}, "strip", z.ZodTypeAny, {
domains: {
domain: string;
created: string;
expires: string;
id: string;
user: string;
isExpired: boolean;
isLocked: boolean;
autoRenew: boolean;
whoisGuard: string;
}[];
paging: {
totalItems: number;
currentPage: number;
pageSize: number;
};
}, {
domains: {
domain: string;
created: string;
expires: string;
id: string;
user: string;
isExpired: boolean;
isLocked: boolean;
autoRenew: boolean;
whoisGuard: string;
}[];
paging: {
totalItems: number;
currentPage: number;
pageSize: number;
};
}>;
export type DomainListResponse = z.infer<typeof DomainListResponseSchema>;
export declare const DomainListOptionsSchema: z.ZodObject<{
listType: z.ZodDefault<z.ZodOptional<z.ZodString>>;
page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
pageSize: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
sortBy: z.ZodOptional<z.ZodEnum<["NAME", "NAME_DESC", "EXPIREDATE", "EXPIREDATE_DESC", "CREATEDATE", "CREATEDATE_DESC"]>>;
searchTerm: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
pageSize: number;
listType: string;
page: number;
sortBy?: "NAME" | "NAME_DESC" | "EXPIREDATE" | "EXPIREDATE_DESC" | "CREATEDATE" | "CREATEDATE_DESC" | undefined;
searchTerm?: string | undefined;
}, {
pageSize?: number | undefined;
listType?: string | undefined;
page?: number | undefined;
sortBy?: "NAME" | "NAME_DESC" | "EXPIREDATE" | "EXPIREDATE_DESC" | "CREATEDATE" | "CREATEDATE_DESC" | undefined;
searchTerm?: string | undefined;
}>;
export type DomainListOptions = z.infer<typeof DomainListOptionsSchema>;
export declare const NamecheapResponseSchema: z.ZodObject<{
Status: z.ZodString;
Errors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
CommandResponse: z.ZodAny;
}, "strip", z.ZodTypeAny, {
Status: string;
Errors?: string[] | undefined;
CommandResponse?: any;
}, {
Status: string;
Errors?: string[] | undefined;
CommandResponse?: any;
}>;
export type NamecheapResponse = z.infer<typeof NamecheapResponseSchema>;
export declare const DomainContactSchema: z.ZodObject<{
OrganizationName: z.ZodOptional<z.ZodString>;
FirstName: z.ZodString;
LastName: z.ZodString;
Address1: z.ZodString;
Address2: z.ZodOptional<z.ZodString>;
City: z.ZodString;
StateProvince: z.ZodString;
PostalCode: z.ZodString;
Country: z.ZodString;
Phone: z.ZodString;
EmailAddress: z.ZodString;
}, "strip", z.ZodTypeAny, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}>;
export type DomainContact = z.infer<typeof DomainContactSchema>;
export declare const DomainContactsSchema: z.ZodObject<{
registrant: z.ZodObject<{
OrganizationName: z.ZodOptional<z.ZodString>;
FirstName: z.ZodString;
LastName: z.ZodString;
Address1: z.ZodString;
Address2: z.ZodOptional<z.ZodString>;
City: z.ZodString;
StateProvince: z.ZodString;
PostalCode: z.ZodString;
Country: z.ZodString;
Phone: z.ZodString;
EmailAddress: z.ZodString;
}, "strip", z.ZodTypeAny, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}>;
tech: z.ZodObject<{
OrganizationName: z.ZodOptional<z.ZodString>;
FirstName: z.ZodString;
LastName: z.ZodString;
Address1: z.ZodString;
Address2: z.ZodOptional<z.ZodString>;
City: z.ZodString;
StateProvince: z.ZodString;
PostalCode: z.ZodString;
Country: z.ZodString;
Phone: z.ZodString;
EmailAddress: z.ZodString;
}, "strip", z.ZodTypeAny, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}>;
admin: z.ZodObject<{
OrganizationName: z.ZodOptional<z.ZodString>;
FirstName: z.ZodString;
LastName: z.ZodString;
Address1: z.ZodString;
Address2: z.ZodOptional<z.ZodString>;
City: z.ZodString;
StateProvince: z.ZodString;
PostalCode: z.ZodString;
Country: z.ZodString;
Phone: z.ZodString;
EmailAddress: z.ZodString;
}, "strip", z.ZodTypeAny, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}>;
auxBilling: z.ZodObject<{
OrganizationName: z.ZodOptional<z.ZodString>;
FirstName: z.ZodString;
LastName: z.ZodString;
Address1: z.ZodString;
Address2: z.ZodOptional<z.ZodString>;
City: z.ZodString;
StateProvince: z.ZodString;
PostalCode: z.ZodString;
Country: z.ZodString;
Phone: z.ZodString;
EmailAddress: z.ZodString;
}, "strip", z.ZodTypeAny, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}, {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
}>;
}, "strip", z.ZodTypeAny, {
tech: {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
};
registrant: {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
};
admin: {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
};
auxBilling: {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
};
}, {
tech: {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
};
registrant: {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
};
admin: {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
};
auxBilling: {
FirstName: string;
LastName: string;
Address1: string;
City: string;
StateProvince: string;
PostalCode: string;
Country: string;
Phone: string;
EmailAddress: string;
OrganizationName?: string | undefined;
Address2?: string | undefined;
};
}>;
export type DomainContacts = z.infer<typeof DomainContactsSchema>;
export declare const TldInfoSchema: z.ZodObject<{
name: z.ZodString;
nonRealTime: z.ZodOptional<z.ZodBoolean>;
minRegisterYears: z.ZodOptional<z.ZodNumber>;
maxRegisterYears: z.ZodOptional<z.ZodNumber>;
minRenewYears: z.ZodOptional<z.ZodNumber>;
maxRenewYears: z.ZodOptional<z.ZodNumber>;
minTransferYears: z.ZodOptional<z.ZodNumber>;
maxTransferYears: z.ZodOptional<z.ZodNumber>;
isApiRegisterable: z.ZodOptional<z.ZodBoolean>;
isApiRenewable: z.ZodOptional<z.ZodBoolean>;
isApiTransferrable: z.ZodOptional<z.ZodBoolean>;
isEppRequired: z.ZodOptional<z.ZodBoolean>;
isDisableModContact: z.ZodOptional<z.ZodBoolean>;
isDisableWGAllot: z.ZodOptional<z.ZodBoolean>;
isIncludeInExtendedSearchOnly: z.ZodOptional<z.ZodBoolean>;
categories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
name: string;
nonRealTime?: boolean | undefined;
minRegisterYears?: number | undefined;
maxRegisterYears?: number | undefined;
minRenewYears?: number | undefined;
maxRenewYears?: number | undefined;
minTransferYears?: number | undefined;
maxTransferYears?: number | undefined;
isApiRegisterable?: boolean | undefined;
isApiRenewable?: boolean | undefined;
isApiTransferrable?: boolean | undefined;
isEppRequired?: boolean | undefined;
isDisableModContact?: boolean | undefined;
isDisableWGAllot?: boolean | undefined;
isIncludeInExtendedSearchOnly?: boolean | undefined;
categories?: string[] | undefined;
}, {
name: string;
nonRealTime?: boolean | undefined;
minRegisterYears?: number | undefined;
maxRegisterYears?: number | undefined;
minRenewYears?: number | undefined;
maxRenewYears?: number | undefined;
minTransferYears?: number | undefined;
maxTransferYears?: number | undefined;
isApiRegisterable?: boolean | undefined;
isApiRenewable?: boolean | undefined;
isApiTransferrable?: boolean | undefined;
isEppRequired?: boolean | undefined;
isDisableModContact?: boolean | undefined;
isDisableWGAllot?: boolean | undefined;
isIncludeInExtendedSearchOnly?: boolean | undefined;
categories?: string[] | undefined;
}>;
export type TldInfo = z.infer<typeof TldInfoSchema>;
export declare const DomainLockStatusSchema: z.ZodObject<{
domain: z.ZodString;
registrarLock: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
domain: string;
registrarLock: boolean;
}, {
domain: string;
registrarLock: boolean;
}>;
export type DomainLockStatus = z.infer<typeof DomainLockStatusSchema>;
export declare const UserBalancesSchema: z.ZodObject<{
availableBalance: z.ZodNumber;
accountBalance: z.ZodNumber;
earnedAmount: z.ZodNumber;
withdrawableAmount: z.ZodNumber;
fundsRequiredForAutoRenew: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
availableBalance: number;
accountBalance: number;
earnedAmount: number;
withdrawableAmount: number;
fundsRequiredForAutoRenew: number;
}, {
availableBalance: number;
accountBalance: number;
earnedAmount: number;
withdrawableAmount: number;
fundsRequiredForAutoRenew: number;
}>;
export type UserBalances = z.infer<typeof UserBalancesSchema>;
export declare const ProductPricingSchema: z.ZodObject<{
productType: z.ZodString;
productCategory: z.ZodString;
product: z.ZodString;
duration: z.ZodNumber;
durationType: z.ZodString;
price: z.ZodNumber;
regularPrice: z.ZodNumber;
yourPrice: z.ZodNumber;
promotionPrice: z.ZodOptional<z.ZodNumber>;
currency: z.ZodString;
}, "strip", z.ZodTypeAny, {
price: number;
productType: string;
productCategory: string;
product: string;
duration: number;
durationType: string;
regularPrice: number;
yourPrice: number;
currency: string;
promotionPrice?: number | undefined;
}, {
price: number;
productType: string;
productCategory: string;
product: string;
duration: number;
durationType: string;
regularPrice: number;
yourPrice: number;
currency: string;
promotionPrice?: number | undefined;
}>;
export type ProductPricing = z.infer<typeof ProductPricingSchema>;
export declare const PricingOptionsSchema: z.ZodObject<{
productType: z.ZodEnum<["DOMAIN", "SSL", "HOSTING", "WHOISGUARD"]>;
productCategory: z.ZodOptional<z.ZodString>;
promotionCode: z.ZodOptional<z.ZodString>;
actionType: z.ZodOptional<z.ZodEnum<["REGISTER", "RENEW", "REACTIVATE", "TRANSFER"]>>;
productName: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
productType: "DOMAIN" | "SSL" | "HOSTING" | "WHOISGUARD";
productCategory?: string | undefined;
promotionCode?: string | undefined;
actionType?: "REGISTER" | "RENEW" | "REACTIVATE" | "TRANSFER" | undefined;
productName?: string | undefined;
}, {
productType: "DOMAIN" | "SSL" | "HOSTING" | "WHOISGUARD";
productCategory?: string | undefined;
promotionCode?: string | undefined;
actionType?: "REGISTER" | "RENEW" | "REACTIVATE" | "TRANSFER" | undefined;
productName?: string | undefined;
}>;
export type PricingOptions = z.infer<typeof PricingOptionsSchema>;