@iblai/iblai-api 2025.11.13-teams-bot-renovation-ai → 2025.11.13-teams-bot-renovation-3-ai

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 (43) hide show
  1. package/dist/index.cjs.js +235 -45
  2. package/dist/index.cjs.js.map +1 -1
  3. package/dist/index.esm.js +236 -46
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/index.umd.js +235 -45
  6. package/dist/index.umd.js.map +1 -1
  7. package/dist/types/index.d.ts +7 -3
  8. package/dist/types/models/ConnectedService.d.ts +18 -5
  9. package/dist/types/models/Disclaimer.d.ts +2 -2
  10. package/dist/types/models/{ScopeEnum.d.ts → DisclaimerScopeEnum.d.ts} +1 -1
  11. package/dist/types/models/MCPServer.d.ts +1 -1
  12. package/dist/types/models/MCPServerConnection.d.ts +47 -0
  13. package/dist/types/models/MCPServerConnectionScopeEnum.d.ts +10 -0
  14. package/dist/types/models/OAuthProvider.d.ts +18 -0
  15. package/dist/types/models/OAuthService.d.ts +17 -0
  16. package/dist/types/models/PaginatedMCPServerConnectionList.d.ts +7 -0
  17. package/dist/types/models/PatchedDisclaimer.d.ts +2 -2
  18. package/dist/types/models/PatchedMCPServer.d.ts +1 -1
  19. package/dist/types/models/PatchedMCPServerConnection.d.ts +47 -0
  20. package/dist/types/services/AiAccountService.d.ts +30 -11
  21. package/dist/types/services/AiMentorService.d.ts +113 -0
  22. package/package.json +1 -1
  23. package/sdk_schema.yml +724 -51
  24. package/src/core/OpenAPI.ts +1 -1
  25. package/src/index.ts +7 -3
  26. package/src/models/ConnectedService.ts +18 -5
  27. package/src/models/Disclaimer.ts +2 -2
  28. package/src/models/{ScopeEnum.ts → DisclaimerScopeEnum.ts} +1 -1
  29. package/src/models/MCPServer.ts +1 -1
  30. package/src/models/MCPServerConnection.ts +52 -0
  31. package/src/models/MCPServerConnectionScopeEnum.ts +14 -0
  32. package/src/models/OAuthProvider.ts +23 -0
  33. package/src/models/OAuthService.ts +22 -0
  34. package/src/models/PaginatedMCPServerConnectionList.ts +12 -0
  35. package/src/models/PatchedDisclaimer.ts +2 -2
  36. package/src/models/PatchedMCPServer.ts +1 -1
  37. package/src/models/PatchedMCPServerConnection.ts +52 -0
  38. package/src/services/AiAccountService.ts +50 -11
  39. package/src/services/AiMentorService.ts +233 -0
  40. package/dist/types/models/ConnectedServiceProviderEnum.d.ts +0 -6
  41. package/dist/types/models/ServiceEnum.d.ts +0 -12
  42. package/src/models/ConnectedServiceProviderEnum.ts +0 -10
  43. package/src/models/ServiceEnum.ts +0 -16
package/sdk_schema.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  openapi: 3.0.3
2
2
  info:
3
3
  title: ibl-data-manager
4
- version: 4.89.4-ai-plus
4
+ version: 4.90.2-ai-plus
5
5
  description: API for iblai
6
6
  paths:
7
7
  /api/ai-account/connected-services/callback/:
@@ -36,9 +36,6 @@ paths:
36
36
  name: provider
37
37
  schema:
38
38
  type: string
39
- enum:
40
- - google
41
- description: '* `google` - Google'
42
39
  - name: search
43
40
  required: false
44
41
  in: query
@@ -49,16 +46,6 @@ paths:
49
46
  name: service
50
47
  schema:
51
48
  type: string
52
- enum:
53
- - google_calendar
54
- - google_document
55
- - google_drive
56
- - google_slides
57
- description: |-
58
- * `google_drive` - Google Drive
59
- * `google_document` - Google Document
60
- * `google_slides` - Google Slides
61
- * `google_calendar` - Google Calendar
62
49
  - in: path
63
50
  name: user_id
