@snokam/mcp-api 2.7.1 → 2.9.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": "2.7.1",
3
+ "version": "2.9.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,164 @@
34
34
  }
35
35
  }
36
36
  },
37
+ "/v1.0/tenders/{id}/match-consultants": {
38
+ "post": {
39
+ "tags": [
40
+ "Tenders"
41
+ ],
42
+ "summary": "Start CV matching for a tender",
43
+ "operationId": "StartCvMatching",
44
+ "parameters": [
45
+ {
46
+ "name": "id",
47
+ "in": "path",
48
+ "required": true,
49
+ "schema": {
50
+ "type": "string"
51
+ }
52
+ }
53
+ ],
54
+ "responses": {
55
+ "202": {
56
+ "description": "Payload of Object",
57
+ "content": {
58
+ "application/json": {
59
+ "schema": {
60
+ "type": "object"
61
+ }
62
+ }
63
+ }
64
+ },
65
+ "404": {
66
+ "description": "No description"
67
+ }
68
+ },
69
+ "security": [
70
+ {
71
+ "Implicit": [
72
+ "api://7e877854-e62d-4637-a655-1da7141f7ac9/.default"
73
+ ]
74
+ }
75
+ ]
76
+ }
77
+ },
78
+ "/v1.0/tenders/ingest": {
79
+ "post": {
80
+ "tags": [
81
+ "Tenders"
82
+ ],
83
+ "summary": "Start tender ingestion",
84
+ "operationId": "StartTenderIngestion",
85
+ "requestBody": {
86
+ "content": {
87
+ "application/json": {
88
+ "schema": {
89
+ "$ref": "#/components/schemas/ingestionRequest"
90
+ }
91
+ }
92
+ },
93
+ "required": true
94
+ },
95
+ "responses": {
96
+ "202": {
97
+ "description": "Payload of Object",
98
+ "content": {
99
+ "application/json": {
100
+ "schema": {
101
+ "type": "object"
102
+ }
103
+ }
104
+ }
105
+ }
106
+ },
107
+ "security": [
108
+ {
109
+ "Implicit": [
110
+ "api://7e877854-e62d-4637-a655-1da7141f7ac9/.default"
111
+ ]
112
+ }
113
+ ]
114
+ }
115
+ },
116
+ "/v1.0/jobs/{jobId}": {
117
+ "get": {
118
+ "tags": [
119
+ "Admin"
120
+ ],
121
+ "summary": "Get agent job by ID",
122
+ "operationId": "GetAgentJob",
123
+ "parameters": [
124
+ {
125
+ "name": "jobId",
126
+ "in": "path",
127
+ "required": true,
128
+ "schema": {
129
+ "type": "string"
130
+ }
131
+ }
132
+ ],
133
+ "responses": {
134
+ "200": {
135
+ "description": "Payload of AgentJob",
136
+ "content": {
137
+ "application/json": {
138
+ "schema": {
139
+ "$ref": "#/components/schemas/agentJob"
140
+ }
141
+ }
142
+ }
143
+ },
144
+ "404": {
145
+ "description": "No description"
146
+ }
147
+ },
148
+ "security": [
149
+ {
150
+ "Implicit": [
151
+ "api://7e877854-e62d-4637-a655-1da7141f7ac9/.default"
152
+ ]
153
+ }
154
+ ]
155
+ }
156
+ },
157
+ "/v1.0/admin/reprocess-ingestion": {
158
+ "post": {
159
+ "tags": [
160
+ "Admin"
161
+ ],
162
+ "summary": "Batch reprocess tender ingestion",
163
+ "operationId": "ReprocessIngestion",
164
+ "parameters": [
165
+ {
166
+ "name": "unmatchedOnly",
167
+ "in": "query",
168
+ "description": "If true, only reprocess tenders with no existing consultant matches",
169
+ "schema": {
170
+ "type": "boolean"
171
+ }
172
+ }
173
+ ],
174
+ "responses": {
175
+ "200": {
176
+ "description": "Payload of Object",
177
+ "content": {
178
+ "application/json": {
179
+ "schema": {
180
+ "type": "object"
181
+ }
182
+ }
183
+ }
184
+ }
185
+ },
186
+ "security": [
187
+ {
188
+ "Implicit": [
189
+ "api://7e877854-e62d-4637-a655-1da7141f7ac9/.default"
190
+ ]
191
+ }
192
+ ]
193
+ }
194
+ },
37
195
  "/v1.0/scan/doffin": {
38
196
  "post": {
39
197
  "tags": [
@@ -892,8 +1050,7 @@
892
1050
  "type": "string",
893
1051
  "nullable": true
894
1052
  }
895
- },
896
- "nullable": true
1053
+ }
897
1054
  },
