UNPKG

pocketsmith-mcp

Version:

MCP server for managing budgets via PocketSmith API

89 lines (88 loc) 3.23 kB
/** * @fileoverview Get automatic categorization rules from PocketSmith * Retrieves all automatic categorization rules for a user, which define how * transactions are automatically categorized based on payee name patterns. * Rules match against transaction payee names and automatically assign categories. */ import { z } from "zod"; import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { RequestContext } from "../../../utils/index.js"; export declare const GetCategoryRulesInputSchema: z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; accessToken: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { apiKey?: string | undefined; accessToken?: string | undefined; }, { apiKey?: string | undefined; accessToken?: string | undefined; }>; export type GetCategoryRulesInput = z.infer<typeof GetCategoryRulesInputSchema>; export declare const GetCategoryRulesResponseSchema: z.ZodObject<{ rules: z.ZodArray<z.ZodObject<{ id: z.ZodNumber; category_id: z.ZodNumber; category_title: z.ZodOptional<z.ZodString>; payee_matches: z.ZodOptional<z.ZodString>; created_at: z.ZodOptional<z.ZodString>; updated_at: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { id: number; category_id: number; created_at?: string | undefined; updated_at?: string | undefined; category_title?: string | undefined; payee_matches?: string | undefined; }, { id: number; category_id: number; created_at?: string | undefined; updated_at?: string | undefined; category_title?: string | undefined; payee_matches?: string | undefined; }>, "many">; summary: z.ZodObject<{ totalRules: z.ZodNumber; rulesWithPayeeMatching: z.ZodNumber; categoriesWithRules: z.ZodNumber; }, "strip", z.ZodTypeAny, { totalRules: number; rulesWithPayeeMatching: number; categoriesWithRules: number; }, { totalRules: number; rulesWithPayeeMatching: number; categoriesWithRules: number; }>; }, "strip", z.ZodTypeAny, { summary: { totalRules: number; rulesWithPayeeMatching: number; categoriesWithRules: number; }; rules: { id: number; category_id: number; created_at?: string | undefined; updated_at?: string | undefined; category_title?: string | undefined; payee_matches?: string | undefined; }[]; }, { summary: { totalRules: number; rulesWithPayeeMatching: number; categoriesWithRules: number; }; rules: { id: number; category_id: number; created_at?: string | undefined; updated_at?: string | undefined; category_title?: string | undefined; payee_matches?: string | undefined; }[]; }>; export type GetCategoryRulesResponse = z.infer<typeof GetCategoryRulesResponseSchema>; export declare function getCategoryRulesLogic(params: GetCategoryRulesInput, context: RequestContext): Promise<GetCategoryRulesResponse>; export declare const registerGetCategoryRulesTool: (server: McpServer) => Promise<void>;