@snokam/mcp-api 0.83.0 → 0.85.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": "0.83.0",
3
+ "version": "0.85.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": {
@@ -4590,6 +4590,9 @@
4590
4590
  "name": {
4591
4591
  "type": "string"
4592
4592
  },
4593
+ "permissions": {
4594
+ "type": "string"
4595
+ },
4593
4596
  "sanityCreatedAt": {
4594
4597
  "type": "string"
4595
4598
  },
@@ -4999,7 +5002,8 @@
4999
5002
  "totalShares",
5000
5003
  "currentOwnership",
5001
5004
  "recentTransactions",
5002
- "ownershipHistory"
5005
+ "ownershipHistory",
5006
+ "valuationParameters"
5003
5007
  ],
5004
5008
  "type": "object",
5005
5009
  "properties": {
@@ -5035,6 +5039,9 @@
5035
5039
  "type": "number",
5036
5040
  "format": "double",
5037
5041
  "nullable": true
5042
+ },
5043
+ "valuationParameters": {
5044
+ "$ref": "#/components/schemas/valuationParameters"
5038
5045
  }
5039
5046
  }
5040
5047
  },
@@ -5741,6 +5748,38 @@
5741
5748
  }
5742
5749
  }
5743
5750
  },
5751
+ "valuationParameters": {
5752
+ "required": [
5753
+ "hourlyRate",
5754
+ "billableHours",
5755
+ "invoicingRate",
5756
+ "margin",
5757
+ "multiple"
5758
+ ],
5759
+ "type": "object",
5760
+ "properties": {
5761
+ "hourlyRate": {
5762
+ "type": "integer",
5763
+ "format": "int32"
5764
+ },
5765
+ "billableHours": {
5766
+ "type": "integer",
5767
+ "format": "int32"
5768
+ },
5769
+ "invoicingRate": {
5770
+ "type": "number",
5771
+ "format": "double"
5772
+ },
5773
+ "margin": {
5774
+ "type": "number",
5775
+ "format": "double"
5776
+ },
5777
+ "multiple": {
5778
+ "type": "number",
5779
+ "format": "double"
5780
+ }
5781
+ }
5782
+ },
5744
5783
  "wageRate": {
5745
5784
  "required": [
5746
5785
  "sickLeave",
@@ -22209,6 +22209,9 @@
22209
22209
  ],
22210
22210
  "type": "object"
22211
22211
  },
22212
+ "permissions": {
22213
+ "type": "string"
22214
+ },
22212
22215
  "leaders": {
22213
22216
  "items": {
22214
22217
  "properties": {
@@ -29697,6 +29700,9 @@
29697
29700
  ],
29698
29701
  "type": "object"
29699
29702
  },
29703
+ "permissions": {
29704
+ "type": "string"
29705
+ },
29700
29706
  "leaders": {
29701
29707
  "items": {
29702
29708
  "allOf": [
@@ -137,6 +137,40 @@
137
137
  ]
138
138
  }
139
139
  },
140
+ "/v1.0/sanity-groups-to-azure-ad": {
141
+ "get": {
142
+ "tags": [
143
+ "Sync"
144
+ ],
145
+ "summary": "Syncs Sanity workgroups to Azure AD",
146
+ "description": "Mirrors the Sanity workgroup taxonomy to Azure AD security groups, and reconciles each group's membership against the Sanity-tracked employees. Same handler the cron runs.",
147
+ "operationId": "SyncSanityGroupsToAzureAd",
148
+ "responses": {
149
+ "200": {
150
+ "description": "Sync stats — groups created/updated, members added/removed.",
151
+ "content": {
152
+ "application/json": {
153
+ "schema": {
154
+ "$ref": "#/components/schemas/syncSanityGroupsResult"
155
+ }
156
+ }
157
+ },
158
+ "x-ms-summary": "Success"
159
+ },
160
+ "401": {
161
+ "description": "Unauthorized access",
162
+ "x-ms-summary": "Unauthorized"
163
+ }
164
+ },
165
+ "security": [
166
+ {
167
+ "Implicit": [
168
+ "api://854bbe76-5f97-44df-ac8c-6b9c5562a500/.default"
169
+ ]
170
+ }
171
+ ]
172
+ }
173
+ },
140
174
  "/v1.0/okrs-to-sanity": {
141
175
  "get": {
142
176
  "tags": [
@@ -162,6 +196,29 @@
162
196
  }
163
197
  },
164
198
  "components": {
199
+ "schemas": {
200
+ "syncSanityGroupsResult": {
201
+ "type": "object",
202
+ "properties": {
203
+ "groupsCreated": {
204
+ "type": "integer",
205
+ "format": "int32"
206
+ },
207
+ "groupsUpdated": {
208
+ "type": "integer",
209
+ "format": "int32"
210
+ },
211
+ "membersAdded": {
212
+ "type": "integer",
213
+ "format": "int32"
214
+ },
215
+ "membersRemoved": {
216
+ "type": "integer",
217
+ "format": "int32"
218
+ }
219
+ }
220
+ }
221
+ },
165
222
  "securitySchemes": {
166
223
  "Implicit": {
167
224
  "type": "oauth2",
@@ -4590,6 +4590,9 @@
4590
4590
  "name": {
4591
4591
  "type": "string"
4592
4592
  },
4593
+ "permissions": {
4594
+ "type": "string"
4595
+ },
4593
4596
  "sanityCreatedAt": {
4594
4597
  "type": "string"
4595
4598
  },
@@ -4999,7 +5002,8 @@
4999
5002
  "totalShares",
5000
5003
  "currentOwnership",
5001
5004
  "recentTransactions",
5002
- "ownershipHistory"
5005
+ "ownershipHistory",
5006
+ "valuationParameters"
5003
5007
  ],
5004
5008
  "type": "object",
5005
5009
  "properties": {
@@ -5035,6 +5039,9 @@
5035
5039
  "type": "number",
5036
5040
  "format": "double",
5037
5041
  "nullable": true
5042
+ },
5043
+ "valuationParameters": {
5044
+ "$ref": "#/components/schemas/valuationParameters"
5038
5045
  }
5039
5046
  }
5040
5047
  },
@@ -5741,6 +5748,38 @@
5741
5748
  }
5742
5749
  }
