UNPKG

pocketsmith-mcp

Version:

MCP server for managing budgets via PocketSmith API

144 lines (143 loc) 4.17 kB
/** * @fileoverview Update an existing transaction in PocketSmith */ import { z } from "zod"; import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { RequestContext } from "../../../utils/index.js"; export declare const UpdateTransactionInputSchema: z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; accessToken: z.ZodOptional<z.ZodString>; transactionId: z.ZodNumber; payee: z.ZodOptional<z.ZodString>; amount: z.ZodOptional<z.ZodNumber>; date: z.ZodOptional<z.ZodString>; categoryId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>; note: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>; }, "strip", z.ZodTypeAny, { transactionId: number; apiKey?: string | undefined; accessToken?: string | undefined; categoryId?: number | null | undefined; date?: string | undefined; payee?: string | undefined; amount?: number | undefined; note?: string | null | undefined; }, { transactionId: number; apiKey?: string | undefined; accessToken?: string | undefined; categoryId?: number | null | undefined; date?: string | undefined; payee?: string | undefined; amount?: number | undefined; note?: string | null | undefined; }>; export type UpdateTransactionInput = z.infer<typeof UpdateTransactionInputSchema>; export declare const UpdateTransactionResponseSchema: z.ZodObject<{ transaction: z.ZodObject<{ id: z.ZodNumber; payee: z.ZodString; amount: z.ZodNumber; date: z.ZodString; note: z.ZodNullable<z.ZodString>; category: z.ZodOptional<z.ZodObject<{ id: z.ZodNumber; title: z.ZodString; }, "strip", z.ZodTypeAny, { title: string; id: number; }, { title: string; id: number; }>>; account: z.ZodObject<{ id: z.ZodNumber; name: z.ZodString; }, "strip", z.ZodTypeAny, { name: string; id: number; }, { name: string; id: number; }>; currency_code: z.ZodString; type: z.ZodString; }, "strip", z.ZodTypeAny, { type: string; id: number; date: string; currency_code: string; payee: string; amount: number; note: string | null; account: { name: string; id: number; }; category?: { title: string; id: number; } | undefined; }, { type: string; id: number; date: string; currency_code: string; payee: string; amount: number; note: string | null; account: { name: string; id: number; }; category?: { title: string; id: number; } | undefined; }>; changes: z.ZodArray<z.ZodString, "many">; success: z.ZodBoolean; }, "strip", z.ZodTypeAny, { transaction: { type: string; id: number; date: string; currency_code: string; payee: string; amount: number; note: string | null; account: { name: string; id: number; }; category?: { title: string; id: number; } | undefined; }; success: boolean; changes: string[]; }, { transaction: { type: string; id: number; date: string; currency_code: string; payee: string; amount: number; note: string | null; account: { name: string; id: number; }; category?: { title: string; id: number; } | undefined; }; success: boolean; changes: string[]; }>; export type UpdateTransactionResponse = z.infer<typeof UpdateTransactionResponseSchema>; export declare function updateTransactionLogic(params: UpdateTransactionInput, context: RequestContext): Promise<UpdateTransactionResponse>; export declare const registerUpdateTransactionTool: (server: McpServer) => Promise<void>;