@snokam/mcp-api 1.2.0 → 1.3.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snokam/mcp-api",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "description": "MCP server exposing Snokam backend APIs as tools for Claude Code and other MCP clients",
5
5
  "type": "module",
6
6
  "bin": {
@@ -34,6 +34,150 @@
34
34
  }
35
35
  }
36
36
  },
37
+ "/v1.0/tenders/{id}/documents": {
38
+ "get": {
39
+ "tags": [
40
+ "Documents"
41
+ ],
42
+ "summary": "List documents for a tender",
43
+ "operationId": "ListTenderDocuments",
44
+ "parameters": [
45
+ {
46
+ "name": "id",
47
+ "in": "path",
48
+ "required": true,
49
+ "schema": {
50
+ "type": "string"
51
+ }
52
+ }
53
+ ],
54
+ "responses": {
55
+ "200": {
56
+ "description": "Payload of Array of TenderDocument",
57
+ "content": {
58
+ "application/json": {
59
+ "schema": {
60
+ "type": "array",
61
+ "items": {
62
+ "$ref": "#/components/schemas/tenderDocument"
63
+ }
64
+ }
65
+ }
66
+ }
67
+ },
68
+ "404": {
69
+ "description": "No description"
70
+ }
71
+ },
72
+ "security": [
73
+ {
74
+ "Implicit": [
75
+ "api://7e877854-e62d-4637-a655-1da7141f7ac9/.default"
76
+ ]
77
+ }
78
+ ]
79
+ }
80
+ },
81
+ "/v1.0/tenders/{id}/documents/{docId}/download-url": {
82
+ "get": {
83
+ "tags": [
84
+ "Documents"
85
+ ],
86
+ "summary": "Get a short-lived download URL for a document",
87
+ "operationId": "GetDocumentDownloadUrl",
88
+ "parameters": [
89
+ {
90
+ "name": "id",
91
+ "in": "path",
92
+ "required": true,
93
+ "schema": {
94
+ "type": "string"
95
+ }
96
+ },
97
+ {
98
+ "name": "docId",
99
+ "in": "path",
100
+ "required": true,
101
+ "schema": {
102
+ "type": "string"
103
+ }
104
+ }
105
+ ],
106
+ "responses": {
107
+ "200": {
108
+ "description": "Payload of Object",
109
+ "content": {
110
+ "application/json": {
111
+ "schema": {
112
+ "type": "object"
113
+ }
114
+ }
115
+ }
116
+ },
117
+ "404": {
118
+ "description": "No description"
119
+ }
120
+ },
121
+ "security": [
122
+ {
123
+ "Implicit": [
124
+ "api://7e877854-e62d-4637-a655-1da7141f7ac9/.default"
125
+ ]
126
+ }
127
+ ]
128
+ }
129
+ },
130
+ "/v1.0/tenders/{id}/competence-matrix": {
131
+ "post": {
132
+ "tags": [
133
+ "Documents"
134
+ ],
135
+ "summary": "Start a competence matrix generation job",
136
+ "operationId": "StartCompetenceMatrix",
137
+ "parameters": [
138
+ {
139
+ "name": "id",
140
+ "in": "path",
141
+ "required": true,
142
+ "schema": {
143
+ "type": "string"
144
+ }
145
+ }
146
+ ],
147
+ "requestBody": {
148
+ "content": {
149
+ "application/json": {
150
+ "schema": {
151
+ "$ref": "#/components/schemas/competenceMatrixRequest"
152
+ }
153
+ }
154
+ },
155
+ "required": true
156
+ },
157
+ "responses": {
158
+ "202": {
159
+ "description": "Payload of Object",
160
+ "content": {
161
+ "application/json": {
162
+ "schema": {
163
+ "type": "object"
164
+ }
165
+ }
166
+ }
167
+ },
168
+ "404": {
169
+ "description": "No description"
170
+ }
171
+ },
172
+ "security": [
173
+ {
174
+ "Implicit": [
175
+ "api://7e877854-e62d-4637-a655-1da7141f7ac9/.default"
176
+ ]
177
+ }
178
+ ]
179
+ }
180
+ },
37
181
  "/v1.0/tenders": {
38
182
  "get": {
39
183
  "tags": [
@@ -306,6 +450,22 @@
306
450
  },
307
451
  "components": {
308
452
  "schemas": {
453
+ "competenceMatrixRequest": {
454
+ "type": "object",
455
+ "properties": {
456
+ "consultantIds": {
457
+ "type": "array",
458
+ "items": {
459
+ "type": "string"
460
+ },
461
+ "nullable": true
462
+ },
463
+ "templateDocumentId": {
464
+ "type": "string",
465
+ "nullable": true
466
+ }
467
+ }
468
+ },
309
469
  "consultantMatch": {
310
470
  "type": "object",
311
471
  "properties": {
@@ -347,6 +507,22 @@
347
507
  "selected": {
348
508
  "type": "boolean",
349
509
  "nullable": true
510
+ },
511
+ "fitExplanation": {
512
+ "type": "string",
513
+ "nullable": true
514
+ },
515
+ "cvSummary": {
516
+ "type": "string",
517
+ "nullable": true
518
+ },
519
+ "seniority": {
520
+ "type": "string",
521
+ "nullable": true
522
+ },
523
+ "email": {
524
+ "type": "string",
525
+ "nullable": true
350
526
  }
351
527
  }
352
528
  },
@@ -473,6 +649,25 @@
473
649
  },
474
650
  "audit": {
475
651
  "$ref": "#/components/schemas/tenderAudit"
652
+ },
653
+ "description": {
654
+ "type": "string",
655
+ "nullable": true
656
+ },
657
+ "summary": {
658
+ "type": "string",
659
+ "nullable": true
660
+ },
661
+ "timeline": {
662
+ "type": "array",
663
+ "items": {
664
+ "$ref": "#/components/schemas/timelineEvent"
665
+ },
666
+ "nullable": true
667
+ },
668
+ "blobContainer": {
669
+ "type": "string",
670
+ "nullable": true
476
671
  }
477
672
  }
478
673
  },
@@ -610,6 +805,36 @@
610
805
  "type": "string",
611
806
  "format": "date-time",
612
807
  "nullable": true
808
+ },
809
+ "blobPath": {
810
+ "type": "string",
811
+ "nullable": true
812
+ },
813
+ "blobUrl": {
814
+ "type": "string",
815
+ "nullable": true
816
+ },
817
+ "sourceUrl": {
818
+ "type": "string",
819
+ "nullable": true
820
+ },
821
+ "mimeType": {
822
+ "type": "string",
823
+ "nullable": true
824
+ },
825
+ "sizeBytes": {
826
+ "type": "integer",
827
+ "format": "int64",
828
+ "nullable": true
829
+ },
830
+ "downloadedAt": {
831
+ "type": "string",
832
+ "format": "date-time",
833
+ "nullable": true
834
+ },
835
+ "textContent": {
836
+ "type": "string",
837
+ "nullable": true
613
838
  }