5743
5750
  },
5751
+ "valuationParameters": {
5752
+ "required": [
5753
+ "hourlyRate",
5754
+ "billableHours",
5755
+ "invoicingRate",
5756
+ "margin",
5757
+ "multiple"
5758
+ ],
5759
+ "type": "object",
5760
+ "properties": {
5761
+ "hourlyRate": {
5762
+ "type": "integer",
5763
+ "format": "int32"
5764
+ },
5765
+ "billableHours": {
5766
+ "type": "integer",
5767
+ "format": "int32"
5768
+ },
5769
+ "invoicingRate": {
5770
+ "type": "number",
5771
+ "format": "double"
5772
+ },
5773
+ "margin": {
5774
+ "type": "number",
5775
+ "format": "double"
5776
+ },
5777
+ "multiple": {
5778
+ "type": "number",
5779
+ "format": "double"
5780
+ }
5781
+ }
5782
+ },
5744
5783
  "wageRate": {
5745
5784
  "required": [
5746
5785
  "sickLeave",
@@ -22209,6 +22209,9 @@
22209
22209
  ],
22210
22210
  "type": "object"
22211
22211
  },
22212
+ "permissions": {
22213
+ "type": "string"
22214
+ },
22212
22215
  "leaders": {
22213
22216
  "items": {
22214
22217
  "properties": {
@@ -29697,6 +29700,9 @@
29697
29700
  ],
29698
29701
  "type": "object"
29699
29702
  },
29703
+ "permissions": {
29704
+ "type": "string"
29705
+ },
29700
29706
  "leaders": {
29701
29707
  "items": {
29702
29708
  "allOf": [
@@ -137,6 +137,40 @@
137
137
  ]
138
138
  }
139
139
  },
140
+ "/v1.0/sanity-groups-to-azure-ad": {
141
+ "get": {
142
+ "tags": [
143
+ "Sync"
144
+ ],
145
+ "summary": "Syncs Sanity workgroups to Azure AD",
146
+ "description": "Mirrors the Sanity workgroup taxonomy to Azure AD security groups, and reconciles each group's membership against the Sanity-tracked employees. Same handler the cron runs.",
147
+ "operationId": "SyncSanityGroupsToAzureAd",
148
+ "responses": {
149
+ "200": {
150
+ "description": "Sync stats — groups created/updated, members added/removed.",
151
+ "content": {
152
+ "application/json": {
153
+ "schema": {
154
+ "$ref": "#/components/schemas/syncSanityGroupsResult"
155
+ }
156
+ }
157
+ },
158
+ "x-ms-summary": "Success"
159
+ },
160
+ "401": {
161
+ "description": "Unauthorized access",
162
+ "x-ms-summary": "Unauthorized"
163
+ }
164
+ },
165
+ "security": [
166
+ {
167
+ "Implicit": [
168
+ "api://4e63d216-e410-4f30-b0b6-ac5eb4ec0acf/.default"
169
+ ]
170
+ }
171
+ ]
172
+ }
173
+ },
140
174
  "/v1.0/okrs-to-sanity": {
141
175
  "get": {
142
176
  "tags": [
@@ -162,6 +196,29 @@
162
196
  }
163
197
  },
164
198
  "components": {
199
+ "schemas": {
200
+ "syncSanityGroupsResult": {
201
+ "type": "object",
202
+ "properties": {
203
+ "groupsCreated": {
204
+ "type": "integer",
205
+ "format": "int32"
206
+ },
207
+ "groupsUpdated": {
208
+ "type": "integer",
209
+ "format": "int32"
210
+ },
211
+ "membersAdded": {
212
+ "type": "integer",
213
+ "format": "int32"
214
+ },
215
+ "membersRemoved": {
216
+ "type": "integer",
217
+ "format": "int32"
218
+ }
219
+ }
220
+ }
221
+ },
165
222
  "securitySchemes": {
166
223
  "Implicit": {
167
224
  "type": "oauth2",