898
1055
  "consultantAnswers": {
899
1056
  "type": "object",
@@ -1087,6 +1244,60 @@
1087
1244
  },
1088
1245
  "nullable": true
1089
1246
  },
1247
+ "ingestionAttachment": {
1248
+ "type": "object",
1249
+ "properties": {
1250
+ "name": {
1251
+ "type": "string",
1252
+ "nullable": true
1253
+ },
1254
+ "contentType": {
1255
+ "type": "string",
1256
+ "nullable": true
1257
+ },
1258
+ "blobPath": {
1259
+ "type": "string",
1260
+ "nullable": true
1261
+ },
1262
+ "sizeBytes": {
1263
+ "type": "integer",
1264
+ "format": "int64",
1265
+ "nullable": true
1266
+ }
1267
+ }
1268
+ },
1269
+ "ingestionRequest": {
1270
+ "type": "object",
1271
+ "properties": {
1272
+ "sourceType": {
1273
+ "type": "string",
1274
+ "nullable": true
1275
+ },
1276
+ "content": {
1277
+ "type": "string",
1278
+ "nullable": true
1279
+ },
1280
+ "title": {
1281
+ "type": "string",
1282
+ "nullable": true
1283
+ },
1284
+ "existingTenderId": {
1285
+ "type": "string",
1286
+ "nullable": true
1287
+ },
1288
+ "externalId": {
1289
+ "type": "string",
1290
+ "nullable": true
1291
+ },
1292
+ "attachments": {
1293
+ "type": "array",
1294
+ "items": {
1295
+ "$ref": "#/components/schemas/ingestionAttachment"
1296
+ },
1297
+ "nullable": true
1298
+ }
1299
+ }
1300
+ },
1090
1301
  "patchDocumentRequest": {
1091
1302
  "type": "object",
1092
1303
  "properties": {
@@ -34,6 +34,164 @@
34
34
  }
35
35
  }
36
36
  },
