pocketsmith-mcp
Version:
MCP server for managing budgets via PocketSmith API
92 lines (91 loc) • 3.17 kB
TypeScript
/**
* @fileoverview Update an existing category in PocketSmith
*/
import { z } from "zod";
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { RequestContext } from "../../../utils/index.js";
export declare const UpdateCategoryInputSchema: z.ZodObject<{
apiKey: z.ZodOptional<z.ZodString>;
accessToken: z.ZodOptional<z.ZodString>;
categoryId: z.ZodNumber;
title: z.ZodOptional<z.ZodString>;
colour: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
parentId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
isBill: z.ZodOptional<z.ZodBoolean>;
isTransfer: z.ZodOptional<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
categoryId: number;
apiKey?: string | undefined;
title?: string | undefined;
accessToken?: string | undefined;
colour?: string | null | undefined;
parentId?: number | null | undefined;
isBill?: boolean | undefined;
isTransfer?: boolean | undefined;
}, {
categoryId: number;
apiKey?: string | undefined;
title?: string | undefined;
accessToken?: string | undefined;
colour?: string | null | undefined;
parentId?: number | null | undefined;
isBill?: boolean | undefined;
isTransfer?: boolean | undefined;
}>;
export type UpdateCategoryInput = z.infer<typeof UpdateCategoryInputSchema>;
export declare const UpdateCategoryResponseSchema: z.ZodObject<{
category: z.ZodObject<{
id: z.ZodNumber;
title: z.ZodString;
colour: z.ZodUnion<[z.ZodString, z.ZodNull]>;
is_bill: z.ZodBoolean;
is_transfer: z.ZodBoolean;
parent_id: z.ZodUnion<[z.ZodNumber, z.ZodNull]>;
updated_at: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
}, "strip", z.ZodTypeAny, {
title: string;
id: number;
colour: string | null;
is_bill: boolean;
is_transfer: boolean;
parent_id: number | null;
updated_at?: string | null | undefined;
}, {
title: string;
id: number;
colour: string | null;
is_bill: boolean;
is_transfer: boolean;
parent_id: number | null;
updated_at?: string | null | undefined;
}>;
changes: z.ZodArray<z.ZodString, "many">;
success: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
category: {
title: string;
id: number;
colour: string | null;
is_bill: boolean;
is_transfer: boolean;
parent_id: number | null;
updated_at?: string | null | undefined;
};
success: boolean;
changes: string[];
}, {
category: {
title: string;
id: number;
colour: string | null;
is_bill: boolean;
is_transfer: boolean;
parent_id: number | null;
updated_at?: string | null | undefined;
};
success: boolean;
changes: string[];
}>;
export type UpdateCategoryResponse = z.infer<typeof UpdateCategoryResponseSchema>;
export declare function updateCategoryLogic(params: UpdateCategoryInput, context: RequestContext): Promise<UpdateCategoryResponse>;
export declare const registerUpdateCategoryTool: (server: McpServer) => Promise<void>;