tebra-mcp-server 0.1.0 → 0.2.1

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 (115) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +267 -35
  3. package/dist/config.d.ts +12 -0
  4. package/dist/config.d.ts.map +1 -1
  5. package/dist/config.js +12 -0
  6. package/dist/config.js.map +1 -1
  7. package/dist/fhir-client.d.ts +22 -0
  8. package/dist/fhir-client.d.ts.map +1 -0
  9. package/dist/fhir-client.js +86 -0
  10. package/dist/fhir-client.js.map +1 -0
  11. package/dist/index.d.ts +4 -0
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +98 -6
  14. package/dist/index.js.map +1 -1
  15. package/dist/integrations/epic-notes-integration.d.ts +145 -0
  16. package/dist/integrations/epic-notes-integration.d.ts.map +1 -0
  17. package/dist/integrations/epic-notes-integration.js +227 -0
  18. package/dist/integrations/epic-notes-integration.js.map +1 -0
  19. package/dist/integrations/fal-integration.d.ts +109 -0
  20. package/dist/integrations/fal-integration.d.ts.map +1 -0
  21. package/dist/integrations/fal-integration.js +192 -0
  22. package/dist/integrations/fal-integration.js.map +1 -0
  23. package/dist/soap-client.d.ts +1 -0
  24. package/dist/soap-client.d.ts.map +1 -1
  25. package/dist/soap-client.js +68 -1
  26. package/dist/soap-client.js.map +1 -1
  27. package/dist/tools/appointment-crud.d.ts +117 -0
  28. package/dist/tools/appointment-crud.d.ts.map +1 -0
  29. package/dist/tools/appointment-crud.js +218 -0
  30. package/dist/tools/appointment-crud.js.map +1 -0
  31. package/dist/tools/appointment-detail.d.ts +25 -0
  32. package/dist/tools/appointment-detail.d.ts.map +1 -0
  33. package/dist/tools/appointment-detail.js +85 -0
  34. package/dist/tools/appointment-detail.js.map +1 -0
  35. package/dist/tools/appointment-reasons.d.ts +20 -0
  36. package/dist/tools/appointment-reasons.d.ts.map +1 -0
  37. package/dist/tools/appointment-reasons.js +48 -0
  38. package/dist/tools/appointment-reasons.js.map +1 -0
  39. package/dist/tools/appointments.d.ts +46 -0
  40. package/dist/tools/appointments.d.ts.map +1 -1
  41. package/dist/tools/appointments.js +71 -4
  42. package/dist/tools/appointments.js.map +1 -1
  43. package/dist/tools/authorizations.d.ts +0 -0
  44. package/dist/tools/authorizations.d.ts.map +0 -0
  45. package/dist/tools/authorizations.js +5 -5
  46. package/dist/tools/authorizations.js.map +0 -0
  47. package/dist/tools/bulk-patients.d.ts +33 -0
  48. package/dist/tools/bulk-patients.d.ts.map +1 -0
  49. package/dist/tools/bulk-patients.js +81 -0
  50. package/dist/tools/bulk-patients.js.map +1 -0
  51. package/dist/tools/charges.d.ts +61 -0
  52. package/dist/tools/charges.d.ts.map +1 -1
  53. package/dist/tools/charges.js +98 -14
  54. package/dist/tools/charges.js.map +1 -1
  55. package/dist/tools/documents.d.ts +71 -0
  56. package/dist/tools/documents.d.ts.map +1 -0
  57. package/dist/tools/documents.js +139 -0
  58. package/dist/tools/documents.js.map +1 -0
  59. package/dist/tools/eligibility.d.ts +0 -0
  60. package/dist/tools/eligibility.d.ts.map +0 -0
  61. package/dist/tools/eligibility.js +5 -5
  62. package/dist/tools/eligibility.js.map +0 -0
  63. package/dist/tools/encounter-status.d.ts +34 -0
  64. package/dist/tools/encounter-status.d.ts.map +1 -0
  65. package/dist/tools/encounter-status.js +73 -0
  66. package/dist/tools/encounter-status.js.map +1 -0
  67. package/dist/tools/encounters.d.ts +0 -0
  68. package/dist/tools/encounters.d.ts.map +0 -0
  69. package/dist/tools/encounters.js +29 -29
  70. package/dist/tools/encounters.js.map +0 -0
  71. package/dist/tools/external-ids.d.ts +66 -0
  72. package/dist/tools/external-ids.d.ts.map +1 -0
  73. package/dist/tools/external-ids.js +140 -0
  74. package/dist/tools/external-ids.js.map +1 -0
  75. package/dist/tools/fhir-clinical.d.ts +187 -0
  76. package/dist/tools/fhir-clinical.d.ts.map +1 -0
  77. package/dist/tools/fhir-clinical.js +597 -0
  78. package/dist/tools/fhir-clinical.js.map +1 -0
  79. package/dist/tools/patient-crud.d.ts +190 -0
  80. package/dist/tools/patient-crud.d.ts.map +1 -0
  81. package/dist/tools/patient-crud.js +297 -0
  82. package/dist/tools/patient-crud.js.map +1 -0
  83. package/dist/tools/patients.d.ts +87 -1
  84. package/dist/tools/patients.d.ts.map +1 -1
  85. package/dist/tools/patients.js +108 -8
  86. package/dist/tools/patients.js.map +1 -1
  87. package/dist/tools/payments.d.ts +105 -0
  88. package/dist/tools/payments.d.ts.map +1 -0
  89. package/dist/tools/payments.js +206 -0
  90. package/dist/tools/payments.js.map +1 -0
  91. package/dist/tools/practices.d.ts +20 -0
  92. package/dist/tools/practices.d.ts.map +1 -0
  93. package/dist/tools/practices.js +54 -0
  94. package/dist/tools/practices.js.map +1 -0
  95. package/dist/tools/procedure-codes.d.ts +0 -0
  96. package/dist/tools/procedure-codes.d.ts.map +0 -0
  97. package/dist/tools/procedure-codes.js +5 -5
  98. package/dist/tools/procedure-codes.js.map +0 -0
  99. package/dist/tools/providers.d.ts +25 -0
  100. package/dist/tools/providers.d.ts.map +1 -0
  101. package/dist/tools/providers.js +62 -0
  102. package/dist/tools/providers.js.map +1 -0
  103. package/dist/tools/service-locations.d.ts +25 -0
  104. package/dist/tools/service-locations.d.ts.map +1 -0
  105. package/dist/tools/service-locations.js +62 -0
  106. package/dist/tools/service-locations.js.map +1 -0
  107. package/dist/tools/system.d.ts +81 -0
  108. package/dist/tools/system.d.ts.map +1 -0
  109. package/dist/tools/system.js +184 -0
  110. package/dist/tools/system.js.map +1 -0
  111. package/dist/tools/transactions.d.ts +61 -0
  112. package/dist/tools/transactions.d.ts.map +1 -0
  113. package/dist/tools/transactions.js +122 -0
  114. package/dist/tools/transactions.js.map +1 -0
  115. package/package.json +61 -54
