mcp-openalex
Version:
MCP server for accessing scholarly articles and research data from the OpenAlex database
69 lines • 2.31 kB
TypeScript
import { z } from 'zod';
export interface OpenAlexOptions {
mailto?: string;
}
export declare class OpenAlexError extends Error {
statusCode?: number | undefined;
response?: unknown | undefined;
constructor(message: string, statusCode?: number | undefined, response?: unknown | undefined);
}
export declare function fetchFromOpenAlex<T>(endpoint: string, params?: Record<string, string | number | boolean>, options?: OpenAlexOptions): Promise<T>;
export declare const PaginationSchema: z.ZodObject<{
count: z.ZodNumber;
db_response_time_ms: z.ZodNumber;
page: z.ZodOptional<z.ZodNumber>;
per_page: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
count: number;
db_response_time_ms: number;
page?: number | undefined;
per_page?: number | undefined;
}, {
count: number;
db_response_time_ms: number;
page?: number | undefined;
per_page?: number | undefined;
}>;
export declare const MetaSchema: z.ZodObject<{
count: z.ZodNumber;
db_response_time_ms: z.ZodNumber;
page: z.ZodNullable<z.ZodNumber>;
per_page: z.ZodNumber;
groups_count: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
count: number;
db_response_time_ms: number;
page: number | null;
per_page: number;
groups_count?: number | null | undefined;
}, {
count: number;
db_response_time_ms: number;
page: number | null;
per_page: number;
groups_count?: number | null | undefined;
}>;
export declare const FilterSchema: z.ZodObject<{
search: z.ZodOptional<z.ZodString>;
filter: z.ZodOptional<z.ZodString>;
sort: z.ZodOptional<z.ZodString>;
page: z.ZodOptional<z.ZodNumber>;
per_page: z.ZodOptional<z.ZodNumber>;
mailto: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
mailto?: string | undefined;
page?: number | undefined;
per_page?: number | undefined;
sort?: string | undefined;
filter?: string | undefined;
search?: string | undefined;
}, {
mailto?: string | undefined;
page?: number | undefined;
per_page?: number | undefined;
sort?: string | undefined;
filter?: string | undefined;
search?: string | undefined;
}>;
export type Filter = z.infer<typeof FilterSchema>;
//# sourceMappingURL=openalex-client.d.ts.map