@goodsamsoftware/freshbooks-mcp 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/dist/auth/confirmation-store.d.ts +94 -0
  2. package/dist/auth/confirmation-store.d.ts.map +1 -0
  3. package/dist/auth/confirmation-store.js +126 -0
  4. package/dist/auth/confirmation-store.js.map +1 -0
  5. package/dist/auth/state-store.d.ts +96 -0
  6. package/dist/auth/state-store.d.ts.map +1 -0
  7. package/dist/auth/state-store.js +122 -0
  8. package/dist/auth/state-store.js.map +1 -0
  9. package/dist/auth/types.d.ts +1 -1
  10. package/dist/auth/types.d.ts.map +1 -1
  11. package/dist/auth/types.js.map +1 -1
  12. package/dist/config/environment.d.ts +25 -0
  13. package/dist/config/environment.d.ts.map +1 -0
  14. package/dist/config/environment.js +39 -0
  15. package/dist/config/environment.js.map +1 -0
  16. package/dist/errors/error-handler.d.ts.map +1 -1
  17. package/dist/errors/error-handler.js +18 -5
  18. package/dist/errors/error-handler.js.map +1 -1
  19. package/dist/errors/response-formatter.d.ts +3 -2
  20. package/dist/errors/response-formatter.d.ts.map +1 -1
  21. package/dist/errors/response-formatter.js +19 -2
  22. package/dist/errors/response-formatter.js.map +1 -1
  23. package/dist/server.js +85 -11
  24. package/dist/server.js.map +1 -1
  25. package/dist/tools/base-tool.d.ts +2 -2
  26. package/dist/tools/bill/bill-create.d.ts +4 -4
  27. package/dist/tools/bill/bill-delete.d.ts +6 -0
  28. package/dist/tools/bill/bill-delete.d.ts.map +1 -1
  29. package/dist/tools/bill/bill-list.d.ts +12 -12
  30. package/dist/tools/bill/bill-single.d.ts +4 -4
  31. package/dist/tools/bill/schemas.d.ts +28 -22
  32. package/dist/tools/bill/schemas.d.ts.map +1 -1
  33. package/dist/tools/bill/schemas.js +2 -0
  34. package/dist/tools/bill/schemas.js.map +1 -1
  35. package/dist/tools/bill-payment/billpayment-create.d.ts +4 -4
  36. package/dist/tools/bill-payment/billpayment-delete.d.ts +6 -0
  37. package/dist/tools/bill-payment/billpayment-delete.d.ts.map +1 -1
  38. package/dist/tools/bill-payment/billpayment-list.d.ts +12 -12
  39. package/dist/tools/bill-payment/billpayment-single.d.ts +4 -4
  40. package/dist/tools/bill-payment/billpayment-update.d.ts +4 -4
  41. package/dist/tools/bill-payment/schemas.d.ts +28 -22
  42. package/dist/tools/bill-payment/schemas.d.ts.map +1 -1
  43. package/dist/tools/bill-payment/schemas.js +2 -0
  44. package/dist/tools/bill-payment/schemas.js.map +1 -1
  45. package/dist/tools/bill-vendor/billvendor-create.d.ts +6 -6
  46. package/dist/tools/bill-vendor/billvendor-delete.d.ts +6 -0
  47. package/dist/tools/bill-vendor/billvendor-delete.d.ts.map +1 -1
  48. package/dist/tools/bill-vendor/billvendor-list.d.ts +14 -14
  49. package/dist/tools/bill-vendor/billvendor-single.d.ts +4 -4
  50. package/dist/tools/bill-vendor/billvendor-update.d.ts +6 -6
  51. package/dist/tools/bill-vendor/schemas.d.ts +34 -28
  52. package/dist/tools/bill-vendor/schemas.d.ts.map +1 -1
  53. package/dist/tools/bill-vendor/schemas.js +2 -0
  54. package/dist/tools/bill-vendor/schemas.js.map +1 -1
  55. package/dist/tools/callback/callback-create.d.ts +6 -6
  56. package/dist/tools/callback/callback-delete.d.ts +6 -0
  57. package/dist/tools/callback/callback-delete.d.ts.map +1 -1
  58. package/dist/tools/callback/callback-list.d.ts +12 -12
  59. package/dist/tools/callback/callback-resend-verification.d.ts +4 -4
  60. package/dist/tools/callback/callback-single.d.ts +4 -4
  61. package/dist/tools/callback/callback-update.d.ts +6 -6
  62. package/dist/tools/callback/schemas.d.ts +32 -26
  63. package/dist/tools/callback/schemas.d.ts.map +1 -1
  64. package/dist/tools/callback/schemas.js +2 -0
  65. package/dist/tools/callback/schemas.js.map +1 -1
  66. package/dist/tools/client/client-create.d.ts +2 -2
  67. package/dist/tools/client/client-delete.d.ts +8 -2
  68. package/dist/tools/client/client-delete.d.ts.map +1 -1
  69. package/dist/tools/client/client-list.d.ts +9 -9
  70. package/dist/tools/client/client-update.d.ts +2 -2
  71. package/dist/tools/client/schemas.d.ts +26 -20
  72. package/dist/tools/client/schemas.d.ts.map +1 -1
  73. package/dist/tools/client/schemas.js +2 -0
  74. package/dist/tools/client/schemas.js.map +1 -1
  75. package/dist/tools/credit-note/creditnote-create.d.ts +10 -10
  76. package/dist/tools/credit-note/creditnote-delete.d.ts +6 -0
  77. package/dist/tools/credit-note/creditnote-delete.d.ts.map +1 -1
  78. package/dist/tools/credit-note/creditnote-list.d.ts +14 -14
  79. package/dist/tools/credit-note/creditnote-single.d.ts +6 -6
  80. package/dist/tools/credit-note/creditnote-update.d.ts +10 -10
  81. package/dist/tools/credit-note/schemas.d.ts +42 -36
  82. package/dist/tools/credit-note/schemas.d.ts.map +1 -1
  83. package/dist/tools/credit-note/schemas.js +2 -0
  84. package/dist/tools/credit-note/schemas.js.map +1 -1
  85. package/dist/tools/expense/expense-create.d.ts +2 -2
  86. package/dist/tools/expense/expense-delete.d.ts +6 -0
  87. package/dist/tools/expense/expense-delete.d.ts.map +1 -1
  88. package/dist/tools/expense/expense-list.d.ts +8 -8
  89. package/dist/tools/expense/expense-single.d.ts +2 -2
  90. package/dist/tools/expense/expense-update.d.ts +2 -2
  91. package/dist/tools/expense/expense-update.d.ts.map +1 -1
  92. package/dist/tools/expense/expense-update.js +88 -63
  93. package/dist/tools/expense/expense-update.js.map +1 -1
  94. package/dist/tools/expense/schemas.d.ts +18 -12
  95. package/dist/tools/expense/schemas.d.ts.map +1 -1
  96. package/dist/tools/expense/schemas.js +2 -0
  97. package/dist/tools/expense/schemas.js.map +1 -1
  98. package/dist/tools/expense-category/expensecategory-list.d.ts +4 -4
  99. package/dist/tools/expense-category/schemas.d.ts +4 -4
  100. package/dist/tools/invoice/invoice-create.d.ts +10 -10
  101. package/dist/tools/invoice/invoice-delete.d.ts +6 -0
  102. package/dist/tools/invoice/invoice-delete.d.ts.map +1 -1
  103. package/dist/tools/invoice/invoice-list.d.ts +24 -24
  104. package/dist/tools/invoice/invoice-single.d.ts +10 -10
  105. package/dist/tools/invoice/invoice-update.d.ts +12 -12
  106. package/dist/tools/invoice/schemas.d.ts +56 -50
  107. package/dist/tools/invoice/schemas.d.ts.map +1 -1
  108. package/dist/tools/invoice/schemas.js +2 -0
  109. package/dist/tools/invoice/schemas.js.map +1 -1
  110. package/dist/tools/item/item-create.d.ts +8 -8
  111. package/dist/tools/item/item-list.d.ts +18 -18
  112. package/dist/tools/item/item-single.d.ts +6 -6
  113. package/dist/tools/item/item-update.d.ts +10 -10
  114. package/dist/tools/item/schemas.d.ts +38 -38
  115. package/dist/tools/journal-entry/journalentry-create.d.ts +4 -4
  116. package/dist/tools/journal-entry/schemas.d.ts +8 -8
  117. package/dist/tools/journal-entry-account/journalentryaccount-list.d.ts +14 -14
  118. package/dist/tools/journal-entry-account/schemas.d.ts +24 -24
  119. package/dist/tools/metadata.d.ts +13 -1
  120. package/dist/tools/metadata.d.ts.map +1 -1
  121. package/dist/tools/metadata.js +68 -1
  122. package/dist/tools/metadata.js.map +1 -1
  123. package/dist/tools/other-income/otherincome-create.d.ts +10 -10
  124. package/dist/tools/other-income/otherincome-delete.d.ts +6 -0
  125. package/dist/tools/other-income/otherincome-delete.d.ts.map +1 -1
  126. package/dist/tools/other-income/otherincome-list.d.ts +14 -14
  127. package/dist/tools/other-income/otherincome-single.d.ts +6 -6
  128. package/dist/tools/other-income/otherincome-update.d.ts +10 -10
  129. package/dist/tools/other-income/schemas.d.ts +40 -34
  130. package/dist/tools/other-income/schemas.d.ts.map +1 -1
  131. package/dist/tools/other-income/schemas.js +2 -0
  132. package/dist/tools/other-income/schemas.js.map +1 -1
  133. package/dist/tools/payment/payment-create.d.ts +2 -2
  134. package/dist/tools/payment/payment-delete.d.ts +6 -0
  135. package/dist/tools/payment/payment-delete.d.ts.map +1 -1
  136. package/dist/tools/payment/payment-list.d.ts +8 -8
  137. package/dist/tools/payment/payment-single.d.ts +2 -2
  138. package/dist/tools/payment/payment-update.d.ts +2 -2
  139. package/dist/tools/payment/schemas.d.ts +18 -12
  140. package/dist/tools/payment/schemas.d.ts.map +1 -1
  141. package/dist/tools/payment/schemas.js +3 -1
  142. package/dist/tools/payment/schemas.js.map +1 -1
  143. package/dist/tools/project/project-create.d.ts +8 -8
  144. package/dist/tools/project/project-delete.d.ts +8 -2
  145. package/dist/tools/project/project-delete.d.ts.map +1 -1
  146. package/dist/tools/project/project-list.d.ts +21 -21
  147. package/dist/tools/project/project-single.d.ts +6 -6
  148. package/dist/tools/project/project-update.d.ts +10 -10
  149. package/dist/tools/project/schemas.d.ts +52 -46
  150. package/dist/tools/project/schemas.d.ts.map +1 -1
  151. package/dist/tools/project/schemas.js +2 -0
  152. package/dist/tools/project/schemas.js.map +1 -1
  153. package/dist/tools/service/schemas.d.ts +11 -11
  154. package/dist/tools/service/service-create.d.ts +2 -2
  155. package/dist/tools/service/service-list.d.ts +8 -8
  156. package/dist/tools/task/schemas.d.ts +34 -28
  157. package/dist/tools/task/schemas.d.ts.map +1 -1
  158. package/dist/tools/task/schemas.js +2 -0
  159. package/dist/tools/task/schemas.js.map +1 -1
  160. package/dist/tools/task/task-create.d.ts +6 -6
  161. package/dist/tools/task/task-delete.d.ts +6 -0
  162. package/dist/tools/task/task-delete.d.ts.map +1 -1
  163. package/dist/tools/task/task-list.d.ts +18 -18
  164. package/dist/tools/task/task-single.d.ts +4 -4
  165. package/dist/tools/task/task-update.d.ts +8 -8
  166. package/dist/tools/time-entry/schemas.d.ts +42 -36
  167. package/dist/tools/time-entry/schemas.d.ts.map +1 -1
  168. package/dist/tools/time-entry/schemas.js +2 -0
  169. package/dist/tools/time-entry/schemas.js.map +1 -1
  170. package/dist/tools/time-entry/timeentry-create.d.ts +6 -6
  171. package/dist/tools/time-entry/timeentry-delete.d.ts +8 -2
  172. package/dist/tools/time-entry/timeentry-delete.d.ts.map +1 -1
  173. package/dist/tools/time-entry/timeentry-list.d.ts +17 -17
  174. package/dist/tools/time-entry/timeentry-single.d.ts +4 -4
  175. package/dist/tools/time-entry/timeentry-update.d.ts +6 -6
  176. package/dist/tools/timer/schemas.d.ts +30 -24
  177. package/dist/tools/timer/schemas.d.ts.map +1 -1
  178. package/dist/tools/timer/schemas.js +2 -0
  179. package/dist/tools/timer/schemas.js.map +1 -1
  180. package/dist/tools/timer/timer-current.d.ts +8 -8
  181. package/dist/tools/timer/timer-discard.d.ts +8 -2
  182. package/dist/tools/timer/timer-discard.d.ts.map +1 -1
  183. package/dist/tools/timer/timer-start.d.ts +6 -6
  184. package/dist/tools/timer/timer-stop.d.ts +4 -4
  185. package/dist/tools/types.d.ts +16 -0
  186. package/dist/tools/types.d.ts.map +1 -1
  187. package/dist/tools/types.js.map +1 -1
  188. package/dist/tools/user/schemas.d.ts +14 -14
  189. package/dist/tools/user/user-me.d.ts +6 -6
  190. package/dist/utils/logger.d.ts +9 -0
  191. package/dist/utils/logger.d.ts.map +1 -1
  192. package/dist/utils/logger.js +114 -20
  193. package/dist/utils/logger.js.map +1 -1
  194. package/dist/utils/sanitizer.d.ts +49 -0
  195. package/dist/utils/sanitizer.d.ts.map +1 -0
  196. package/dist/utils/sanitizer.js +163 -0
  197. package/dist/utils/sanitizer.js.map +1 -0
  198. package/package.json +2 -2
@@ -73,10 +73,11 @@ export declare function formatErrorForLogging(error: MCPError): object;
73
73
  * Format error details for debugging
74
74
  *
75
75
  * Creates a comprehensive error dump including all details
76
- * for debugging purposes. Should only be used in development.
76
+ * for debugging purposes. In production, returns limited information
77
+ * to prevent information disclosure.
77
78
  *
78
79
  * @param error - The normalized MCP error
79
- * @returns Detailed error information
80
+ * @returns Detailed error information (limited in production)
80
81
  */
81
82
  export declare function formatErrorForDebug(error: MCPError): object;
82
83
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"response-formatter.d.ts","sourceRoot":"","sources":["../../src/errors/response-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,QAAQ,EACf,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GACjC,MAAM,CAUR;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAgD5D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAgB7D;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAW3D;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAYvD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAEpD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAqBjE"}
1
+ {"version":3,"file":"response-formatter.d.ts","sourceRoot":"","sources":["../../src/errors/response-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,QAAQ,EACf,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GACjC,MAAM,CAUR;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAgD5D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAgB7D;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CA2B3D;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAYvD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAEpD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAqBjE"}
@@ -5,6 +5,7 @@
5
5
  * - JSON-RPC response format (for MCP protocol)
6
6
  * - Claude-friendly text format (for display)
7
7
  */
8
+ import { isProduction } from "../config/environment.js";
8
9
  /**
9
10
  * Format MCPError for JSON-RPC 2.0 error response
10
11
  *
@@ -138,12 +139,28 @@ export function formatErrorForLogging(error) {
138
139
  * Format error details for debugging
139
140
  *
140
141
  * Creates a comprehensive error dump including all details
141
- * for debugging purposes. Should only be used in development.
142
+ * for debugging purposes. In production, returns limited information
143
+ * to prevent information disclosure.
142
144
  *
143
145
  * @param error - The normalized MCP error
144
- * @returns Detailed error information
146
+ * @returns Detailed error information (limited in production)
145
147
  */
146
148
  export function formatErrorForDebug(error) {
149
+ // In production, return limited info to prevent information disclosure
150
+ if (isProduction()) {
151
+ return {
152
+ mcpError: {
153
+ code: error.code,
154
+ message: error.message,
155
+ },
156
+ data: {
157
+ recoverable: error.data.recoverable,
158
+ suggestion: error.data.suggestion,
159
+ },
160
+ timestamp: new Date().toISOString(),
161
+ };
162
+ }
163
+ // Full debug info only in non-production environments
147
164
  return {
148
165
  mcpError: {
149
166
  code: error.code,
@@ -1 +1 @@
1
- {"version":3,"file":"response-formatter.js","sourceRoot":"","sources":["../../src/errors/response-formatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"response-formatter.js","sourceRoot":"","sources":["../../src/errors/response-formatter.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -13,8 +13,12 @@ import { getConfig } from './config/index.js';
13
13
  import { logger } from './utils/logger.js';
14
14
  import { FreshBooksOAuth } from './auth/oauth.js';
15
15
  import { EncryptedFileTokenStore } from './auth/token-store.js';
16
+ import { InMemoryStateStore } from './auth/state-store.js';
17
+ import { InMemoryConfirmationStore } from './auth/confirmation-store.js';
16
18
  import { FreshBooksClientWrapper } from './client/index.js';
17
19
  import { handleError, createAuthError } from './errors/index.js';
20
+ import { sanitizeForMcpResponse } from './utils/sanitizer.js';
21
+ import { getToolMetadata } from './tools/metadata.js';
18
22
  /**
19
23
  * Main server class
20
24
  */
@@ -22,6 +26,8 @@ class FreshBooksServer {
22
26
  server;
23
27
  oauth;
24
28
  client;
29
+ stateStore;
30
+ confirmationStore;
25
31
  constructor() {
26
32
  // Initialize MCP server
27
33
  this.server = new Server({
@@ -34,8 +40,10 @@ class FreshBooksServer {
34
40
  });
35
41
  // Load configuration
36
42
  const config = getConfig();
37
- // Initialize OAuth and client
43
+ // Initialize OAuth, state store, confirmation store, and client
38
44
  const tokenStore = new EncryptedFileTokenStore(config.server.tokenStorePath);
45
+ this.stateStore = new InMemoryStateStore();
46
+ this.confirmationStore = new InMemoryConfirmationStore();
39
47
  this.oauth = new FreshBooksOAuth({
40
48
  clientId: config.freshbooks.clientId,
41
49
  clientSecret: config.freshbooks.clientSecret,
@@ -85,8 +93,12 @@ class FreshBooksServer {
85
93
  type: 'string',
86
94
  description: 'Authorization code from OAuth redirect',
87
95
  },
96
+ state: {
97
+ type: 'string',
98
+ description: 'State parameter returned by auth_get_url (required for CSRF protection)',
99
+ },
88
100
  },
89
- required: ['code'],
101
+ required: ['code', 'state'],
90
102
  },
91
103
  },
92
104
  {
@@ -109,6 +121,56 @@ class FreshBooksServer {
109
121
  hasArgs: !!args,
110
122
  });
111
123
  try {
124
+ // Check if tool requires confirmation for destructive operations
125
+ const metadata = getToolMetadata(name);
126
+ if (metadata?.requiresConfirmation) {
127
+ const confirmationId = args?.confirmationId;
128
+ const confirmed = args?.confirmed;
129
+ // Phase 2: Validate confirmation token if provided
130
+ if (confirmed && confirmationId) {
131
+ const isValid = await this.confirmationStore.consume(confirmationId, name, args);
132
+ if (!isValid) {
133
+ logger.warn('Invalid or expired confirmation token', { tool: name });
134
+ return {
135
+ content: [
136
+ {
137
+ type: 'text',
138
+ text: JSON.stringify(sanitizeForMcpResponse({
139
+ error: true,
140
+ code: 'INVALID_CONFIRMATION',
141
+ message: 'Invalid or expired confirmation token. Please request a new confirmation.',
142
+ suggestion: 'Call this tool again without confirmationId to get a new confirmation prompt.',
143
+ }), null, 2),
144
+ },
145
+ ],
146
+ isError: true,
147
+ };
148
+ }
149
+ // Valid confirmation - proceed to execute
150
+ logger.info('Confirmation validated for destructive operation', { tool: name, tier: metadata.tier });
151
+ }
152
+ else {
153
+ // Phase 1: Generate confirmation token and return prompt
154
+ const confirmation = await this.confirmationStore.create(name, args);
155
+ logger.info('Tool requires confirmation', { tool: name, tier: metadata.tier });
156
+ return {
157
+ content: [
158
+ {
159
+ type: 'text',
160
+ text: JSON.stringify(sanitizeForMcpResponse({
161
+ requiresConfirmation: true,
162
+ tool: name,
163
+ tier: metadata.tier,
164
+ message: metadata.confirmationMessage,
165
+ confirmationId: confirmation.token,
166
+ expiresIn: 300, // 5 minutes
167
+ instruction: 'IMPORTANT: Ask the user for explicit confirmation before proceeding. To execute, call this tool again with the same parameters plus confirmed: true and confirmationId: "<token>"',
168
+ }), null, 2),
169
+ },
170
+ ],
171
+ };
172
+ }
173
+ }
112
174
  // Route to appropriate tool handler
113
175
  switch (name) {
114
176
  case 'auth_status':
@@ -154,7 +216,7 @@ class FreshBooksServer {
154
216
  content: [
155
217
  {
156
218
  type: 'text',
157
- text: JSON.stringify(status, null, 2),
219
+ text: JSON.stringify(sanitizeForMcpResponse(status), null, 2),
158
220
  },
159
221
  ],
160
222
  };
@@ -163,20 +225,24 @@ class FreshBooksServer {
163
225
  * Handle auth_get_url tool
164
226
  */
165
227
  async handleAuthGetUrl() {
166
- const url = this.oauth.generateAuthorizationUrl();
228
+ // Generate CSRF protection state
229
+ const stateData = await this.stateStore.create();
230
+ const url = this.oauth.generateAuthorizationUrl(stateData.state);
167
231
  return {
168
232
  content: [
169
233
  {
170
234
  type: 'text',
171
- text: JSON.stringify({
235
+ text: JSON.stringify(sanitizeForMcpResponse({
172
236
  authorizationUrl: url,
237
+ state: stateData.state,
238
+ expiresIn: 600, // 10 minutes
173
239
  instructions: [
174
240
  '1. Visit the authorization URL in your browser',
175
241
  '2. Log in to FreshBooks and authorize the application',
176
242
  '3. Copy the authorization code from the redirect URL',
177
- '4. Call auth_exchange_code with the authorization code',
243
+ '4. Call auth_exchange_code with the authorization code AND the state parameter',
178
244
  ],
179
- }, null, 2),
245
+ }), null, 2),
180
246
  },
181
247
  ],
182
248
  };
@@ -188,6 +254,14 @@ class FreshBooksServer {
188
254
  if (!args || !args.code) {
189
255
  throw createAuthError('Authorization code is required');
190
256
  }
257
+ if (!args.state) {
258
+ throw createAuthError('State parameter is required for CSRF protection');
259
+ }
260
+ // Validate and consume state (one-time use)
261
+ const isValidState = await this.stateStore.consume(args.state);
262
+ if (!isValidState) {
263
+ throw createAuthError('Invalid or expired state parameter. Please start the authentication flow again with auth_get_url.');
264
+ }
191
265
  const tokenData = await this.oauth.exchangeCode(args.code);
192
266
  // Set account if provided in token
193
267
  if (tokenData.accountId) {
@@ -197,12 +271,12 @@ class FreshBooksServer {
197
271
  content: [
198
272
  {
199
273
  type: 'text',
200
- text: JSON.stringify({
274
+ text: JSON.stringify(sanitizeForMcpResponse({
201
275
  success: true,
202
276
  message: 'Authentication successful',
203
277
  accountId: tokenData.accountId,
204
278
  expiresIn: tokenData.expiresAt - Math.floor(Date.now() / 1000),
205
- }, null, 2),
279
+ }), null, 2),
206
280
  },
207
281
  ],
208
282
  };
@@ -216,10 +290,10 @@ class FreshBooksServer {
216
290
  content: [
217
291
  {
218
292
  type: 'text',
219
- text: JSON.stringify({
293
+ text: JSON.stringify(sanitizeForMcpResponse({
220
294
  success: true,
221
295
  message: 'Authentication revoked successfully',
222
- }, null, 2),
296
+ }), null, 2),
223
297
  },
224
298
  ],
225
299
  };
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -49,15 +49,15 @@ export declare const PaginationMetadataSchema: z.ZodObject<{
49
49
  perPage: z.ZodNumber;
50
50
  total: z.ZodNumber;
51
51
  }, "strip", z.ZodTypeAny, {
52
- total: number;
53
52
  page: number;
54
53
  perPage: number;
55
54
  pages: number;
56
- }, {
57
55
  total: number;
56
+ }, {
58
57
  page: number;
59
58
  perPage: number;
60
59
  pages: number;
60
+ total: number;
61
61
  }>;
62
62
  /**
63
63
  * Common visibility state enum
@@ -113,12 +113,12 @@ export declare const billCreateTool: {
113
113
  visState: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
114
114
  }, "strip", z.ZodTypeAny, {
115
115
  status: "partial" | "paid" | "overdue" | "unpaid";
116
- createdAt: string;
117
- id: number;
118
116
  amount: {
119
117
  code: string;
120
118
  amount: string;
121
119
  };
120
+ id: number;
121
+ createdAt: string;
122
122
  dueDate: string | null;
123
123
  updatedAt: string;
124
124
  lines: any[];
@@ -142,12 +142,12 @@ export declare const billCreateTool: {
142
142
  attachment?: any;
143
143
  }, {
144
144
  status: "partial" | "paid" | "overdue" | "unpaid";
145
- createdAt: string;
146
- id: number;
147
145
  amount: {
148
146
  code: string;
149
147
  amount: string;
150
148
  };
149
+ id: number;
150
+ createdAt: string;
151
151
  dueDate: string | null;
152
152
  updatedAt: string;
153
153
  lines: any[];
@@ -15,12 +15,18 @@ export declare const billDeleteTool: {
15
15
  inputSchema: z.ZodObject<{
16
16
  accountId: z.ZodString;
17
17
  billId: z.ZodNumber;
18
+ confirmed: z.ZodOptional<z.ZodBoolean>;
19
+ confirmationId: z.ZodOptional<z.ZodString>;
18
20
  }, "strip", z.ZodTypeAny, {
19
21
  accountId: string;
20
22
  billId: number;
23
+ confirmed?: boolean | undefined;
24
+ confirmationId?: string | undefined;
21
25
  }, {
22
26
  accountId: string;
23
27
  billId: number;
28
+ confirmed?: boolean | undefined;
29
+ confirmationId?: string | undefined;
24
30
  }>;
25
31
  outputSchema: z.ZodObject<{
26
32
  success: z.ZodBoolean;
@@ -1 +1 @@
1
- {"version":3,"file":"bill-delete.d.ts","sourceRoot":"","sources":["../../../src/tools/bill/bill-delete.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAG7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;IA6BzB;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,UACpC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;CAwCnD,CAAC"}
1
+ {"version":3,"file":"bill-delete.d.ts","sourceRoot":"","sources":["../../../src/tools/bill/bill-delete.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAG7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6BzB;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,UACpC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;CAwCnD,CAAC"}
@@ -93,12 +93,12 @@ export declare const billListTool: {
93
93
  visState: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
94
94
  }, "strip", z.ZodTypeAny, {
95
95
  status: "partial" | "paid" | "overdue" | "unpaid";
96
- createdAt: string;
97
- id: number;
98
96
  amount: {
99
97
  code: string;
100
98
  amount: string;
101
99
  };
100
+ id: number;
101
+ createdAt: string;
102
102
  dueDate: string | null;
103
103
  updatedAt: string;
104
104
  lines: any[];
@@ -122,12 +122,12 @@ export declare const billListTool: {
122
122
  attachment?: any;
123
123
  }, {
124
124
  status: "partial" | "paid" | "overdue" | "unpaid";
125
- createdAt: string;
126
- id: number;
127
125
  amount: {
128
126
  code: string;
129
127
  amount: string;
130
128
  };
129
+ id: number;
130
+ createdAt: string;
131
131
  dueDate: string | null;
132
132
  updatedAt: string;
133
133
  lines: any[];
@@ -156,31 +156,31 @@ export declare const billListTool: {
156
156
  perPage: z.ZodNumber;
157
157
  total: z.ZodNumber;
158
158
  }, "strip", z.ZodTypeAny, {
159
- total: number;
160
159
  page: number;
161
160
  perPage: number;
162
161
  pages: number;
163
- }, {
164
162
  total: number;
163
+ }, {
165
164
  page: number;
166
165
  perPage: number;
167
166
  pages: number;
167
+ total: number;
168
168
  }>;
169
169
  }, "strip", z.ZodTypeAny, {
170
170
  pagination: {
171
- total: number;
172
171
  page: number;
173
172
  perPage: number;
174
173
  pages: number;
174
+ total: number;
175
175
  };
176
176
  bills: {
177
177
  status: "partial" | "paid" | "overdue" | "unpaid";
178
- createdAt: string;
179
- id: number;
180
178
  amount: {
181
179
  code: string;
182
180
  amount: string;
183
181
  };
182
+ id: number;
183
+ createdAt: string;
184
184
  dueDate: string | null;
185
185
  updatedAt: string;
186
186
  lines: any[];
@@ -205,19 +205,19 @@ export declare const billListTool: {
205
205
  }[];
206
206
  }, {
207
207
  pagination: {
208
- total: number;
209
208
  page: number;
210
209
  perPage: number;
211
210
  pages: number;
211
+ total: number;
212
212
  };
213
213
  bills: {
214
214
  status: "partial" | "paid" | "overdue" | "unpaid";
215
- createdAt: string;
216
- id: number;
217
215
  amount: {
218
216
  code: string;
219
217
  amount: string;
220
218
  };
219
+ id: number;
220
+ createdAt: string;
221
221
  dueDate: string | null;
222
222
  updatedAt: string;
223
223
  lines: any[];
@@ -77,12 +77,12 @@ export declare const billSingleTool: {
77
77
  visState: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
78
78
  }, "strip", z.ZodTypeAny, {
79
79
  status: "partial" | "paid" | "overdue" | "unpaid";
80
- createdAt: string;
81
- id: number;
82
80
  amount: {
83
81
  code: string;
84
82
  amount: string;
85
83
  };
84
+ id: number;
85
+ createdAt: string;
86
86
  dueDate: string | null;
87
87
  updatedAt: string;
88
88
  lines: any[];
@@ -106,12 +106,12 @@ export declare const billSingleTool: {
106
106
  attachment?: any;
107
107
  }, {
108
108
  status: "partial" | "paid" | "overdue" | "unpaid";
109
- createdAt: string;
110
- id: number;
111
109
  amount: {
112
110
  code: string;
113
111
  amount: string;
114
112
  };
113
+ id: number;
114
+ createdAt: string;
115
115
  dueDate: string | null;
116
116
  updatedAt: string;
117
117
  lines: any[];