64
51
  schema:
@@ -1041,6 +1028,87 @@ paths:
1041
1028
  display_name: Google
1042
1029
  summary: LLM credentials example
1043
1030
  description: ''
1031
+ /api/ai-account/orgs/{org}/oauth-services/:
1032
+ get:
1033
+ operationId: ai_account_orgs_oauth_services_list
1034
+ description: |-
1035
+ Return the list of OAuth services that can be used for connected services.
1036
+
1037
+ Query Parameters:
1038
+ name (optional): Filter by exact service name (case-insensitive).
1039
+ include_disabled (optional): Set to `true` to include disabled services.
1040
+ parameters:
1041
+ - in: path
1042
+ name: org
1043
+ schema:
1044
+ type: string
1045
+ required: true
1046
+ tags:
1047
+ - ai-account
1048
+ security:
1049
+ - PlatformApiKeyAuthentication: []
1050
+ responses:
1051
+ '200':
1052
+ content:
1053
+ application/json:
1054
+ schema:
1055
+ type: array
1056
+ items:
1057
+ $ref: '#/components/schemas/OAuthProvider'
1058
+ examples:
1059
+ OAuthServices:
1060
+ value:
1061
+ - - name: google
1062
+ description: Google OAuth service
1063
+ auth_url: https://accounts.google.com/o/oauth2/v2/auth
1064
+ token_url: https://oauth2.googleapis.com/token
1065
+ scope_map:
1066
+ drive: https://www.googleapis.com/auth/drive
1067
+ scopes:
1068
+ - oauth_service: google
1069
+ name: google_drive
1070
+ scope: https://www.googleapis.com/auth/drive
1071
+ summary: OAuth services
1072
+ description: ''
1073
+ /api/ai-account/orgs/{org}/oauth-services/{service_name}/scopes/:
1074
+ get:
1075
+ operationId: ai_account_orgs_oauth_services_scopes_list
1076
+ description: |-
1077
+ Return the available scopes for the specified OAuth service.
1078
+
1079
+ Query Parameters:
1080
+ include_disabled (optional): Set to `true` to include scopes from disabled services.
1081
+ parameters:
1082
+ - in: path
1083
+ name: org
1084
+ schema:
1085
+ type: string
1086
+ required: true
1087
+ - in: path
1088
+ name: service_name
1089
+ schema:
1090
+ type: string
1091
+ required: true
1092
+ tags:
1093
+ - ai-account
1094
+ security:
1095
+ - PlatformApiKeyAuthentication: []
1096
+ responses:
1097
+ '200':
1098
+ content:
1099
+ application/json:
1100
+ schema:
1101
+ type: array
1102
+ items:
1103
+ $ref: '#/components/schemas/OAuthService'
1104
+ examples:
1105
+ OAuthScopes:
1106
+ value:
1107
+ - - oauth_service: google
1108
+ name: google_drive
1109
+ scope: https://www.googleapis.com/auth/drive
1110
+ summary: OAuth scopes
1111
+ description: ''
1044
1112
  /api/ai-account/orgs/{org}/use-default-llm-key/:
1045
1113
  post:
1046
1114
  operationId: ai_account_orgs_use_default_llm_key_create
@@ -21529,6 +21597,315 @@ paths:
21529
21597
  description: ''
21530
21598
  '404':
21531
21599
  description: User not found