37
+ "/v1.0/tenders/{id}/match-consultants": {
38
+ "post": {
39
+ "tags": [
40
+ "Tenders"
41
+ ],
42
+ "summary": "Start CV matching for a tender",
43
+ "operationId": "StartCvMatching",
44
+ "parameters": [
45
+ {
46
+ "name": "id",
47
+ "in": "path",
48
+ "required": true,
49
+ "schema": {
50
+ "type": "string"
51
+ }
52
+ }
53
+ ],
54
+ "responses": {
55
+ "202": {
56
+ "description": "Payload of Object",
57
+ "content": {
58
+ "application/json": {
59
+ "schema": {
60
+ "type": "object"
61
+ }
62
+ }
63
+ }
64
+ },
65
+ "404": {
66
+ "description": "No description"
67
+ }
68
+ },
69
+ "security": [
70
+ {
71
+ "Implicit": [
72
+ "api://d7f15838-af74-4048-88b3-503089de0064/.default"
73
+ ]
74
+ }
75
+ ]
76
+ }
77
+ },
78
+ "/v1.0/tenders/ingest": {
79
+ "post": {
80
+ "tags": [
81
+ "Tenders"
82
+ ],
83
+ "summary": "Start tender ingestion",
84
+ "operationId": "StartTenderIngestion",
85
+ "requestBody": {
86
+ "content": {
87
+ "application/json": {
88
+ "schema": {
89
+ "$ref": "#/components/schemas/ingestionRequest"
90
+ }
91
+ }
92
+ },
93
+ "required": true
94
+ },
95
+ "responses": {
96
+ "202": {
97
+ "description": "Payload of Object",
98
+ "content": {
99
+ "application/json": {
100
+ "schema": {
101
+ "type": "object"
102
+ }
103
+ }
104
+ }
105
+ }
106
+ },
107
+ "security": [
108
+ {
109
+ "Implicit": [
110
+ "api://d7f15838-af74-4048-88b3-503089de0064/.default"
111
+ ]
112
+ }
113
+ ]
114
+ }
115
+ },
116
+ "/v1.0/jobs/{jobId}": {
117
+ "get": {
118
+ "tags": [
119
+ "Admin"
120
+ ],
121
+ "summary": "Get agent job by ID",
122
+ "operationId": "GetAgentJob",
123
+ "parameters": [
124
+ {
125
+ "name": "jobId",
126
+ "in": "path",
127
+ "required": true,
128
+ "schema": {
129
+ "type": "string"
130
+ }
131
+ }
132
+ ],
133
+ "responses": {
134
+ "200": {
135
+ "description": "Payload of AgentJob",
136
+ "content": {
137
+ "application/json": {
138
+ "schema": {
139
+ "$ref": "#/components/schemas/agentJob"
140
+ }
141
+ }
142
+ }
143
+ },
144
+ "404": {
145
+ "description": "No description"
146
+ }
147
+ },
148
+ "security": [
149
+ {
150
+ "Implicit": [
151
+ "api://d7f15838-af74-4048-88b3-503089de0064/.default"
152
+ ]
153
+ }
154
+ ]
155
+ }
156
+ },
157
+ "/v1.0/admin/reprocess-ingestion": {
158
+ "post": {
159
+ "tags": [
160
+ "Admin"
161
+ ],
162
+ "summary": "Batch reprocess tender ingestion",
163
+ "operationId": "ReprocessIngestion",
164
+ "parameters": [
165
+ {
166
+ "name": "unmatchedOnly",
167
+ "in": "query",
168
+ "description": "If true, only reprocess tenders with no existing consultant matches",
169
+ "schema": {
170
+ "type": "boolean"
171
+ }
172
+ }
173
+ ],
174
+ "responses": {
175
+ "200": {
176
+ "description": "Payload of Object",
177
+ "content": {
178
+ "application/json": {
179
+ "schema": {
180
+ "type": "object"
181
+ }
182
+ }
183
+ }
184
+ }
185
+ },
186
+ "security": [
187
+ {
188
+ "Implicit": [
189
+ "api://d7f15838-af74-4048-88b3-503089de0064/.default"
190
+ ]
191
+ }
192
+ ]
193
+ }
194
+ },
37
195
  "/v1.0/scan/doffin": {
38
196
  "post": {
39
197
  "tags": [
@@ -892,8 +1050,7 @@
892
1050
  "type": "string",
893
1051
  "nullable": true
894
1052
  }
895
- },
896
- "nullable": true
1053
+ }
897
1054
  },
898
1055
  "consultantAnswers": {
899
1056
  "type": "object",
@@ -1087,6 +1244,60 @@
1087
1244
  },
1088
1245
  "nullable": true
1089
1246
  },
1247
+ "ingestionAttachment": {
1248
+ "type": "object",
1249
+ "properties": {
1250
+ "name": {
1251
+ "type": "string",
1252
+ "nullable": true
1253
+ },
1254
+ "contentType": {
1255
+ "type": "string",
1256
+ "nullable": true
1257
+ },
1258
+ "blobPath": {
1259
+ "type": "string",
1260
+ "nullable": true
1261
+ },
1262
+ "sizeBytes": {
1263
+ "type": "integer",
1264
+ "format": "int64",
1265
+ "nullable": true
1266
+ }
1267
+ }
1268
+ },
1269
+ "ingestionRequest": {
1270
+ "type": "object",
1271
+ "properties": {
1272
+ "sourceType": {
1273
+ "type": "string",
1274
+ "nullable": true
1275
+ },
1276
+ "content": {
1277
+ "type": "string",
1278
+ "nullable": true
1279
+ },
1280
+ "title": {
1281
+ "type": "string",
1282
+ "nullable": true
1283
+ },
1284
+ "existingTenderId": {
1285
+ "type": "string",
1286
+ "nullable": true
1287
+ },
1288
+ "externalId": {
1289
+ "type": "string",
1290
+ "nullable": true
1291
+ },
1292
+ "attachments": {
1293
+ "type": "array",
1294
+ "items": {
1295
+ "$ref": "#/components/schemas/ingestionAttachment"
1296
+ },
1297
+ "nullable": true
1298
+ }
1299
+ }
1300
+ },
1090
1301
  "patchDocumentRequest": {
1091
1302
  "type": "object",
1092
1303
  "properties": {