/** * @fileoverview Tool for fetching complete metadata for a single Project Gutenberg book * by its numeric ID, including the full formats map needed before fetching text. * @module mcp-server/tools/definitions/gutenberg-get-book */ import { z } from '@cyanheads/mcp-ts-core'; import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors'; export declare const gutenbergGetBook: import("@cyanheads/mcp-ts-core").ToolDefinition, z.ZodObject<{ id: z.ZodNumber; title: z.ZodString; authors: z.ZodArray; death_year: z.ZodNullable; }, z.core.$strip>>; translators: z.ZodArray; death_year: z.ZodNullable; }, z.core.$strip>>; editors: z.ZodArray; death_year: z.ZodNullable; }, z.core.$strip>>; subjects: z.ZodArray; bookshelves: z.ZodArray; languages: z.ZodArray; copyright: z.ZodNullable; media_type: z.ZodString; download_count: z.ZodNumber; summary: z.ZodNullable; summaries: z.ZodArray; formats: z.ZodRecord; has_plain_text: z.ZodBoolean; }, z.core.$strip>, readonly [{ readonly reason: "not_found"; readonly code: JsonRpcErrorCode.NotFound; readonly when: "No book exists with the given ID."; readonly recovery: "Verify the ID with gutenberg_search_books. Gutenberg IDs are positive integers; this ID does not match any entry in the catalog."; }, { readonly reason: "catalog_unavailable"; readonly code: JsonRpcErrorCode.ServiceUnavailable; readonly when: "The Project Gutenberg catalog did not answer within the time this server allows for one lookup."; readonly recovery: "The catalog is unreachable or too slow right now. Retry in a few seconds; if it keeps failing, the catalog service itself is degraded and another ID will fail the same way."; readonly retryable: true; readonly thrownBy: "service"; }], undefined>; //# sourceMappingURL=gutenberg-get-book.tool.d.ts.map