21600
+ /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-server-connections/:
21601
+ get:
21602
+ operationId: ai_mentor_orgs_users_mcp_server_connections_list
21603
+ description: |-
21604
+ ViewSet for MCP server connections.
21605
+
21606
+ Tenant administrators can create user- or platform-scoped connections that
21607
+ encapsulate the authentication configuration for invoking an MCP server.
21608
+ parameters:
21609
+ - in: query
21610
+ name: auth_type
21611
+ schema:
21612
+ type: string
21613
+ enum:
21614
+ - none
21615
+ - oauth2
21616
+ - token
21617
+ description: |-
21618
+ * `none` - None
21619
+ * `token` - Token
21620
+ * `oauth2` - Oauth2
21621
+ - in: query
21622
+ name: is_active
21623
+ schema:
21624
+ type: boolean
21625
+ - in: query
21626
+ name: mentor
21627
+ schema:
21628
+ type: string
21629
+ - in: path
21630
+ name: org
21631
+ schema:
21632
+ type: string
21633
+ required: true
21634
+ - name: page
21635
+ required: false
21636
+ in: query
21637
+ description: A page number within the paginated result set.
21638
+ schema:
21639
+ type: integer
21640
+ - name: page_size
21641
+ required: false
21642
+ in: query
21643
+ description: Number of results to return per page.
21644
+ schema:
21645
+ type: integer
21646
+ - in: query
21647
+ name: scope
21648
+ schema:
21649
+ type: string
21650
+ enum:
21651
+ - mentor
21652
+ - platform
21653
+ - user
21654
+ description: |-
21655
+ Whether this connection is scoped to a user or shared across a platform.
21656
+
21657
+ * `user` - User
21658
+ * `mentor` - Mentor
21659
+ * `platform` - Platform
21660
+ - name: search
21661
+ required: false
21662
+ in: query
21663
+ description: A search term.
21664
+ schema:
21665
+ type: string
21666
+ - in: query
21667
+ name: server
21668
+ schema:
21669
+ type: number
21670
+ - in: query
21671
+ name: user
21672
+ schema:
21673
+ type: string
21674
+ - in: path
21675
+ name: user_id
21676
+ schema:
21677
+ type: string
21678
+ required: true
21679
+ tags:
21680
+ - ai-mentor
21681
+ security:
21682
+ - PlatformApiKeyAuthentication: []
21683
+ responses:
21684
+ '200':
21685
+ content:
21686
+ application/json:
21687
+ schema:
21688
+ $ref: '#/components/schemas/PaginatedMCPServerConnectionList'
21689
+ description: ''
21690
+ post:
21691
+ operationId: ai_mentor_orgs_users_mcp_server_connections_create
21692
+ description: |-
21693
+ ViewSet for MCP server connections.
21694
+
21695
+ Tenant administrators can create user- or platform-scoped connections that
21696
+ encapsulate the authentication configuration for invoking an MCP server.
21697
+ parameters:
21698
+ - in: path
21699
+ name: org
21700
+ schema:
21701
+ type: string
21702
+ required: true
21703
+ - in: path
21704
+ name: user_id
21705
+ schema:
21706
+ type: string
21707
+ required: true
21708
+ tags:
21709
+ - ai-mentor
21710
+ requestBody:
21711
+ content:
21712
+ application/json:
21713
+ schema:
21714
+ $ref: '#/components/schemas/MCPServerConnection'
21715
+ application/scim+json:
21716
+ schema:
21717
+ $ref: '#/components/schemas/MCPServerConnection'
21718
+ application/x-www-form-urlencoded:
21719
+ schema:
21720
+ $ref: '#/components/schemas/MCPServerConnection'
21721
+ multipart/form-data:
21722
+ schema:
21723
+ $ref: '#/components/schemas/MCPServerConnection'
21724
+ '*/*':
21725
+ schema:
21726
+ $ref: '#/components/schemas/MCPServerConnection'
21727
+ required: true
21728
+ security:
21729
+ - PlatformApiKeyAuthentication: []
21730
+ responses:
21731
+ '201':
21732
+ content:
21733
+ application/json:
21734
+ schema:
21735
+ $ref: '#/components/schemas/MCPServerConnection'
21736
+ description: ''
21737
+ /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-server-connections/{id}/:
21738
+ get:
21739
+ operationId: ai_mentor_orgs_users_mcp_server_connections_retrieve
21740
+ description: |-
21741
+ ViewSet for MCP server connections.
21742
+
21743
+ Tenant administrators can create user- or platform-scoped connections that
21744
+ encapsulate the authentication configuration for invoking an MCP server.
21745
+ parameters:
21746
+ - in: path
21747
+ name: id
21748
+ schema:
21749
+ type: integer
21750
+ description: A unique integer value identifying this mcp server connection.
21751
+ required: true
21752
+ - in: path
21753
+ name: org
21754
+ schema:
21755
+ type: string
21756
+ required: true
21757
+ - in: path
21758
+ name: user_id
21759
+ schema:
21760
+ type: string
21761
+ required: true
21762
+ tags:
21763
+ - ai-mentor
21764
+ security:
21765
+ - PlatformApiKeyAuthentication: []
21766
+ responses:
21767
+ '200':
21768
+ content:
21769
+ application/json:
21770
+ schema:
21771
+ $ref: '#/components/schemas/MCPServerConnection'
21772
+ description: ''
21773
+ put:
21774
+ operationId: ai_mentor_orgs_users_mcp_server_connections_update
21775
+ description: |-
21776
+ ViewSet for MCP server connections.
21777
+
21778
+ Tenant administrators can create user- or platform-scoped connections that
21779
+ encapsulate the authentication configuration for invoking an MCP server.
21780
+ parameters:
21781
+ - in: path
21782
+ name: id
21783
+ schema:
21784
+ type: integer
21785
+ description: A unique integer value identifying this mcp server connection.
21786
+ required: true
21787
+ - in: path
21788
+ name: org
21789
+ schema:
21790
+ type: string
21791
+ required: true
21792
+ - in: path
21793
+ name: user_id
21794
+ schema:
21795
+ type: string
21796
+ required: true
21797
+ tags:
21798
+ - ai-mentor
21799
+ requestBody:
21800
+ content:
21801
+ application/json:
21802
+ schema:
21803
+ $ref: '#/components/schemas/MCPServerConnection'
21804
+ application/scim+json:
21805
+ schema:
21806
+ $ref: '#/components/schemas/MCPServerConnection'
21807
+ application/x-www-form-urlencoded:
21808
+ schema:
21809
+ $ref: '#/components/schemas/MCPServerConnection'
21810
+ multipart/form-data:
21811
+ schema:
21812
+ $ref: '#/components/schemas/MCPServerConnection'
21813
+ '*/*':
21814
+ schema:
21815
+ $ref: '#/components/schemas/MCPServerConnection'
21816
+ required: true
21817
+ security:
21818
+ - PlatformApiKeyAuthentication: []
21819
+ responses:
21820
+ '200':
21821
+ content:
21822
+ application/json:
21823
+ schema:
21824
+ $ref: '#/components/schemas/MCPServerConnection'
21825
+ description: ''
21826
+ patch:
21827
+ operationId: ai_mentor_orgs_users_mcp_server_connections_partial_update
21828
+ description: |-
21829
+ ViewSet for MCP server connections.
21830
+
21831
+ Tenant administrators can create user- or platform-scoped connections that
21832
+ encapsulate the authentication configuration for invoking an MCP server.
21833
+ parameters:
21834
+ - in: path
21835
+ name: id
21836
+ schema:
21837
+ type: integer
21838
+ description: A unique integer value identifying this mcp server connection.
21839
+ required: true
21840
+ - in: path
21841
+ name: org
21842
+ schema:
21843
+ type: string
21844
+ required: true
21845
+ - in: path
21846
+ name: user_id
21847
+ schema:
21848
+ type: string
21849
+ required: true
21850
+ tags:
21851
+ - ai-mentor
21852
+ requestBody:
21853
+ content:
21854
+ application/json:
21855
+ schema:
21856
+ $ref: '#/components/schemas/PatchedMCPServerConnection'
21857
+ application/scim+json:
21858
+ schema:
21859
+ $ref: '#/components/schemas/PatchedMCPServerConnection'
21860
+ application/x-www-form-urlencoded:
21861
+ schema:
21862
+ $ref: '#/components/schemas/PatchedMCPServerConnection'
21863
+ multipart/form-data:
21864
+ schema:
21865
+ $ref: '#/components/schemas/PatchedMCPServerConnection'
21866
+ '*/*':
21867
+ schema:
21868
+ $ref: '#/components/schemas/PatchedMCPServerConnection'
21869
+ security:
21870
+ - PlatformApiKeyAuthentication: []
21871
+ responses:
21872
+ '200':
21873
+ content:
21874
+ application/json:
21875
+ schema:
21876
+ $ref: '#/components/schemas/MCPServerConnection'
21877
+ description: ''
21878
+ delete:
21879
+ operationId: ai_mentor_orgs_users_mcp_server_connections_destroy
21880
+ description: |-
21881
+ ViewSet for MCP server connections.
21882
+
21883
+ Tenant administrators can create user- or platform-scoped connections that
21884
+ encapsulate the authentication configuration for invoking an MCP server.
21885
+ parameters:
21886
+ - in: path
21887
+ name: id
21888
+ schema:
21889
+ type: integer
21890
+ description: A unique integer value identifying this mcp server connection.
21891
+ required: true
21892
+ - in: path
21893
+ name: org
21894
+ schema:
21895
+ type: string
21896
+ required: true
21897
+ - in: path
21898
+ name: user_id
21899
+ schema:
21900
+ type: string
21901
+ required: true
21902
+ tags:
21903
+ - ai-mentor
21904
+ security:
21905
+ - PlatformApiKeyAuthentication: []
21906
+ responses:
21907
+ '204':
21908
+ description: No response body
21532
21909
  /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-servers/:
