propstack-mcp-server 1.0.0

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 (71) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +321 -0
  3. package/dist/index.d.ts +3 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +55 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/propstack-client.d.ts +24 -0
  8. package/dist/propstack-client.d.ts.map +1 -0
  9. package/dist/propstack-client.js +99 -0
  10. package/dist/propstack-client.js.map +1 -0
  11. package/dist/tools/activities.d.ts +4 -0
  12. package/dist/tools/activities.d.ts.map +1 -0
  13. package/dist/tools/activities.js +177 -0
  14. package/dist/tools/activities.js.map +1 -0
  15. package/dist/tools/admin.d.ts +4 -0
  16. package/dist/tools/admin.d.ts.map +1 -0
  17. package/dist/tools/admin.js +148 -0
  18. package/dist/tools/admin.js.map +1 -0
  19. package/dist/tools/composites.d.ts +4 -0
  20. package/dist/tools/composites.d.ts.map +1 -0
  21. package/dist/tools/composites.js +807 -0
  22. package/dist/tools/composites.js.map +1 -0
  23. package/dist/tools/contacts.d.ts +4 -0
  24. package/dist/tools/contacts.d.ts.map +1 -0
  25. package/dist/tools/contacts.js +386 -0
  26. package/dist/tools/contacts.js.map +1 -0
  27. package/dist/tools/deals.d.ts +4 -0
  28. package/dist/tools/deals.d.ts.map +1 -0
  29. package/dist/tools/deals.js +230 -0
  30. package/dist/tools/deals.js.map +1 -0
  31. package/dist/tools/documents.d.ts +4 -0
  32. package/dist/tools/documents.d.ts.map +1 -0
  33. package/dist/tools/documents.js +109 -0
  34. package/dist/tools/documents.js.map +1 -0
  35. package/dist/tools/emails.d.ts +4 -0
  36. package/dist/tools/emails.d.ts.map +1 -0
  37. package/dist/tools/emails.js +111 -0
  38. package/dist/tools/emails.js.map +1 -0
  39. package/dist/tools/helpers.d.ts +39 -0
  40. package/dist/tools/helpers.d.ts.map +1 -0
  41. package/dist/tools/helpers.js +160 -0
  42. package/dist/tools/helpers.js.map +1 -0
  43. package/dist/tools/lookups.d.ts +4 -0
  44. package/dist/tools/lookups.d.ts.map +1 -0
  45. package/dist/tools/lookups.js +333 -0
  46. package/dist/tools/lookups.js.map +1 -0
  47. package/dist/tools/projects.d.ts +4 -0
  48. package/dist/tools/projects.d.ts.map +1 -0
  49. package/dist/tools/projects.js +104 -0
  50. package/dist/tools/projects.js.map +1 -0
  51. package/dist/tools/properties.d.ts +4 -0
  52. package/dist/tools/properties.d.ts.map +1 -0
  53. package/dist/tools/properties.js +397 -0
  54. package/dist/tools/properties.js.map +1 -0
  55. package/dist/tools/relationships.d.ts +4 -0
  56. package/dist/tools/relationships.d.ts.map +1 -0
  57. package/dist/tools/relationships.js +55 -0
  58. package/dist/tools/relationships.js.map +1 -0
  59. package/dist/tools/search-profiles.d.ts +4 -0
  60. package/dist/tools/search-profiles.d.ts.map +1 -0
  61. package/dist/tools/search-profiles.js +345 -0
  62. package/dist/tools/search-profiles.js.map +1 -0
  63. package/dist/tools/tasks.d.ts +4 -0
  64. package/dist/tools/tasks.d.ts.map +1 -0
  65. package/dist/tools/tasks.js +251 -0
  66. package/dist/tools/tasks.js.map +1 -0
  67. package/dist/types/propstack.d.ts +444 -0
  68. package/dist/types/propstack.d.ts.map +1 -0
  69. package/dist/types/propstack.js +3 -0
  70. package/dist/types/propstack.js.map +1 -0
  71. package/package.json +54 -0
@@ -0,0 +1,444 @@
1
+ export interface PropstackPaginatedResponse<T> {
2
+ data: T[];
3
+ meta?: {
4
+ total_count: number;
5
+ };
6
+ }
7
+ export interface PropstackImage {
8
+ id: number;
9
+ url: string | null;
10
+ title: string | null;
11
+ position: number | null;
12
+ is_floorplan: boolean | null;
13
+ is_private: boolean | null;
14
+ created_at: string | null;
15
+ updated_at: string | null;
16
+ }
17
+ export interface PropstackLink {
18
+ id: number;
19
+ title: string | null;
20
+ url: string | null;
21
+ }
22
+ export interface PropstackPropertyStatus {
23
+ id: number;
24
+ name: string | null;
25
+ position: number | null;
26
+ color: string | null;
27
+ nonpublic: boolean | null;
28
+ }
29
+ export interface PropstackContactSource {
30
+ id: number;
31
+ name: string | null;
32
+ }
33
+ export interface PropstackActivityType {
34
+ id: number;
35
+ name: string | null;
36
+ /** Category: message, for_notes, for_reminders, for_events */
37
+ category: string | null;
38
+ decision_options?: unknown;
39
+ followup_activities?: unknown[];
40
+ next_property_status_id?: number | null;
41
+ next_client_status_id?: number | null;
42
+ next_deal_stage_id?: number | null;
43
+ }
44
+ export interface PropstackContactStatus {
45
+ id: number;
46
+ name: string | null;
47
+ }
48
+ export interface PropstackReservationReason {
49
+ id: number;
50
+ name: string | null;
51
+ }
52
+ export interface PropstackLocation {
53
+ id: number;
54
+ name: string | null;
55
+ }
56
+ export interface PropstackBroker {
57
+ id: number;
58
+ name: string | null;
59
+ first_name: string | null;
60
+ last_name: string | null;
61
+ email: string | null;
62
+ phone: string | null;
63
+ position: string | null;
64
+ team_id: number | null;
65
+ department_ids: number[] | null;
66
+ avatar: string | null;
67
+ color: string | null;
68
+ }
69
+ export interface PropstackTeam {
70
+ id: number;
71
+ name: string | null;
72
+ broker_ids: number[] | null;
73
+ logo: string | null;
74
+ }
75
+ export interface PropstackTag {
76
+ id: number;
77
+ name: string | null;
78
+ super_group_id: number | null;
79
+ for_clients: boolean | null;
80
+ for_properties: boolean | null;
81
+ for_activities: boolean | null;
82
+ }
83
+ export interface PropstackSuperGroup {
84
+ id: number;
85
+ name: string | null;
86
+ groups: PropstackTag[] | null;
87
+ }
88
+ export interface PropstackCustomField {
89
+ name: string | null;
90
+ pretty_name: string | null;
91
+ type: string | null;
92
+ options: string[] | null;
93
+ }
94
+ export interface PropstackCustomFieldGroup {
95
+ id: number;
96
+ name: string | null;
97
+ fields: PropstackCustomField[] | null;
98
+ }
99
+ export interface PropstackContact {
100
+ id: number;
101
+ name: string | null;
102
+ first_name: string | null;
103
+ last_name: string | null;
104
+ salutation: string | null;
105
+ email: string | null;
106
+ phone: string | null;
107
+ home_cell: string | null;
108
+ home_phone: string | null;
109
+ office_phone: string | null;
110
+ fax: string | null;
111
+ company: string | null;
112
+ position: string | null;
113
+ description: string | null;
114
+ home_street: string | null;
115
+ home_house_number: string | null;
116
+ home_zip_code: string | null;
117
+ home_city: string | null;
118
+ home_country: string | null;
119
+ office_street: string | null;
120
+ office_house_number: string | null;
121
+ office_zip_code: string | null;
122
+ office_city: string | null;
123
+ office_country: string | null;
124
+ broker_id: number | null;
125
+ broker: PropstackBroker | null;
126
+ client_source_id: number | null;
127
+ client_source: PropstackContactSource | null;
128
+ client_status_id: number | null;
129
+ client_status: PropstackContactStatus | null;
130
+ language: string | null;
131
+ rating: number | null;
132
+ newsletter: boolean | null;
133
+ accept_contact: boolean | null;
134
+ gdpr_status: number | null;
135
+ warning_notice: string | null;
136
+ groups: PropstackTag[] | null;
137
+ custom_fields: Record<string, unknown> | null;
138
+ last_contact_at: string | null;
139
+ last_contact_at_formatted: string | null;
140
+ created_at: string | null;
141
+ updated_at: string | null;
142
+ archived: boolean | null;
143
+ children?: PropstackContact[] | null;
144
+ documents?: PropstackDocument[] | null;
145
+ relationships?: PropstackRelationship[] | null;
146
+ owned_properties?: PropstackProperty[] | null;
147
+ old_crm_id: string | null;
148
+ }
149
+ export interface PropstackProperty {
150
+ id: number;
151
+ title: string | null;
152
+ unit_id: string | null;
153
+ exposee_id: string | null;
154
+ marketing_type: string | null;
155
+ object_type: string | null;
156
+ rs_type: string | null;
157
+ rs_category: string | null;
158
+ street: string | null;
159
+ house_number: string | null;
160
+ zip_code: string | null;
161
+ city: string | null;
162
+ country: string | null;
163
+ lat: number | null;
164
+ lng: number | null;
165
+ price: number | null;
166
+ base_rent: number | null;
167
+ total_rent: number | null;
168
+ living_space: number | null;
169
+ plot_area: number | null;
170
+ property_space_value: number | null;
171
+ number_of_rooms: number | null;
172
+ number_of_bed_rooms: number | null;
173
+ number_of_bath_rooms: number | null;
174
+ floor: number | null;
175
+ construction_year: number | null;
176
+ description_note: string | null;
177
+ location_note: string | null;
178
+ furnishing_note: string | null;
179
+ other_note: string | null;
180
+ courtage: string | null;
181
+ courtage_note: string | null;
182
+ broker_id: number | null;
183
+ broker: PropstackBroker | null;
184
+ project_id: number | null;
185
+ project: PropstackProject | null;
186
+ status: number | null;
187
+ property_status: PropstackPropertyStatus | null;
188
+ property_groups: PropstackTag[] | null;
189
+ custom_fields: Record<string, unknown> | null;
190
+ images: PropstackImage[] | null;
191
+ floorplans: PropstackImage[] | null;
192
+ documents: PropstackDocument[] | null;
193
+ links: PropstackLink[] | null;
194
+ created_at: string | null;
195
+ updated_at: string | null;
196
+ archived: boolean | null;
197
+ }
198
+ export interface PropstackDeal {
199
+ id: number;
200
+ broker_id: number | null;
201
+ client_id: number | null;
202
+ property_id: number | null;
203
+ project_id: number | null;
204
+ deal_stage_id: number | null;
205
+ deal_pipeline_id: number | null;
206
+ sold_price: number | null;
207
+ note: string | null;
208
+ date: string | null;
209
+ start_date: string | null;
210
+ reservation_reason_id: number | null;
211
+ feeling: number | null;
212
+ category: string | null;
213
+ client: PropstackContact | null;
214
+ property: PropstackProperty | null;
215
+ created_at: string | null;
216
+ updated_at: string | null;
217
+ }
218
+ export interface PropstackDealStage {
219
+ id: number;
220
+ name: string | null;
221
+ position: number | null;
222
+ color: string | null;
223
+ chance: number | null;
224
+ }
225
+ export interface PropstackDealPipeline {
226
+ id: number;
227
+ name: string | null;
228
+ broker_ids: number[] | null;
229
+ deal_stages: PropstackDealStage[] | null;
230
+ }
231
+ export interface PropstackTask {
232
+ id: number;
233
+ title: string | null;
234
+ body: string | null;
235
+ note_type_id: number | null;
236
+ broker_id: number | null;
237
+ client_ids: number[] | null;
238
+ property_ids: number[] | null;
239
+ project_ids: number[] | null;
240
+ is_reminder: boolean | null;
241
+ due_date: string | null;
242
+ remind_at: string | null;
243
+ done: boolean | null;
244
+ is_event: boolean | null;
245
+ starts_at: string | null;
246
+ ends_at: string | null;
247
+ location: string | null;
248
+ private: boolean | null;
249
+ all_day: boolean | null;
250
+ recurring: boolean | null;
251
+ rrule: string | null;
252
+ state: string | null;
253
+ reservation_reason_id: number | null;
254
+ attachments: PropstackAttachment[] | null;
255
+ clients?: PropstackContact[] | null;
256
+ units?: PropstackProperty[] | null;
257
+ projects?: PropstackProject[] | null;
258
+ viewings?: unknown[] | null;
259
+ created_at: string | null;
260
+ updated_at: string | null;
261
+ }
262
+ export interface PropstackAttachment {
263
+ id: number;
264
+ url: string | null;
265
+ name: string | null;
266
+ content_type: string | null;
267
+ }
268
+ export interface PropstackSearchProfile {
269
+ id: number;
270
+ client_id: number | null;
271
+ active: boolean | null;
272
+ marketing_type: string | null;
273
+ rs_types: string[] | null;
274
+ rs_categories: string[] | null;
275
+ cities: string[] | null;
276
+ regions: string[] | null;
277
+ lat: number | null;
278
+ lng: number | null;
279
+ radius: number | null;
280
+ price: number | null;
281
+ price_to: number | null;
282
+ base_rent: number | null;
283
+ base_rent_to: number | null;
284
+ total_rent: number | null;
285
+ total_rent_to: number | null;
286
+ living_space: number | null;
287
+ living_space_to: number | null;
288
+ plot_area: number | null;
289
+ plot_area_to: number | null;
290
+ number_of_rooms: number | null;
291
+ number_of_rooms_to: number | null;
292
+ number_of_bed_rooms: number | null;
293
+ number_of_bed_rooms_to: number | null;
294
+ floor: number | null;
295
+ floor_to: number | null;
296
+ construction_year: number | null;
297
+ construction_year_to: number | null;
298
+ lift: boolean | null;
299
+ balcony: boolean | null;
300
+ garden: boolean | null;
301
+ built_in_kitchen: boolean | null;
302
+ cellar: boolean | null;
303
+ rented: boolean | null;
304
+ price_per_sqm: number | null;
305
+ price_per_sqm_to: number | null;
306
+ price_multiplier: number | null;
307
+ price_multiplier_to: number | null;
308
+ yield_actual: number | null;
309
+ yield_actual_to: number | null;
310
+ note: string | null;
311
+ group_ids: number[] | null;
312
+ location_ids: number[] | null;
313
+ created_at: string | null;
314
+ updated_at: string | null;
315
+ }
316
+ export interface PropstackProject {
317
+ id: number;
318
+ title: string | null;
319
+ name: string | null;
320
+ status: string | null;
321
+ broker_id: number | null;
322
+ street: string | null;
323
+ house_number: string | null;
324
+ zip_code: string | null;
325
+ city: string | null;
326
+ country: string | null;
327
+ images: PropstackImage[] | null;
328
+ floorplans: PropstackImage[] | null;
329
+ documents: PropstackDocument[] | null;
330
+ links: PropstackLink[] | null;
331
+ units: PropstackProperty[] | null;
332
+ custom_fields: Record<string, unknown> | null;
333
+ created_at: string | null;
334
+ updated_at: string | null;
335
+ }
336
+ export interface PropstackEmail {
337
+ id: number;
338
+ subject: string | null;
339
+ body: string | null;
340
+ broker_id: number | null;
341
+ snippet_id: number | null;
342
+ from: string | null;
343
+ to: string[] | null;
344
+ cc: string[] | null;
345
+ bcc: string[] | null;
346
+ client_ids: number[] | null;
347
+ property_ids: number[] | null;
348
+ project_ids: number[] | null;
349
+ read: boolean | null;
350
+ archived: boolean | null;
351
+ message_category_id: number | null;
352
+ attachments: PropstackAttachment[] | null;
353
+ created_at: string | null;
354
+ updated_at: string | null;
355
+ }
356
+ export interface PropstackDocument {
357
+ id: number;
358
+ token: string | null;
359
+ title: string | null;
360
+ name: string | null;
361
+ url: string | null;
362
+ position: number | null;
363
+ broker_id: number | null;
364
+ is_private: boolean | null;
365
+ is_floorplan: boolean | null;
366
+ is_exposee: boolean | null;
367
+ on_landing_page: boolean | null;
368
+ tags: string[] | null;
369
+ created_at: string | null;
370
+ updated_at: string | null;
371
+ }
372
+ export interface PropstackActivity {
373
+ id: number;
374
+ type?: string | null;
375
+ /** API field: activity type — event, reminder, note, message, etc. */
376
+ conversation_type?: string | null;
377
+ title: string | null;
378
+ body: string | null;
379
+ broker_id: number | null;
380
+ client_id: number | null;
381
+ property_id: number | null;
382
+ project_id: number | null;
383
+ broker: PropstackBroker | null;
384
+ client: PropstackContact | null;
385
+ property: PropstackProperty | null;
386
+ created_at: string | null;
387
+ updated_at: string | null;
388
+ todo_id?: number | null;
389
+ appointment_id?: number | null;
390
+ note_id?: number | null;
391
+ message_id?: number | null;
392
+ }
393
+ export interface PropstackEvent {
394
+ id: number;
395
+ title: string | null;
396
+ body: string | null;
397
+ location: string | null;
398
+ starts_at: string | null;
399
+ ends_at: string | null;
400
+ state: string | null;
401
+ recurring: boolean | null;
402
+ rrule: string | null;
403
+ all_day: boolean | null;
404
+ private: boolean | null;
405
+ broker_id: number | null;
406
+ client: PropstackContact | null;
407
+ property: PropstackProperty | null;
408
+ group_ids: number[] | null;
409
+ created_at: string | null;
410
+ updated_at: string | null;
411
+ }
412
+ export interface PropstackWebhook {
413
+ id: number;
414
+ url: string | null;
415
+ events: string[] | null;
416
+ active: boolean | null;
417
+ secret: string | null;
418
+ }
419
+ export interface PropstackRelationship {
420
+ id: number;
421
+ client_id: number | null;
422
+ property_id: number | null;
423
+ internal_name: string | null;
424
+ name: string | null;
425
+ }
426
+ export interface PropstackPolicy {
427
+ id: number;
428
+ client_id: number | null;
429
+ broker_id: number | null;
430
+ type: string | null;
431
+ status: string | null;
432
+ created_at: string | null;
433
+ updated_at: string | null;
434
+ }
435
+ export interface PropstackPortalExport {
436
+ id: number;
437
+ property_id: number | null;
438
+ portal_name: string | null;
439
+ status: string | null;
440
+ url: string | null;
441
+ created_at: string | null;
442
+ updated_at: string | null;
443
+ }
444
+ //# sourceMappingURL=propstack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"propstack.d.ts","sourceRoot":"","sources":["../../src/types/propstack.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ // ── Generic pagination wrapper ───────────────────────────────────────
2
+ export {};
3
+ //# sourceMappingURL=propstack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"propstack.js","sourceRoot":"","sources":["../../src/types/propstack.ts"],"names":[],"mappings":"AAAA,wEAAwE"}
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "propstack-mcp-server",
3
+ "version": "1.0.0",
4
+ "type": "module",
5
+ "description": "MCP server for Propstack real estate CRM — connect AI assistants to your Propstack data",
6
+ "main": "dist/index.js",
7
+ "bin": {
8
+ "propstack-mcp-server": "dist/index.js"
9
+ },
10
+ "files": [
11
+ "dist",
12
+ "README.md",
13
+ "LICENSE"
14
+ ],
15
+ "scripts": {
16
+ "build": "tsc",
17
+ "start": "node dist/index.js",
18
+ "inspector": "npx @modelcontextprotocol/inspector -- node dist/index.js",
19
+ "prepublishOnly": "npm run build"
20
+ },
21
+ "keywords": [
22
+ "mcp",
23
+ "propstack",
24
+ "real-estate",
25
+ "crm",
26
+ "immobilien",
27
+ "makler",
28
+ "ai",
29
+ "claude",
30
+ "chatgpt"
31
+ ],
32
+ "author": "",
33
+ "license": "MIT",
34
+ "repository": {
35
+ "type": "git",
36
+ "url": "https://github.com/your-org/propstack-mcp-server.git"
37
+ },
38
+ "homepage": "https://github.com/your-org/propstack-mcp-server#readme",
39
+ "bugs": {
40
+ "url": "https://github.com/your-org/propstack-mcp-server/issues"
41
+ },
42
+ "engines": {
43
+ "node": ">=18"
44
+ },
45
+ "dependencies": {
46
+ "@modelcontextprotocol/sdk": "^1.26.0",
47
+ "dotenv": "^17.3.1",
48
+ "zod": "^4.3.6"
49
+ },
50
+ "devDependencies": {
51
+ "@types/node": "^25.2.3",
52
+ "typescript": "^5.9.3"
53
+ }
54
+ }