614
839
  }
615
840
  },
@@ -747,6 +972,40 @@
747
972
  "nullable": true
748
973
  }
749
974
  }
975
+ },
976
+ "timelineEvent": {
977
+ "type": "object",
978
+ "properties": {
979
+ "id": {
980
+ "type": "string",
981
+ "nullable": true
982
+ },
983
+ "title": {
984
+ "type": "string",
985
+ "nullable": true
986
+ },
987
+ "description": {
988
+ "type": "string",
989
+ "nullable": true
990
+ },
991
+ "dueAt": {
992
+ "type": "string",
993
+ "format": "date-time",
994
+ "nullable": true
995
+ },
996
+ "category": {
997
+ "type": "string",
998
+ "nullable": true
999
+ },
1000
+ "mandatory": {
1001
+ "type": "boolean",
1002
+ "nullable": true
1003
+ },
1004
+ "status": {
1005
+ "type": "string",
1006
+ "nullable": true
1007
+ }
1008
+ }
750
1009
  }
751
1010
  },
752
1011
  "securitySchemes": {
@@ -34,6 +34,150 @@
34
34
  }
35
35
  }
36
36
  },
37
+ "/v1.0/tenders/{id}/documents": {
38
+ "get": {
39
+ "tags": [
40
+ "Documents"
41
+ ],
42
+ "summary": "List documents for a tender",
43
+ "operationId": "ListTenderDocuments",
44
+ "parameters": [
45
+ {
46
+ "name": "id",
47
+ "in": "path",
48
+ "required": true,
49
+ "schema": {
50
+ "type": "string"
51
+ }
52
+ }
53
+ ],
54
+ "responses": {
55
+ "200": {
56
+ "description": "Payload of Array of TenderDocument",
57
+ "content": {
58
+ "application/json": {
59
+ "schema": {
60
+ "type": "array",
61
+ "items": {
62
+ "$ref": "#/components/schemas/tenderDocument"
63
+ }
64
+ }
65
+ }
66
+ }
67
+ },
68
+ "404": {
69
+ "description": "No description"
70
+ }
71
+ },
72
+ "security": [
73
+ {
74
+ "Implicit": [
75
+ "api://d7f15838-af74-4048-88b3-503089de0064/.default"
76
+ ]
77
+ }
78
+ ]
79
+ }
80
+ },
81
+ "/v1.0/tenders/{id}/documents/{docId}/download-url": {
82
+ "get": {
83
+ "tags": [
84
+ "Documents"
85
+ ],
86
+ "summary": "Get a short-lived download URL for a document",
87
+ "operationId": "GetDocumentDownloadUrl",
88
+ "parameters": [
89
+ {
90
+ "name": "id",
91
+ "in": "path",
92
+ "required": true,
93
+ "schema": {
94
+ "type": "string"
95
+ }
96
+ },
97
+ {
98
+ "name": "docId",
99
+ "in": "path",
100
+ "required": true,
101
+ "schema": {
102
+ "type": "string"
103
+ }
104
+ }
105
+ ],
106
+ "responses": {
107
+ "200": {
108
+ "description": "Payload of Object",
109
+ "content": {
110
+ "application/json": {
111
+ "schema": {
112
+ "type": "object"
113
+ }
114
+ }
115
+ }
116
+ },
117
+ "404": {
118
+ "description": "No description"
119
+ }
120
+ },
121
+ "security": [
122
+ {
123
+ "Implicit": [
124
+ "api://d7f15838-af74-4048-88b3-503089de0064/.default"
125
+ ]
126
+ }
127
+ ]
128
+ }
129
+ },
130
+ "/v1.0/tenders/{id}/competence-matrix": {
131
+ "post": {
132
+ "tags": [
133
+ "Documents"
134
+ ],
135
+ "summary": "Start a competence matrix generation job",
136
+ "operationId": "StartCompetenceMatrix",
137
+ "parameters": [
138
+ {
139
+ "name": "id",
140
+ "in": "path",
141
+ "required": true,
142
+ "schema": {
143
+ "type": "string"
144
+ }
145
+ }
146
+ ],
147
+ "requestBody": {
148
+ "content": {
149
+ "application/json": {
150
+ "schema": {
151
+ "$ref": "#/components/schemas/competenceMatrixRequest"
152
+ }
153
+ }
154
+ },
155
+ "required": true
156
+ },
157
+ "responses": {
158
+ "202": {
159
+ "description": "Payload of Object",
160
+ "content": {
161
+ "application/json": {
162
+ "schema": {
163
+ "type": "object"
164
+ }
165
+ }
166
+ }
167
+ },
168
+ "404": {
169
+ "description": "No description"
170
+ }
171
+ },
172
+ "security": [
173
+ {
174
+ "Implicit": [
175
+ "api://d7f15838-af74-4048-88b3-503089de0064/.default"
176
+ ]
177
+ }
178
+ ]
179
+ }
180
+ },
37
181
  "/v1.0/tenders": {
38
182
  "get": {
39
183
  "tags": [
@@ -306,6 +450,22 @@
306
450
  },
307
451
  "components": {
308
452
  "schemas": {
453
+ "competenceMatrixRequest": {
454
+ "type": "object",
455
+ "properties": {
456
+ "consultantIds": {
457
+ "type": "array",
458
+ "items": {
459
+ "type": "string"
460
+ },
461
+ "nullable": true
462
+ },
463
+ "templateDocumentId": {
464
+ "type": "string",
465
+ "nullable": true
466
+ }
467
+ }
468
+ },
309
469
  "consultantMatch": {
310
470
  "type": "object",
311
471
  "properties": {
@@ -347,6 +507,22 @@
347
507
  "selected": {
348
508
  "type": "boolean",
349
509
  "nullable": true
510
+ },
511
+ "fitExplanation": {
512
+ "type": "string",
513
+ "nullable": true
514
+ },
515
+ "cvSummary": {
516
+ "type": "string",
517
+ "nullable": true
518
+ },
519
+ "seniority": {
520
+ "type": "string",
521
+ "nullable": true
522
+ },
523
+ "email": {
524
+ "type": "string",
525
+ "nullable": true
350
526
  }
351
527
  }
352
528
  },
@@ -473,6 +649,25 @@
473
649
  },
474
650
  "audit": {
475
651
  "$ref": "#/components/schemas/tenderAudit"
652
+ },
653
+ "description": {
654
+ "type": "string",
655
+ "nullable": true
656
+ },
657
+ "summary": {
658
+ "type": "string",
659
+ "nullable": true
660
+ },
661
+ "timeline": {
662
+ "type": "array",
663
+ "items": {
664
+ "$ref": "#/components/schemas/timelineEvent"
665
+ },
666
+ "nullable": true
667
+ },
668
+ "blobContainer": {
669
+ "type": "string",
670
+ "nullable": true
476
671
  }
477
672
  }
478
673
  },
@@ -610,6 +805,36 @@
610
805
  "type": "string",
611
806
  "format": "date-time",
612
807
  "nullable": true
808
+ },
809
+ "blobPath": {
810
+ "type": "string",
811
+ "nullable": true
812
+ },
813
+ "blobUrl": {
814
+ "type": "string",
815
+ "nullable": true
816
+ },
817
+ "sourceUrl": {
818
+ "type": "string",
819
+ "nullable": true
820
+ },
821
+ "mimeType": {
822
+ "type": "string",
823
+ "nullable": true
824
+ },
825
+ "sizeBytes": {
826
+ "type": "integer",
827
+ "format": "int64",
828
+ "nullable": true
829
+ },
830
+ "downloadedAt": {
831
+ "type": "string",
832
+ "format": "date-time",
833
+ "nullable": true
834
+ },
835
+ "textContent": {
836
+ "type": "string",
837
+ "nullable": true
613
838
  }
614
839
  }
615
840
  },
@@ -747,6 +972,40 @@
747
972
  "nullable": true
748
973
  }
749
974
  }
975
+ },
976
+ "timelineEvent": {
977
+ "type": "object",
978
+ "properties": {
979
+ "id": {
980
+ "type": "string",
981
+ "nullable": true
982
+ },
983
+ "title": {
984
+ "type": "string",
985
+ "nullable": true
986
+ },
987
+ "description": {
988
+ "type": "string",
989
+ "nullable": true
990
+ },
991
+ "dueAt": {
992
+ "type": "string",
993
+ "format": "date-time",
994
+ "nullable": true
995
+ },
996
+ "category": {
997
+ "type": "string",
998
+ "nullable": true
999
+ },
1000
+ "mandatory": {
1001
+ "type": "boolean",
1002
+ "nullable": true
1003
+ },
1004
+ "status": {
1005
+ "type": "string",
1006
+ "nullable": true
1007
+ }
1008
+ }
750
1009
  }
751
1010
  },
752
1011
  "securitySchemes": {