21533
21910
  get:
21534
21911
  operationId: ai_mentor_orgs_users_mcp_servers_list
@@ -69648,20 +70025,42 @@ components:
69648
70025
  - value
69649
70026
  ConnectedService:
69650
70027
  type: object
70028
+ description: |-
70029
+ Serializer for representing connected OAuth services.
70030
+
70031
+ Includes both the legacy `service` / `scope` string values and structured
70032
+ representations so that consumers can reason about individual scope names.
69651
70033
  properties:
69652
70034
  id:
69653
70035
  type: integer
69654
70036
  readOnly: true
69655
70037
  provider:
69656
- $ref: '#/components/schemas/ConnectedServiceProviderEnum'
70038
+ type: string
70039
+ maxLength: 128
69657
70040
  service:
69658
- $ref: '#/components/schemas/ServiceEnum'
70041
+ type: string
70042
+ maxLength: 255
69659
70043
  expires_at:
69660
70044
  type: string
69661
70045
  format: date-time
69662
70046
  nullable: true
69663
70047
  scope:
69664
70048
  type: string
70049
+ scope_names:
70050
+ type: array
70051
+ items:
70052
+ type: string
70053
+ description: Return the canonical list of scope identifiers for the connection.
70054
+ readOnly: true
70055
+ scopes:
70056
+ type: array
70057
+ items:
70058
+ type: string
70059
+ description: Return the OAuth scope strings associated with the connection.
70060
+ readOnly: true
70061
+ token_type:
70062
+ type: string
70063
+ maxLength: 32
69665
70064
  service_info:
69666
70065
  allOf:
69667
70066
  - $ref: '#/components/schemas/ExternalServiceInfo'
@@ -69669,14 +70068,9 @@ components:
69669
70068
  required:
69670
70069
  - id
69671
70070
  - provider
69672
- - scope
69673
- - service
70071
+ - scope_names
70072
+ - scopes
69674
70073
  - service_info
69675
- ConnectedServiceProviderEnum:
69676
- enum:
69677
- - google
69678
- type: string
69679
- description: '* `google` - Google'
69680
70074
  ConsumerChannel:
69681
70075
  type: object
69682
70076
  description: Serializer for channel
@@ -72338,7 +72732,7 @@ components:
72338
72732
  type: integer
72339
72733
  readOnly: true
72340
72734
  scope:
72341
- $ref: '#/components/schemas/ScopeEnum'
72735
+ $ref: '#/components/schemas/DisclaimerScopeEnum'
72342
72736
  platform:
72343
72737
  type: integer
72344
72738
  readOnly: true
@@ -72406,6 +72800,14 @@ components:
72406
72800
  - platform_key
72407
72801
  - user
72408
72802
  - user_id
72803
+ DisclaimerScopeEnum:
72804
+ enum:
72805
+ - platform
72806
+ - mentor
72807
+ type: string
72808
+ description: |-
72809
+ * `platform` - Platform
72810
+ * `mentor` - Mentor
72409
72811
  DiscordConfig:
72410
72812
  type: object
72411
72813
  properties:
@@ -74694,9 +75096,10 @@ components:
74694
75096
  $ref: '#/components/schemas/TransportEnum'
74695
75097
  credentials:
74696
75098
  type: string
74697
- description: 'Authorization credentials to uauthenticate to the mcp server.
74698
- if provided takes priority over connected service and headers. Token here
74699
- must be the full authorization value. For example: `<scheme> <credentials>`'
75099
+ description: 'Authorization credentials to authenticate to the MCP server.
75100
+ If provided, these take priority over any headers configured on the server.
75101
+ Token here must be the full authorization value. For example: `<scheme>
75102
+ <credentials>`'
74700
75103
  extra_headers:
74701
75104
  description: Headers to send to the MCP server. Useful for authentication,
74702
75105
  platform_key:
@@ -74733,6 +75136,94 @@ components:
74733
75136
  - platform_key
74734
75137
  - updated_at
74735
75138
  - url
75139
+ MCPServerConnection:
75140
+ type: object
75141
+ description: |-
75142
+ Serializer for managing `MCPServerConnection` records via the API.
75143
+
75144
+ The serializer enforces the business rules for combining scope, platform,
75145
+ and authentication configuration while exposing a masked view of any stored
75146
+ credentials.
75147
+ properties:
75148
+ id:
75149
+ type: integer
75150
+ readOnly: true
75151
+ server:
75152
+ type: integer
75153
+ server_name:
75154
+ type: string
75155
+ readOnly: true
75156
+ scope:
75157
+ allOf:
75158
+ - $ref: '#/components/schemas/MCPServerConnectionScopeEnum'
75159
+ description: |-
75160
+ Whether this connection is scoped to a user or shared across a platform.
75161
+
75162
+ * `user` - User
75163
+ * `mentor` - Mentor
75164
+ * `platform` - Platform
75165
+ auth_type:
75166
+ $ref: '#/components/schemas/AuthTypeEnum'
75167
+ platform:
75168
+ type: integer
75169
+ nullable: true
75170
+ platform_key:
75171
+ type: string
75172
+ nullable: true
75173
+ readOnly: true
75174
+ user:
75175
+ type: string
75176
+ nullable: true
75177
+ description: edX username
75178
+ mentor:
75179
+ type: string
75180
+ format: uuid
75181
+ nullable: true
75182
+ connected_service:
75183
+ type: integer
75184
+ nullable: true
75185
+ connected_service_summary:
75186
+ type: object
75187
+ additionalProperties: {}
75188
+ nullable: true
75189
+ readOnly: true
75190
+ credentials:
75191
+ type: string
75192
+ description: Static credential/token value for token-based authentication.
75193
+ authorization_scheme:
75194
+ type: string
75195
+ description: Authorization scheme to prefix tokens with (e.g. 'Bearer').
75196
+ maxLength: 50
75197
+ extra_headers:
75198
+ description: Additional headers to include when connecting to the MCP server.
75199
+ is_active:
75200
+ type: boolean
75201
+ created_at:
75202
+ type: string
75203
+ format: date-time
75204
+ readOnly: true
75205
+ updated_at:
75206
+ type: string
75207
+ format: date-time
75208
+ readOnly: true
75209
+ required:
75210
+ - connected_service_summary
75211
+ - created_at
75212
+ - id
75213
+ - platform_key
75214
+ - server
75215
+ - server_name
75216
+ - updated_at
75217
+ MCPServerConnectionScopeEnum:
75218
+ enum:
75219
+ - user
75220
+ - mentor
75221
+ - platform
75222
+ type: string
75223
+ description: |-
75224
+ * `user` - User
75225
+ * `mentor` - Mentor
75226
+ * `platform` - Platform
74736
75227
  ManagerAuthToken:
74737
75228
  type: object
74738
75229
  description: Manager auth token serializer
@@ -77576,6 +78067,114 @@ components:
77576
78067
  NullEnum:
77577
78068
  enum:
77578
78069
  - null