@@ -0,0 +1,190 @@
1
+ /**
2
+ * Tebra MCP tools: Patient create and update.
3
+ */
4
+ import type { TebraConfig } from '../config.js';
5
+ export declare const patientCrudTools: ({
6
+ name: string;
7
+ description: string;
8
+ inputSchema: {
9
+ type: "object";
10
+ properties: {
11
+ firstName: {
12
+ type: string;
13
+ description: string;
14
+ };
15
+ lastName: {
16
+ type: string;
17
+ description: string;
18
+ };
19
+ dateOfBirth: {
20
+ type: string;
21
+ description: string;
22
+ };
23
+ gender: {
24
+ type: string;
25
+ description: string;
26
+ };
27
+ email: {
28
+ type: string;
29
+ description: string;
30
+ };
31
+ homePhone: {
32
+ type: string;
33
+ description: string;
34
+ };
35
+ mobilePhone: {
36
+ type: string;
37
+ description: string;
38
+ };
39
+ address1: {
40
+ type: string;
41
+ description: string;
42
+ };
43
+ address2: {
44
+ type: string;
45
+ description: string;
46
+ };
47
+ city: {
48
+ type: string;
49
+ description: string;
50
+ };
51
+ state: {
52
+ type: string;
53
+ description: string;
54
+ };
55
+ zipCode: {
56
+ type: string;
57
+ description: string;
58
+ };
59
+ ssn: {
60
+ type: string;
61
+ description: string;
62
+ };
63
+ referralSource: {
64
+ type: string;
65
+ description: string;
66
+ };
67
+ primaryInsurance: {
68
+ type: string;
69
+ description: string;
70
+ properties: {
71
+ companyName: {
72
+ type: string;
73
+ description: string;
74
+ };
75
+ memberId: {
76
+ type: string;
77
+ description: string;
78
+ };
79
+ groupNumber: {
80
+ type: string;
81
+ description: string;
82
+ };
83
+ planName: {
84
+ type: string;
85
+ description: string;
86
+ };
87
+ };
88
+ required: string[];
89
+ };
90
+ guarantor: {
91
+ type: string;
92
+ description: string;
93
+ properties: {
94
+ firstName: {
95
+ type: string;
96
+ description: string;
97
+ };
98
+ lastName: {
99
+ type: string;
100
+ description: string;
101
+ };
102
+ relationship: {
103
+ type: string;
104
+ description: string;
105
+ };
106
+ };
107
+ required: string[];
108
+ };
109
+ externalId: {
110
+ type: string;
111
+ description: string;
112
+ };
113
+ patientId?: undefined;
114
+ };
115
+ required: string[];
116
+ };
117
+ } | {
118
+ name: string;
119
+ description: string;
120
+ inputSchema: {
121
+ type: "object";
122
+ properties: {
123
+ patientId: {
124
+ type: string;
125
+ description: string;
126
+ };
127
+ firstName: {
128
+ type: string;
129
+ description: string;
130
+ };
131
+ lastName: {
132
+ type: string;
133
+ description: string;
134
+ };
135
+ dateOfBirth: {
136
+ type: string;
137
+ description: string;
138
+ };
139
+ gender: {
140
+ type: string;
141
+ description: string;
142
+ };
143
+ email: {
144
+ type: string;
145
+ description: string;
146
+ };
147
+ homePhone: {
148
+ type: string;
149
+ description: string;
150
+ };
151
+ mobilePhone: {
152
+ type: string;
153
+ description: string;
154
+ };
155
+ address1: {
156
+ type: string;
157
+ description: string;
158
+ };
159
+ address2: {
160
+ type: string;
161
+ description: string;
162
+ };
163
+ city: {
164
+ type: string;
165
+ description: string;
166
+ };
167
+ state: {
168
+ type: string;
169
+ description: string;
170
+ };
171
+ zipCode: {
172
+ type: string;
173
+ description: string;
174
+ };
175
+ ssn?: undefined;
176
+ referralSource?: undefined;
177
+ primaryInsurance?: undefined;
178
+ guarantor?: undefined;
179
+ externalId?: undefined;
180
+ };
181
+ required: string[];
182
+ };
183
+ })[];
184
+ export declare function handlePatientCrudTool(name: string, args: Record<string, unknown>, config: TebraConfig): Promise<{
185
+ content: Array<{
186
+ type: string;
187
+ text: string;
188
+ }>;
189
+ }>;
190
+ //# sourceMappingURL=patient-crud.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patient-crud.d.ts","sourceRoot":"","sources":["../../src/tools/patient-crud.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAkBhD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4J5B,CAAC;AAIF,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAgJ7D"}
@@ -0,0 +1,297 @@
1
+ "use strict";
2
+ /**
3
+ * Tebra MCP tools: Patient create and update.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.patientCrudTools = void 0;
7
+ exports.handlePatientCrudTool = handlePatientCrudTool;
8
+ const soap_client_js_1 = require("../soap-client.js");
9
+ exports.patientCrudTools = [
10
+ {
11
+ name: 'tebra_create_patient',
12
+ description: 'Create a new patient in Tebra with demographics, address, insurance, and guarantor information.',
13
+ inputSchema: {
14
+ type: 'object',
15
+ properties: {
16
+ firstName: {
17
+ type: 'string',
18
+ description: 'Patient first name',
19
+ },
20
+ lastName: {
21
+ type: 'string',
22
+ description: 'Patient last name',
23
+ },
24
+ dateOfBirth: {
25
+ type: 'string',
26
+ description: 'Date of birth (ISO 8601, e.g. 1990-01-15)',
27
+ },
28
+ gender: {
29
+ type: 'string',
30
+ description: 'Optional gender (Male, Female, Other)',
31
+ },
32
+ email: {
33
+ type: 'string',
34
+ description: 'Optional email address',
35
+ },
36
+ homePhone: {
37
+ type: 'string',
38
+ description: 'Optional home phone number',
39
+ },
40
+ mobilePhone: {
41
+ type: 'string',
42
+ description: 'Optional mobile phone number',
43
+ },
44
+ address1: {
45
+ type: 'string',
46
+ description: 'Optional street address line 1',
47
+ },
48
+ address2: {
49
+ type: 'string',
50
+ description: 'Optional street address line 2',
51
+ },
52
+ city: {
53
+ type: 'string',
54
+ description: 'Optional city',
55
+ },
56
+ state: {
57
+ type: 'string',
58
+ description: 'Optional state (2-letter abbreviation)',
59
+ },
60
+ zipCode: {
61
+ type: 'string',
62
+ description: 'Optional ZIP code',
63
+ },
64
+ ssn: {
65
+ type: 'string',
66
+ description: 'Optional SSN (will be transmitted securely)',
67
+ },
68
+ referralSource: {
69
+ type: 'string',
70
+ description: 'Optional referral source',
71
+ },
72
+ primaryInsurance: {
73
+ type: 'object',
74
+ description: 'Optional primary insurance information',
75
+ properties: {
76
+ companyName: { type: 'string', description: 'Insurance company name' },
77
+ memberId: { type: 'string', description: 'Member/subscriber ID' },
78
+ groupNumber: { type: 'string', description: 'Optional group number' },
79
+ planName: { type: 'string', description: 'Optional plan name' },
80
+ },
81
+ required: ['companyName', 'memberId'],
82
+ },
83
+ guarantor: {
84
+ type: 'object',
85
+ description: 'Optional guarantor information',
86
+ properties: {
87
+ firstName: { type: 'string', description: 'Guarantor first name' },
88
+ lastName: { type: 'string', description: 'Guarantor last name' },
89
+ relationship: { type: 'string', description: 'Optional relationship to patient' },
90
+ },
91
+ required: ['firstName', 'lastName'],
92
+ },
93
+ externalId: {
94
+ type: 'string',
95
+ description: 'Optional external system ID',
96
+ },
97
+ },
98
+ required: ['firstName', 'lastName', 'dateOfBirth'],
99
+ },
100
+ },
101
+ {
102
+ name: 'tebra_update_patient',
103
+ description: 'Update an existing patient in Tebra. Only provided fields will be changed.',
104
+ inputSchema: {
105
+ type: 'object',
106
+ properties: {
107
+ patientId: {
108
+ type: 'string',
109
+ description: 'Tebra patient ID to update',
110
+ },
111
+ firstName: {
112
+ type: 'string',
113
+ description: 'Optional updated first name',
114
+ },
115
+ lastName: {
116
+ type: 'string',
117
+ description: 'Optional updated last name',
118
+ },
119
+ dateOfBirth: {
120
+ type: 'string',
121
+ description: 'Optional updated date of birth (ISO 8601)',
122
+ },
123
+ gender: {
124
+ type: 'string',
125
+ description: 'Optional updated gender',
126
+ },
127
+ email: {
128
+ type: 'string',
129
+ description: 'Optional updated email address',
130
+ },
131
+ homePhone: {
132
+ type: 'string',
133
+ description: 'Optional updated home phone number',
134
+ },
135
+ mobilePhone: {
136
+ type: 'string',
137
+ description: 'Optional updated mobile phone number',
138
+ },
139
+ address1: {
140
+ type: 'string',
141
+ description: 'Optional updated street address line 1',
142
+ },
143
+ address2: {
144
+ type: 'string',
145
+ description: 'Optional updated street address line 2',
146
+ },
147
+ city: {
148
+ type: 'string',
149
+ description: 'Optional updated city',
150
+ },
151
+ state: {
152
+ type: 'string',
153
+ description: 'Optional updated state',
154
+ },
155
+ zipCode: {
156
+ type: 'string',
157
+ description: 'Optional updated ZIP code',
158
+ },
159
+ },
160
+ required: ['patientId'],
161
+ },
162
+ },
163
+ ];
164
+ // ─── Tool Handler ───────────────────────────────────────────────
165
+ async function handlePatientCrudTool(name, args, config) {
166
+ switch (name) {
167
+ case 'tebra_create_patient': {
168
+ const firstName = String(args.firstName ?? '');
169
+ const lastName = String(args.lastName ?? '');
170
+ const dateOfBirth = String(args.dateOfBirth ?? '');
171
+ if (!firstName || !lastName || !dateOfBirth) {
172
+ return {
173
+ content: [{ type: 'text', text: 'firstName, lastName, and dateOfBirth are required.' }],
174
+ };
175
+ }
176
+ const gender = args.gender ? String(args.gender) : undefined;
177
+ const email = args.email ? String(args.email) : undefined;
178
+ const homePhone = args.homePhone ? String(args.homePhone) : undefined;
179
+ const mobilePhone = args.mobilePhone ? String(args.mobilePhone) : undefined;
180
+ const address1 = args.address1 ? String(args.address1) : undefined;
181
+ const address2 = args.address2 ? String(args.address2) : undefined;
182
+ const city = args.city ? String(args.city) : undefined;
183
+ const state = args.state ? String(args.state) : undefined;
184
+ const zipCode = args.zipCode ? String(args.zipCode) : undefined;
185
+ const ssn = args.ssn ? String(args.ssn) : undefined;
186
+ const referralSource = args.referralSource ? String(args.referralSource) : undefined;
187
+ const externalId = args.externalId ? String(args.externalId) : undefined;
188
+ const primaryInsurance = args.primaryInsurance;
189
+ const guarantor = args.guarantor;
190
+ let insuranceXml = '';
191
+ if (primaryInsurance) {
192
+ insuranceXml = `
193
+ <kar:InsurancePolicies>
194
+ <kar:InsurancePolicyReq>
195
+ <kar:CompanyName>${(0, soap_client_js_1.escapeXml)(primaryInsurance.companyName)}</kar:CompanyName>
196
+ <kar:MemberNumber>${(0, soap_client_js_1.escapeXml)(primaryInsurance.memberId)}</kar:MemberNumber>
197
+ ${primaryInsurance.groupNumber ? `<kar:GroupNumber>${(0, soap_client_js_1.escapeXml)(primaryInsurance.groupNumber)}</kar:GroupNumber>` : ''}
198
+ ${primaryInsurance.planName ? `<kar:PlanName>${(0, soap_client_js_1.escapeXml)(primaryInsurance.planName)}</kar:PlanName>` : ''}
199
+ <kar:SequenceNumber>1</kar:SequenceNumber>
200
+ </kar:InsurancePolicyReq>
201
+ </kar:InsurancePolicies>`;
202
+ }
203
+ let guarantorXml = '';
204
+ if (guarantor) {
205
+ guarantorXml = `
206
+ <kar:Guarantor>
207
+ <kar:FirstName>${(0, soap_client_js_1.escapeXml)(guarantor.firstName)}</kar:FirstName>
208
+ <kar:LastName>${(0, soap_client_js_1.escapeXml)(guarantor.lastName)}</kar:LastName>
209
+ ${guarantor.relationship ? `<kar:Relationship>${(0, soap_client_js_1.escapeXml)(guarantor.relationship)}</kar:Relationship>` : ''}
210
+ </kar:Guarantor>`;
211
+ }
212
+ const bodyXml = `
213
+ <kar:request>
214
+ <kar:Patient>
215
+ <kar:FirstName>${(0, soap_client_js_1.escapeXml)(firstName)}</kar:FirstName>
216
+ <kar:LastName>${(0, soap_client_js_1.escapeXml)(lastName)}</kar:LastName>
217
+ <kar:DateofBirth>${(0, soap_client_js_1.escapeXml)(dateOfBirth)}</kar:DateofBirth>
218
+ ${gender ? `<kar:Gender>${(0, soap_client_js_1.escapeXml)(gender)}</kar:Gender>` : ''}
219
+ ${email ? `<kar:EmailAddress>${(0, soap_client_js_1.escapeXml)(email)}</kar:EmailAddress>` : ''}
220
+ ${homePhone ? `<kar:HomePhone>${(0, soap_client_js_1.escapeXml)(homePhone)}</kar:HomePhone>` : ''}
221
+ ${mobilePhone ? `<kar:MobilePhone>${(0, soap_client_js_1.escapeXml)(mobilePhone)}</kar:MobilePhone>` : ''}
222
+ ${address1 ? `<kar:AddressLine1>${(0, soap_client_js_1.escapeXml)(address1)}</kar:AddressLine1>` : ''}
223
+ ${address2 ? `<kar:AddressLine2>${(0, soap_client_js_1.escapeXml)(address2)}</kar:AddressLine2>` : ''}
224
+ ${city ? `<kar:City>${(0, soap_client_js_1.escapeXml)(city)}</kar:City>` : ''}
225
+ ${state ? `<kar:State>${(0, soap_client_js_1.escapeXml)(state)}</kar:State>` : ''}
226
+ ${zipCode ? `<kar:ZipCode>${(0, soap_client_js_1.escapeXml)(zipCode)}</kar:ZipCode>` : ''}
227
+ ${ssn ? `<kar:SSN>${(0, soap_client_js_1.escapeXml)(ssn)}</kar:SSN>` : ''}
228
+ ${referralSource ? `<kar:ReferralSource>${(0, soap_client_js_1.escapeXml)(referralSource)}</kar:ReferralSource>` : ''}
229
+ ${externalId ? `<kar:ExternalID>${(0, soap_client_js_1.escapeXml)(externalId)}</kar:ExternalID>` : ''}
230
+ ${insuranceXml}
231
+ ${guarantorXml}
232
+ </kar:Patient>
233
+ </kar:request>`;
234
+ const xml = await (0, soap_client_js_1.soapRequest)(config, 'CreatePatient', bodyXml);
235
+ const patientId = (0, soap_client_js_1.extractTag)(xml, 'PatientID') || (0, soap_client_js_1.extractTag)(xml, 'ID');
236
+ return {
237
+ content: [{
238
+ type: 'text',
239
+ text: JSON.stringify({
240
+ patientId,
241
+ message: 'Patient created successfully.',
242
+ }, null, 2),
243
+ }],
244
+ };
245
+ }
246
+ case 'tebra_update_patient': {
247
+ const patientId = String(args.patientId ?? '');
248
+ if (!patientId) {
249
+ return { content: [{ type: 'text', text: 'patientId is required.' }] };
250
+ }
251
+ const firstName = args.firstName ? String(args.firstName) : undefined;
252
+ const lastName = args.lastName ? String(args.lastName) : undefined;
253
+ const dateOfBirth = args.dateOfBirth ? String(args.dateOfBirth) : undefined;
254
+ const gender = args.gender ? String(args.gender) : undefined;
255
+ const email = args.email ? String(args.email) : undefined;
256
+ const homePhone = args.homePhone ? String(args.homePhone) : undefined;
257
+ const mobilePhone = args.mobilePhone ? String(args.mobilePhone) : undefined;
258
+ const address1 = args.address1 ? String(args.address1) : undefined;
259
+ const address2 = args.address2 ? String(args.address2) : undefined;
260
+ const city = args.city ? String(args.city) : undefined;
261
+ const state = args.state ? String(args.state) : undefined;
262
+ const zipCode = args.zipCode ? String(args.zipCode) : undefined;
263
+ const bodyXml = `
264
+ <kar:request>
265
+ <kar:Patient>
266
+ <kar:PatientID>${(0, soap_client_js_1.escapeXml)(patientId)}</kar:PatientID>
267
+ ${firstName ? `<kar:FirstName>${(0, soap_client_js_1.escapeXml)(firstName)}</kar:FirstName>` : ''}
268
+ ${lastName ? `<kar:LastName>${(0, soap_client_js_1.escapeXml)(lastName)}</kar:LastName>` : ''}
269
+ ${dateOfBirth ? `<kar:DateofBirth>${(0, soap_client_js_1.escapeXml)(dateOfBirth)}</kar:DateofBirth>` : ''}
270
+ ${gender ? `<kar:Gender>${(0, soap_client_js_1.escapeXml)(gender)}</kar:Gender>` : ''}
271
+ ${email ? `<kar:EmailAddress>${(0, soap_client_js_1.escapeXml)(email)}</kar:EmailAddress>` : ''}
272
+ ${homePhone ? `<kar:HomePhone>${(0, soap_client_js_1.escapeXml)(homePhone)}</kar:HomePhone>` : ''}
273
+ ${mobilePhone ? `<kar:MobilePhone>${(0, soap_client_js_1.escapeXml)(mobilePhone)}</kar:MobilePhone>` : ''}
274
+ ${address1 ? `<kar:AddressLine1>${(0, soap_client_js_1.escapeXml)(address1)}</kar:AddressLine1>` : ''}
275
+ ${address2 ? `<kar:AddressLine2>${(0, soap_client_js_1.escapeXml)(address2)}</kar:AddressLine2>` : ''}
276
+ ${city ? `<kar:City>${(0, soap_client_js_1.escapeXml)(city)}</kar:City>` : ''}
277
+ ${state ? `<kar:State>${(0, soap_client_js_1.escapeXml)(state)}</kar:State>` : ''}
278
+ ${zipCode ? `<kar:ZipCode>${(0, soap_client_js_1.escapeXml)(zipCode)}</kar:ZipCode>` : ''}
279
+ </kar:Patient>
280
+ </kar:request>`;
281
+ const xml = await (0, soap_client_js_1.soapRequest)(config, 'UpdatePatient', bodyXml);
282
+ const updatedId = (0, soap_client_js_1.extractTag)(xml, 'PatientID') || (0, soap_client_js_1.extractTag)(xml, 'ID') || patientId;
283
+ return {
284
+ content: [{
285
+ type: 'text',
286
+ text: JSON.stringify({
287
+ patientId: updatedId,
288
+ message: 'Patient updated successfully.',
289
+ }, null, 2),
290
+ }],
291
+ };
292
+ }
293
+ default:
294
+ return { content: [{ type: 'text', text: `Unknown patient CRUD tool: ${name}` }] };
295
+ }
296
+ }
297
+ //# sourceMappingURL=patient-crud.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patient-crud.js","sourceRoot":"","sources":["../../src/tools/patient-crud.ts"],"names":[],"mappings":"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"}
@@ -12,9 +12,78 @@ export declare const patientTools: ({
12
12
  type: string;
13
13
  description: string;
14
14
  };
15
+ firstName: {
16
+ type: string;
17
+ description: string;
18
+ };
19
+ lastName: {
20
+ type: string;
21
+ description: string;
22
+ };
23
+ fullName: {
24
+ type: string;
25
+ description: string;
26
+ };
27
+ dateOfBirth: {
28
+ type: string;
29
+ description: string;
30
+ };
31
+ fromDateOfBirth: {
32
+ type: string;
33
+ description: string;
34
+ };
35
+ toDateOfBirth: {
36
+ type: string;
37
+ description: string;
38
+ };
39
+ gender: {
40
+ type: string;
41
+ enum: string[];
42
+ description: string;
43
+ };
44
+ mrn: {
45
+ type: string;
46
+ description: string;
47
+ };
48
+ externalId: {
49
+ type: string;
50
+ description: string;
51
+ };
52
+ isActive: {
53
+ type: string;
54
+ description: string;
55
+ };
56
+ practiceName: {
57
+ type: string;
58
+ description: string;
59
+ };
60
+ insuranceCompanyName: {
61
+ type: string;
62
+ description: string;
63
+ };
64
+ referringProviderName: {
65
+ type: string;
66
+ description: string;
67
+ };
68
+ fromLastModifiedDate: {
69
+ type: string;
70
+ description: string;
71
+ };
72
+ toLastModifiedDate: {
73
+ type: string;
74
+ description: string;
75
+ };
76
+ fromCreatedDate: {
77
+ type: string;
78
+ description: string;
79
+ };
80
+ toCreatedDate: {
81
+ type: string;
82
+ description: string;
83
+ };
15
84
  patientId?: undefined;
16
85
  };
17
- required: string[];
86
+ required: never[];
18
87
  };
19
88
  } | {
20
89
  name: string;
@@ -27,6 +96,23 @@ export declare const patientTools: ({
27
96
  description: string;
28
97
  };
29
98
  query?: undefined;
99
+ firstName?: undefined;
100
+ lastName?: undefined;
101
+ fullName?: undefined;
102
+ dateOfBirth?: undefined;
103
+ fromDateOfBirth?: undefined;
104
+ toDateOfBirth?: undefined;
105
+ gender?: undefined;
106
+ mrn?: undefined;
107
+ externalId?: undefined;
108
+ isActive?: undefined;
109
+ practiceName?: undefined;
110
+ insuranceCompanyName?: undefined;
111
+ referringProviderName?: undefined;
112
+ fromLastModifiedDate?: undefined;
113
+ toLastModifiedDate?: undefined;
114
+ fromCreatedDate?: undefined;
115
+ toCreatedDate?: undefined;
30
116
  };
31
117
  required: string[];
32
118
  };
@@ -1 +1 @@
1
- {"version":3,"file":"patients.d.ts","sourceRoot":"","sources":["../../src/tools/patients.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAWhD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+BxB,CAAC;AAIF,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAmE7D"}
1
+ {"version":3,"file":"patients.d.ts","sourceRoot":"","sources":["../../src/tools/patients.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAWhD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoGxB,CAAC;AAIF,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAqG7D"}