78070
+ OAuthProvider:
78071
+ type: object
78072
+ description: Read-only serializer for OAuth providers, including the services
78073
+ they expose.
78074
+ properties:
78075
+ id:
78076
+ type: integer
78077
+ readOnly: true
78078
+ name:
78079
+ type: string
78080
+ readOnly: true
78081
+ description:
78082
+ type: string
78083
+ readOnly: true
78084
+ url:
78085
+ type: string
78086
+ format: uri
78087
+ readOnly: true
78088
+ image:
78089
+ type: string
78090
+ format: uri
78091
+ readOnly: true
78092
+ nullable: true
78093
+ scope_map:
78094
+ readOnly: true
78095
+ auth_url:
78096
+ type: string
78097
+ format: uri
78098
+ readOnly: true
78099
+ token_url:
78100
+ type: string
78101
+ format: uri
78102
+ readOnly: true
78103
+ is_enabled:
78104
+ type: boolean
78105
+ readOnly: true
78106
+ created_at:
78107
+ type: string
78108
+ format: date-time
78109
+ readOnly: true
78110
+ updated_at:
78111
+ type: string
78112
+ format: date-time
78113
+ readOnly: true
78114
+ services:
78115
+ type: array
78116
+ items:
78117
+ $ref: '#/components/schemas/OAuthService'
78118
+ readOnly: true
78119
+ required:
78120
+ - auth_url
78121
+ - created_at
78122
+ - description
78123
+ - id
78124
+ - image
78125
+ - is_enabled
78126
+ - name
78127
+ - scope_map
78128
+ - services
78129
+ - token_url
78130
+ - updated_at
78131
+ - url
78132
+ OAuthService:
78133
+ type: object
78134
+ description: Read-only serializer exposing details about an OAuth service.
78135
+ properties:
78136
+ id:
78137
+ type: integer
78138
+ readOnly: true
78139
+ oauth_provider:
78140
+ type: string
78141
+ readOnly: true
78142
+ name:
78143
+ type: string
78144
+ readOnly: true
78145
+ display_name:
78146
+ type: string
78147
+ readOnly: true
78148
+ description: Human readable label for the OAuth service scope.
78149
+ description:
78150
+ type: string
78151
+ readOnly: true
78152
+ scope:
78153
+ type: string
78154
+ readOnly: true
78155
+ image:
78156
+ type: string
78157
+ format: uri
78158
+ readOnly: true
78159
+ nullable: true
78160
+ created_at:
78161
+ type: string
78162
+ format: date-time
78163
+ readOnly: true
78164
+ updated_at:
78165
+ type: string
78166
+ format: date-time
78167
+ readOnly: true
78168
+ required:
78169
+ - created_at
78170
+ - description
78171
+ - display_name
78172
+ - id
78173
+ - image
78174
+ - name
78175
+ - oauth_provider
78176
+ - scope
78177
+ - updated_at
77579
78178
  OAuthStartResponse:
77580
78179
  type: object
77581
78180
  properties:
@@ -78372,6 +78971,29 @@ components:
78372
78971
  type: array
78373
78972
  items:
78374
78973
  $ref: '#/components/schemas/JobRun'
78974
+ PaginatedMCPServerConnectionList:
78975
+ type: object
78976
+ required:
78977
+ - count
78978
+ - results
78979
+ properties:
78980
+ count:
78981
+ type: integer
78982
+ example: 123
78983
+ next:
78984
+ type: string
78985
+ nullable: true
78986
+ format: uri
78987
+ example: http://api.example.org/accounts/?page=4
78988
+ previous:
78989
+ type: string
78990
+ nullable: true
78991
+ format: uri
78992
+ example: http://api.example.org/accounts/?page=2
78993
+ results:
78994
+ type: array
78995
+ items:
78996
+ $ref: '#/components/schemas/MCPServerConnection'
78375
78997
  PaginatedMCPServerList:
78376
78998
  type: object
78377
78999
  required:
@@ -79657,7 +80279,7 @@ components:
79657
80279
  type: integer
79658
80280
  readOnly: true
79659
80281
  scope:
79660
- $ref: '#/components/schemas/ScopeEnum'
80282
+ $ref: '#/components/schemas/DisclaimerScopeEnum'
79661
80283
  platform:
79662
80284
  type: integer
79663
80285
  readOnly: true
@@ -79816,9 +80438,10 @@ components:
79816
80438
  $ref: '#/components/schemas/TransportEnum'
79817
80439
  credentials:
79818
80440
  type: string
79819
- description: 'Authorization credentials to uauthenticate to the mcp server.
79820
- if provided takes priority over connected service and headers. Token here
79821
- must be the full authorization value. For example: `<scheme> <credentials>`'
80441
+ description: 'Authorization credentials to authenticate to the MCP server.
80442
+ If provided, these take priority over any headers configured on the server.
80443
+ Token here must be the full authorization value. For example: `<scheme>
80444
+ <credentials>`'
79822
80445
  extra_headers:
79823
80446
  description: Headers to send to the MCP server. Useful for authentication,
79824
80447
  platform_key:
@@ -79847,6 +80470,76 @@ components:
79847
80470
  type: string
79848
80471
  format: date-time
79849
80472
  readOnly: true
80473
+ PatchedMCPServerConnection:
80474
+ type: object
80475
+ description: |-
80476
+ Serializer for managing `MCPServerConnection` records via the API.
80477
+
80478
+ The serializer enforces the business rules for combining scope, platform,
80479
+ and authentication configuration while exposing a masked view of any stored
80480
+ credentials.
80481
+ properties:
80482
+ id:
80483
+ type: integer
80484
+ readOnly: true
80485
+ server:
80486
+ type: integer
80487
+ server_name:
80488
+ type: string
80489
+ readOnly: true
80490
+ scope:
80491
+ allOf:
80492
+ - $ref: '#/components/schemas/MCPServerConnectionScopeEnum'
80493
+ description: |-
80494
+ Whether this connection is scoped to a user or shared across a platform.
80495
+
80496
+ * `user` - User
80497
+ * `mentor` - Mentor
80498
+ * `platform` - Platform
80499
+ auth_type:
80500
+ $ref: '#/components/schemas/AuthTypeEnum'
80501
+ platform:
80502
+ type: integer
80503
+ nullable: true
80504
+ platform_key:
80505
+ type: string
80506
+ nullable: true
80507
+ readOnly: true
80508
+ user:
80509
+ type: string
80510
+ nullable: true
80511
+ description: edX username
80512
+ mentor:
80513
+ type: string
80514
+ format: uuid
80515
+ nullable: true
80516
+ connected_service:
80517
+ type: integer
80518
+ nullable: true
80519
+ connected_service_summary:
80520
+ type: object
80521
+ additionalProperties: {}
80522
+ nullable: true
80523
+ readOnly: true
80524
+ credentials:
80525
+ type: string
80526
+ description: Static credential/token value for token-based authentication.
80527
+ authorization_scheme:
80528
+ type: string
80529
+ description: Authorization scheme to prefix tokens with (e.g. 'Bearer').
80530
+ maxLength: 50
80531
+ extra_headers:
80532
+ description: Additional headers to include when connecting to the MCP server.
80533
+ is_active:
80534
+ type: boolean
80535
+ created_at:
80536
+ type: string
80537
+ format: date-time
80538
+ readOnly: true
80539
+ updated_at:
80540
+ type: string
80541
+ format: date-time
80542
+ readOnly: true
79850
80543
  PatchedMediaResource:
79851
80544
  type: object
79852
80545
  properties:
@@ -86743,14 +87436,6 @@ components:
86743
87436
  type: string
86744
87437
  required:
86745
87438
  - message
86746
- ScopeEnum:
86747
- enum:
86748
- - platform
86749
- - mentor
86750
- type: string
86751
- description: |-
86752
- * `platform` - Platform
86753
- * `mentor` - Mentor
86754
87439
  Section:
86755
87440
  type: object
86756
87441
  properties:
@@ -86860,18 +87545,6 @@ components:
86860
87545
  required:
86861
87546
  - sentiment_distribution
86862
87547
  - total_sentiments
86863
- ServiceEnum:
86864
- enum:
86865
- - google_drive
86866
- - google_document
86867
- - google_slides
86868
- - google_calendar
86869
- type: string
86870
- description: |-
86871
- * `google_drive` - Google Drive
86872
- * `google_document` - Google Document
86873
- * `google_slides` - Google Slides
86874
- * `google_calendar` - Google Calendar
86875
87548
  SessionBrowserScreenshot:
86876
87549
  type: object
86877
87550
  properties: