@onesi/genesis 0.2.12 → 0.2.14

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.
@@ -136,6 +136,14 @@
136
136
  {
137
137
  "name": "brews",
138
138
  "description": "Brews (agent recipes and decisions)"
139
+ },
140
+ {
141
+ "name": "connections",
142
+ "description": "Connections (verified remote MCP servers)"
143
+ },
144
+ {
145
+ "name": "agents",
146
+ "description": "Agents (public agent search)"
139
147
  }
140
148
  ],
141
149
  "paths": {
@@ -2130,53 +2138,6 @@
2130
2138
  "x-mcp": true
2131
2139
  }
2132
2140
  },
2133
- "/v1/foundry/files/{file_id}/content": {
2134
- "get": {
2135
- "operationId": "foundry_downloadFile",
2136
- "summary": "Download tenant file content",
2137
- "tags": [
2138
- "foundry"
2139
- ],
2140
- "x-foundry-executable": true,
2141
- "x-foundry-rust-source": "foundry-edge/src/openrouter_files.rs",
2142
- "x-foundry-rust-route": "/v1/files/{file_id}/content",
2143
- "responses": {
2144
- "200": {
2145
- "description": "File bytes.",
2146
- "content": {
2147
- "application/json": {
2148
- "schema": {
2149
- "type": "string",
2150
- "format": "binary"
2151
- }
2152
- }
2153
- }
2154
- },
2155
- "default": {
2156
- "$ref": "#/components/responses/Foundry.Error"
2157
- }
2158
- },
2159
- "parameters": [
2160
- {
2161
- "name": "file_id",
2162
- "in": "path",
2163
- "required": true,
2164
- "schema": {
2165
- "type": "string",
2166
- "minLength": 1
2167
- }
2168
- }
2169
- ],
2170
- "x-genesis-service": "foundry",
2171
- "x-upstream": {
2172
- "base": "https://api.fdy.sh",
2173
- "method": "GET",
2174
- "path": "/v1/files/{file_id}/content",
2175
- "status": "live"
2176
- },
2177
- "x-mcp": true
2178
- }
2179
- },
2180
2141
  "/v1/foundry/fine_tuning/providers": {
2181
2142
  "get": {
2182
2143
  "operationId": "foundry_listFineTuningProviders",
@@ -6674,170 +6635,6 @@
6674
6635
  "x-mcp": false
6675
6636
  }
6676
6637
  },
6677
- "/v1/hives/organizations/{org_id}/sso": {
6678
- "get": {
6679
- "tags": [
6680
- "hives"
6681
- ],
6682
- "summary": "Get SSO configuration for an organization",
6683
- "operationId": "hives_get_sso_config",
6684
- "parameters": [
6685
- {
6686
- "name": "org_id",
6687
- "in": "path",
6688
- "description": "Organization ID",
6689
- "required": true,
6690
- "schema": {
6691
- "type": "string"
6692
- }
6693
- }
6694
- ],
6695
- "responses": {
6696
- "200": {
6697
- "description": "SSO configuration",
6698
- "content": {
6699
- "application/json": {
6700
- "schema": {
6701
- "type": "object"
6702
- }
6703
- }
6704
- }
6705
- },
6706
- "401": {
6707
- "description": "Unauthorized"
6708
- },
6709
- "404": {
6710
- "description": "Organization not found"
6711
- },
6712
- "503": {
6713
- "description": "SSO service unavailable"
6714
- }
6715
- },
6716
- "x-genesis-service": "hives",
6717
- "x-upstream": {
6718
- "base": "https://api.hives.sh",
6719
- "method": "GET",
6720
- "path": "/v1/organizations/{org_id}/sso",
6721
- "status": "down"
6722
- },
6723
- "x-mcp": false
6724
- },
6725
- "post": {
6726
- "tags": [
6727
- "hives"
6728
- ],
6729
- "summary": "Create a new SSO connection",
6730
- "operationId": "hives_create_sso_connection",
6731
- "parameters": [
6732
- {
6733
- "name": "org_id",
6734
- "in": "path",
6735
- "description": "Organization ID",
6736
- "required": true,
6737
- "schema": {
6738
- "type": "string"
6739
- }
6740
- }
6741
- ],
6742
- "requestBody": {
6743
- "content": {
6744
- "application/json": {
6745
- "schema": {
6746
- "$ref": "#/components/schemas/Hives.CreateSsoConnectionRequest"
6747
- }
6748
- }
6749
- },
6750
- "required": true
6751
- },
6752
- "responses": {
6753
- "200": {
6754
- "description": "SSO connection created",
6755
- "content": {
6756
- "application/json": {
6757
- "schema": {
6758
- "type": "object"
6759
- }
6760
- }
6761
- }
6762
- },
6763
- "401": {
6764
- "description": "Unauthorized"
6765
- },
6766
- "404": {
6767
- "description": "Organization not found"
6768
- },
6769
- "503": {
6770
- "description": "SSO service unavailable"
6771
- }
6772
- },
6773
- "x-genesis-service": "hives",
6774
- "x-upstream": {
6775
- "base": "https://api.hives.sh",
6776
- "method": "POST",
6777
- "path": "/v1/organizations/{org_id}/sso",
6778
- "status": "down"
6779
- },
6780
- "x-mcp": false
6781
- }
6782
- },
6783
- "/v1/hives/organizations/{org_id}/sso/{connection_id}": {
6784
- "delete": {
6785
- "tags": [
6786
- "hives"
6787
- ],
6788
- "summary": "Delete an SSO connection",
6789
- "operationId": "hives_delete_sso_connection",
6790
- "parameters": [
6791
- {
6792
- "name": "org_id",
6793
- "in": "path",
6794
- "description": "Organization ID",
6795
- "required": true,
6796
- "schema": {
6797
- "type": "string"
6798
- }
6799
- },
6800
- {
6801
- "name": "connection_id",
6802
- "in": "path",
6803
- "description": "SSO connection ID",
6804
- "required": true,
6805
- "schema": {
6806
- "type": "string"
6807
- }
6808
- }
6809
- ],
6810
- "responses": {
6811
- "200": {
6812
- "description": "SSO connection deleted",
6813
- "content": {
6814
- "application/json": {
6815
- "schema": {
6816
- "type": "object"
6817
- }
6818
- }
6819
- }
6820
- },
6821
- "401": {
6822
- "description": "Unauthorized"
6823
- },
6824
- "404": {
6825
- "description": "Organization or connection not found"
6826
- },
6827
- "503": {
6828
- "description": "SSO service unavailable"
6829
- }
6830
- },
6831
- "x-genesis-service": "hives",
6832
- "x-upstream": {
6833
- "base": "https://api.hives.sh",
6834
- "method": "DELETE",
6835
- "path": "/v1/organizations/{org_id}/sso/{connection_id}",
6836
- "status": "down"
6837
- },
6838
- "x-mcp": false
6839
- }
6840
- },
6841
6638
  "/v1/hives/organizations/{org_id}/usage": {
6842
6639
  "get": {
6843
6640
  "tags": [
@@ -41449,6 +41246,128 @@
41449
41246
  "x-mcp": true
41450
41247
  }
41451
41248
  },
41249
+ "/v1/dials/workflows/{workflow_id}": {
41250
+ "delete": {
41251
+ "operationId": "dials_deleteWorkflow",
41252
+ "summary": "Delete an owned workflow and its routing descriptor",
41253
+ "description": "Needs `dials:write`. Deletes the workflow with this id (the `id` you deployed it with) and every routing-rule descriptor row it was deployed as, in the verified org/workspace/project/environment only, and records a `workflows.delete` audit event whose actor is the verified gateway identity. Another organization's, workspace's, project's or environment's workflow, and a repeat delete, are 404 `workflow_not_found`. If a held (not released) number is assigned to the workflow (kind `workflow` or `routing_rule`), the delete is refused with 409 `workflow_number_attached` and nothing changes: unassign the number first with `assignNumber` and no resource. Managed inbound policies (`/v1/routing/rules`) are never deleted here. Scope is required in the JSON body, not query parameters.",
41254
+ "parameters": [
41255
+ {
41256
+ "name": "workflow_id",
41257
+ "in": "path",
41258
+ "required": true,
41259
+ "schema": {
41260
+ "type": "string",
41261
+ "minLength": 1,
41262
+ "maxLength": 256
41263
+ }
41264
+ }
41265
+ ],
41266
+ "requestBody": {
41267
+ "required": true,
41268
+ "content": {
41269
+ "application/json": {
41270
+ "schema": {
41271
+ "$ref": "#/components/schemas/Dials.DeleteWorkflow"
41272
+ }
41273
+ }
41274
+ }
41275
+ },
41276
+ "responses": {
41277
+ "200": {
41278
+ "description": "Deleted. The descriptor rows are gone; audit records are kept.",
41279
+ "content": {
41280
+ "application/json": {
41281
+ "schema": {
41282
+ "$ref": "#/components/schemas/Dials.DeleteWorkflowReceipt"
41283
+ }
41284
+ }
41285
+ }
41286
+ },
41287
+ "400": {
41288
+ "description": "Invalid scope or request shape.",
41289
+ "content": {
41290
+ "application/json": {
41291
+ "schema": {
41292
+ "$ref": "#/components/schemas/Dials.CustomerError"
41293
+ }
41294
+ }
41295
+ }
41296
+ },
41297
+ "401": {
41298
+ "description": "Missing or invalid verified identity.",
41299
+ "content": {
41300
+ "application/json": {
41301
+ "schema": {
41302
+ "$ref": "#/components/schemas/Dials.CustomerError"
41303
+ }
41304
+ }
41305
+ }
41306
+ },
41307
+ "403": {
41308
+ "description": "Selected scope is not authorized by signed identity or lacks the required Dials grant.",
41309
+ "content": {
41310
+ "application/json": {
41311
+ "schema": {
41312
+ "$ref": "#/components/schemas/Dials.CustomerError"
41313
+ }
41314
+ }
41315
+ }
41316
+ },
41317
+ "404": {
41318
+ "description": "No workflow with this id in the authorized scope (workflow_not_found).",
41319
+ "content": {
41320
+ "application/json": {
41321
+ "schema": {
41322
+ "$ref": "#/components/schemas/Dials.CustomerError"
41323
+ }
41324
+ }
41325
+ }
41326
+ },
41327
+ "409": {
41328
+ "description": "A held number is assigned to this workflow (workflow_number_attached); unassign it first.",
41329
+ "content": {
41330
+ "application/json": {
41331
+ "schema": {
41332
+ "$ref": "#/components/schemas/Dials.CustomerError"
41333
+ }
41334
+ }
41335
+ }
41336
+ },
41337
+ "500": {
41338
+ "description": "Durable store failed.",
41339
+ "content": {
41340
+ "application/json": {
41341
+ "schema": {
41342
+ "$ref": "#/components/schemas/Dials.CustomerError"
41343
+ }
41344
+ }
41345
+ }
41346
+ },
41347
+ "503": {
41348
+ "description": "Backend is not ready.",
41349
+ "content": {
41350
+ "application/json": {
41351
+ "schema": {
41352
+ "$ref": "#/components/schemas/Dials.CustomerError"
41353
+ }
41354
+ }
41355
+ }
41356
+ }
41357
+ },
41358
+ "tags": [
41359
+ "dials"
41360
+ ],
41361
+ "x-genesis-service": "dials",
41362
+ "x-upstream": {
41363
+ "base": "https://dials-808958844152.us-central1.run.app",
41364
+ "method": "DELETE",
41365
+ "path": "/v1/workflows/{workflow_id}",
41366
+ "status": "unverified"
41367
+ },
41368
+ "x-mcp": true
41369
+ }
41370
+ },
41452
41371
  "/v1/dials/numbers/{number_id}": {
41453
41372
  "delete": {
41454
41373
  "operationId": "dials_deleteNumber",
@@ -101545,6 +101464,838 @@
101545
101464
  },
101546
101465
  "x-mcp": true
101547
101466
  }
101467
+ },
101468
+ "/v1/connections/catalog": {
101469
+ "get": {
101470
+ "operationId": "connections_listCatalog",
101471
+ "summary": "List verified MCP servers in the catalog",
101472
+ "description": "Scope `connections:read`. Filter by OneOS plugin category (`plugin`, e.g. `scopes`). Suspended servers are listed with their `reason`.",
101473
+ "parameters": [
101474
+ {
101475
+ "name": "plugin",
101476
+ "in": "query",
101477
+ "required": false,
101478
+ "description": "OneOS plugin category the server competes in, e.g. scopes, silos, traces",
101479
+ "schema": {
101480
+ "type": "string",
101481
+ "pattern": "^[a-z][a-z0-9-]{0,31}$"
101482
+ }
101483
+ }
101484
+ ],
101485
+ "responses": {
101486
+ "200": {
101487
+ "description": "Catalog servers",
101488
+ "content": {
101489
+ "application/json": {
101490
+ "schema": {
101491
+ "type": "object",
101492
+ "required": [
101493
+ "data"
101494
+ ],
101495
+ "properties": {
101496
+ "data": {
101497
+ "type": "array",
101498
+ "items": {
101499
+ "$ref": "#/components/schemas/Connections.CatalogServer"
101500
+ }
101501
+ }
101502
+ }
101503
+ }
101504
+ }
101505
+ }
101506
+ },
101507
+ "403": {
101508
+ "$ref": "#/components/responses/Connections.Forbidden"
101509
+ }
101510
+ },
101511
+ "tags": [
101512
+ "connections"
101513
+ ],
101514
+ "x-genesis-service": "connections",
101515
+ "x-upstream": {
101516
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101517
+ "method": "GET",
101518
+ "path": "/v1/catalog",
101519
+ "status": "not_deployed"
101520
+ },
101521
+ "x-mcp": true
101522
+ }
101523
+ },
101524
+ "/v1/connections/catalog/{server}": {
101525
+ "parameters": [
101526
+ {
101527
+ "$ref": "#/components/parameters/Connections.Server"
101528
+ }
101529
+ ],
101530
+ "get": {
101531
+ "operationId": "connections_getCatalogServer",
101532
+ "summary": "Get a catalog server with its pinned tool manifest",
101533
+ "description": "Scope `connections:read`.",
101534
+ "responses": {
101535
+ "200": {
101536
+ "description": "The server and its pinned manifest",
101537
+ "content": {
101538
+ "application/json": {
101539
+ "schema": {
101540
+ "$ref": "#/components/schemas/Connections.CatalogServerDetail"
101541
+ }
101542
+ }
101543
+ }
101544
+ },
101545
+ "404": {
101546
+ "$ref": "#/components/responses/Connections.NotFound"
101547
+ }
101548
+ },
101549
+ "tags": [
101550
+ "connections"
101551
+ ],
101552
+ "x-genesis-service": "connections",
101553
+ "x-upstream": {
101554
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101555
+ "method": "GET",
101556
+ "path": "/v1/catalog/{server}",
101557
+ "status": "not_deployed"
101558
+ },
101559
+ "x-mcp": true
101560
+ }
101561
+ },
101562
+ "/v1/connections": {
101563
+ "get": {
101564
+ "operationId": "connections_list",
101565
+ "summary": "List your organization's connections",
101566
+ "description": "Scope `connections:read`. Connections of the selected environment, newest first (at most 200), optionally of one `status`.",
101567
+ "parameters": [
101568
+ {
101569
+ "name": "status",
101570
+ "in": "query",
101571
+ "required": false,
101572
+ "schema": {
101573
+ "type": "string",
101574
+ "enum": [
101575
+ "pending_auth",
101576
+ "active",
101577
+ "needs_reauth",
101578
+ "revoked"
101579
+ ]
101580
+ }
101581
+ }
101582
+ ],
101583
+ "responses": {
101584
+ "200": {
101585
+ "description": "Connections",
101586
+ "content": {
101587
+ "application/json": {
101588
+ "schema": {
101589
+ "type": "object",
101590
+ "required": [
101591
+ "data"
101592
+ ],
101593
+ "properties": {
101594
+ "data": {
101595
+ "type": "array",
101596
+ "items": {
101597
+ "$ref": "#/components/schemas/Connections.Connection"
101598
+ }
101599
+ }
101600
+ }
101601
+ }
101602
+ }
101603
+ }
101604
+ },
101605
+ "403": {
101606
+ "$ref": "#/components/responses/Connections.Forbidden"
101607
+ }
101608
+ },
101609
+ "tags": [
101610
+ "connections"
101611
+ ],
101612
+ "x-genesis-service": "connections",
101613
+ "x-upstream": {
101614
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101615
+ "method": "GET",
101616
+ "path": "/v1",
101617
+ "status": "not_deployed"
101618
+ },
101619
+ "x-mcp": true
101620
+ },
101621
+ "post": {
101622
+ "operationId": "connections_connect",
101623
+ "summary": "Connect a catalog server",
101624
+ "description": "Scope `connections:write`. Creates a `pending_auth` connection and returns the `authorize_url` a person opens to consent at the vendor. `tools` picks the tools to enable (default: the manifest's defaults); only their scopes are requested. Unknown fields are refused (422). Enabling any `send`, `spend` or `destructive` tool needs an owner's approval (428). `auto_org` names the Auto org that governs the connection (its authority checks and approvals); a connect carrying `auto_org` always answers `428 APPROVAL_REQUIRED` first, so a person approves binding the connection to that Auto org.",
101625
+ "parameters": [
101626
+ {
101627
+ "$ref": "#/components/parameters/Connections.Approval"
101628
+ }
101629
+ ],
101630
+ "requestBody": {
101631
+ "required": true,
101632
+ "content": {
101633
+ "application/json": {
101634
+ "schema": {
101635
+ "$ref": "#/components/schemas/Connections.ConnectRequest"
101636
+ }
101637
+ }
101638
+ }
101639
+ },
101640
+ "responses": {
101641
+ "201": {
101642
+ "description": "Connection created, waiting for a person to authorize it",
101643
+ "content": {
101644
+ "application/json": {
101645
+ "schema": {
101646
+ "$ref": "#/components/schemas/Connections.ConnectResponse"
101647
+ }
101648
+ }
101649
+ }
101650
+ },
101651
+ "403": {
101652
+ "$ref": "#/components/responses/Connections.Forbidden"
101653
+ },
101654
+ "404": {
101655
+ "$ref": "#/components/responses/Connections.NotFound"
101656
+ },
101657
+ "409": {
101658
+ "$ref": "#/components/responses/Connections.Conflict"
101659
+ },
101660
+ "410": {
101661
+ "$ref": "#/components/responses/Connections.ToolChanged"
101662
+ },
101663
+ "422": {
101664
+ "$ref": "#/components/responses/Connections.Invalid"
101665
+ },
101666
+ "428": {
101667
+ "$ref": "#/components/responses/Connections.ApprovalRequired"
101668
+ }
101669
+ },
101670
+ "tags": [
101671
+ "connections"
101672
+ ],
101673
+ "x-genesis-service": "connections",
101674
+ "x-upstream": {
101675
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101676
+ "method": "POST",
101677
+ "path": "/v1",
101678
+ "status": "not_deployed"
101679
+ },
101680
+ "x-mcp": true
101681
+ }
101682
+ },
101683
+ "/v1/connections/{id}": {
101684
+ "parameters": [
101685
+ {
101686
+ "$ref": "#/components/parameters/Connections.Id"
101687
+ }
101688
+ ],
101689
+ "get": {
101690
+ "operationId": "connections_get",
101691
+ "summary": "Get a connection",
101692
+ "description": "Scope `connections:read`. Status, granted scopes and the pinned manifest hash.",
101693
+ "responses": {
101694
+ "200": {
101695
+ "description": "The connection",
101696
+ "content": {
101697
+ "application/json": {
101698
+ "schema": {
101699
+ "$ref": "#/components/schemas/Connections.Connection"
101700
+ }
101701
+ }
101702
+ }
101703
+ },
101704
+ "404": {
101705
+ "$ref": "#/components/responses/Connections.NotFound"
101706
+ }
101707
+ },
101708
+ "tags": [
101709
+ "connections"
101710
+ ],
101711
+ "x-genesis-service": "connections",
101712
+ "x-upstream": {
101713
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101714
+ "method": "GET",
101715
+ "path": "/v1/{id}",
101716
+ "status": "not_deployed"
101717
+ },
101718
+ "x-mcp": true
101719
+ },
101720
+ "delete": {
101721
+ "operationId": "connections_revoke",
101722
+ "summary": "Revoke a connection",
101723
+ "description": "Scope `connections:write`. Never needs an approval. Blinds deletes the stored tokens and asks the vendor to revoke them (best effort, reported as `vendor_revoked`; `tokens_deleted` is false when Blinds did not confirm, and repeating the DELETE retries). The connection stays listed as `revoked`.",
101724
+ "responses": {
101725
+ "200": {
101726
+ "description": "Revoked",
101727
+ "content": {
101728
+ "application/json": {
101729
+ "schema": {
101730
+ "$ref": "#/components/schemas/Connections.RevokeResponse"
101731
+ }
101732
+ }
101733
+ }
101734
+ },
101735
+ "403": {
101736
+ "$ref": "#/components/responses/Connections.Forbidden"
101737
+ },
101738
+ "404": {
101739
+ "$ref": "#/components/responses/Connections.NotFound"
101740
+ }
101741
+ },
101742
+ "tags": [
101743
+ "connections"
101744
+ ],
101745
+ "x-genesis-service": "connections",
101746
+ "x-upstream": {
101747
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101748
+ "method": "DELETE",
101749
+ "path": "/v1/{id}",
101750
+ "status": "not_deployed"
101751
+ },
101752
+ "x-mcp": true
101753
+ }
101754
+ },
101755
+ "/v1/connections/{id}/authorize": {
101756
+ "parameters": [
101757
+ {
101758
+ "$ref": "#/components/parameters/Connections.Id"
101759
+ }
101760
+ ],
101761
+ "post": {
101762
+ "operationId": "connections_authorize",
101763
+ "summary": "Get a new authorize URL for a person to open",
101764
+ "description": "Scope `connections:write`. Returns a fresh `authorize_url` (its `state` is single use and valid for 10 minutes). Human step: a person opens it in a browser. The hosted MCP refuses this operation for agents (human consent); use the CLI (`genesis connections authorize <id>`) or the Console.",
101765
+ "responses": {
101766
+ "200": {
101767
+ "description": "The URL a person opens to consent at the vendor",
101768
+ "content": {
101769
+ "application/json": {
101770
+ "schema": {
101771
+ "$ref": "#/components/schemas/Connections.AuthorizeResponse"
101772
+ }
101773
+ }
101774
+ }
101775
+ },
101776
+ "403": {
101777
+ "$ref": "#/components/responses/Connections.Forbidden"
101778
+ },
101779
+ "404": {
101780
+ "$ref": "#/components/responses/Connections.NotFound"
101781
+ },
101782
+ "409": {
101783
+ "$ref": "#/components/responses/Connections.Conflict"
101784
+ }
101785
+ },
101786
+ "tags": [
101787
+ "connections"
101788
+ ],
101789
+ "x-genesis-service": "connections",
101790
+ "x-upstream": {
101791
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101792
+ "method": "POST",
101793
+ "path": "/v1/{id}/authorize",
101794
+ "status": "not_deployed"
101795
+ },
101796
+ "x-mcp": false
101797
+ }
101798
+ },
101799
+ "/v1/connections/{id}/tools": {
101800
+ "parameters": [
101801
+ {
101802
+ "$ref": "#/components/parameters/Connections.Id"
101803
+ }
101804
+ ],
101805
+ "get": {
101806
+ "operationId": "connections_listTools",
101807
+ "summary": "List a connection's tools with their policy",
101808
+ "description": "Scope `connections:read`. The pinned manifest's tools, each with its effect, scopes, policy mode and the vendor's description and input schema (untrusted).",
101809
+ "responses": {
101810
+ "200": {
101811
+ "description": "Tools",
101812
+ "content": {
101813
+ "application/json": {
101814
+ "schema": {
101815
+ "$ref": "#/components/schemas/Connections.ToolList"
101816
+ }
101817
+ }
101818
+ }
101819
+ },
101820
+ "404": {
101821
+ "$ref": "#/components/responses/Connections.NotFound"
101822
+ },
101823
+ "410": {
101824
+ "$ref": "#/components/responses/Connections.ToolChanged"
101825
+ }
101826
+ },
101827
+ "tags": [
101828
+ "connections"
101829
+ ],
101830
+ "x-genesis-service": "connections",
101831
+ "x-upstream": {
101832
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101833
+ "method": "GET",
101834
+ "path": "/v1/{id}/tools",
101835
+ "status": "not_deployed"
101836
+ },
101837
+ "x-mcp": true
101838
+ },
101839
+ "patch": {
101840
+ "operationId": "connections_setToolPolicy",
101841
+ "summary": "Set tool policies (allow, approve or deny)",
101842
+ "description": "Scope `connections:write`. `tools` maps tool names to `allow`, `approve` or `deny`; `send`, `spend` and `destructive` tools take `approve` or `deny` only (422 for `allow`). Narrowing never needs an approval; widening (deny to approve or allow, approve to allow) needs an owner's approval (428) and Auto's `connections.widen` check. When the change needs scopes not yet granted, the answer carries `reauthorize`.",
101843
+ "parameters": [
101844
+ {
101845
+ "$ref": "#/components/parameters/Connections.Approval"
101846
+ }
101847
+ ],
101848
+ "requestBody": {
101849
+ "required": true,
101850
+ "content": {
101851
+ "application/json": {
101852
+ "schema": {
101853
+ "$ref": "#/components/schemas/Connections.ToolPolicyRequest"
101854
+ }
101855
+ }
101856
+ }
101857
+ },
101858
+ "responses": {
101859
+ "200": {
101860
+ "description": "The connection with its new policy and the changes made",
101861
+ "content": {
101862
+ "application/json": {
101863
+ "schema": {
101864
+ "$ref": "#/components/schemas/Connections.ToolPolicyResponse"
101865
+ }
101866
+ }
101867
+ }
101868
+ },
101869
+ "403": {
101870
+ "$ref": "#/components/responses/Connections.Forbidden"
101871
+ },
101872
+ "404": {
101873
+ "$ref": "#/components/responses/Connections.NotFound"
101874
+ },
101875
+ "409": {
101876
+ "$ref": "#/components/responses/Connections.Conflict"
101877
+ },
101878
+ "422": {
101879
+ "$ref": "#/components/responses/Connections.Invalid"
101880
+ },
101881
+ "428": {
101882
+ "$ref": "#/components/responses/Connections.ApprovalRequired"
101883
+ }
101884
+ },
101885
+ "tags": [
101886
+ "connections"
101887
+ ],
101888
+ "x-genesis-service": "connections",
101889
+ "x-upstream": {
101890
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101891
+ "method": "PATCH",
101892
+ "path": "/v1/{id}/tools",
101893
+ "status": "not_deployed"
101894
+ },
101895
+ "x-mcp": true
101896
+ }
101897
+ },
101898
+ "/v1/connections/{id}/tools/{tool}/call": {
101899
+ "parameters": [
101900
+ {
101901
+ "$ref": "#/components/parameters/Connections.Id"
101902
+ },
101903
+ {
101904
+ "$ref": "#/components/parameters/Connections.Tool"
101905
+ }
101906
+ ],
101907
+ "post": {
101908
+ "operationId": "connections_call",
101909
+ "summary": "Call a connected tool",
101910
+ "description": "Scope `connections:write`. Runs Auto's `connections.call` check, then calls the tool through Blinds. The result is third-party content inside the `untrusted` wrapper. A tool whose policy is `approve`, or a write to another connection after this session read untrusted content, answers 428; retry with `OneOS-Approval`.",
101911
+ "parameters": [
101912
+ {
101913
+ "$ref": "#/components/parameters/Connections.Approval"
101914
+ }
101915
+ ],
101916
+ "requestBody": {
101917
+ "required": true,
101918
+ "content": {
101919
+ "application/json": {
101920
+ "schema": {
101921
+ "$ref": "#/components/schemas/Connections.CallRequest"
101922
+ }
101923
+ }
101924
+ }
101925
+ },
101926
+ "responses": {
101927
+ "200": {
101928
+ "description": "The call's outcome and its wrapped result",
101929
+ "content": {
101930
+ "application/json": {
101931
+ "schema": {
101932
+ "$ref": "#/components/schemas/Connections.CallResult"
101933
+ }
101934
+ }
101935
+ }
101936
+ },
101937
+ "403": {
101938
+ "$ref": "#/components/responses/Connections.Forbidden"
101939
+ },
101940
+ "404": {
101941
+ "$ref": "#/components/responses/Connections.NotFound"
101942
+ },
101943
+ "409": {
101944
+ "$ref": "#/components/responses/Connections.NeedsReauth"
101945
+ },
101946
+ "410": {
101947
+ "$ref": "#/components/responses/Connections.ToolChanged"
101948
+ },
101949
+ "422": {
101950
+ "$ref": "#/components/responses/Connections.Invalid"
101951
+ },
101952
+ "428": {
101953
+ "$ref": "#/components/responses/Connections.ApprovalRequired"
101954
+ }
101955
+ },
101956
+ "tags": [
101957
+ "connections"
101958
+ ],
101959
+ "x-genesis-service": "connections",
101960
+ "x-upstream": {
101961
+ "base": "https://connections-api-808958844152.us-central1.run.app",
101962
+ "method": "POST",
101963
+ "path": "/v1/{id}/tools/{tool}/call",
101964
+ "status": "not_deployed"
101965
+ },
101966
+ "x-mcp": true
101967
+ }
101968
+ },
101969
+ "/v1/connections/{id}/activity": {
101970
+ "parameters": [
101971
+ {
101972
+ "$ref": "#/components/parameters/Connections.Id"
101973
+ }
101974
+ ],
101975
+ "get": {
101976
+ "operationId": "connections_activity",
101977
+ "summary": "Read a connection's activity ledger",
101978
+ "description": "Scope `connections:read`. Append-only, hash-chained rows, oldest first; hashes only, never payloads. Page with `after` = `next_after`.",
101979
+ "parameters": [
101980
+ {
101981
+ "name": "after",
101982
+ "in": "query",
101983
+ "required": false,
101984
+ "description": "Return rows with a larger `seq` (default 0)",
101985
+ "schema": {
101986
+ "type": "integer",
101987
+ "minimum": 0
101988
+ }
101989
+ },
101990
+ {
101991
+ "name": "limit",
101992
+ "in": "query",
101993
+ "required": false,
101994
+ "description": "Page size, 1-500 (default 100)",
101995
+ "schema": {
101996
+ "type": "integer",
101997
+ "minimum": 1,
101998
+ "maximum": 500
101999
+ }
102000
+ }
102001
+ ],
102002
+ "responses": {
102003
+ "200": {
102004
+ "description": "Ledger rows",
102005
+ "content": {
102006
+ "application/json": {
102007
+ "schema": {
102008
+ "type": "object",
102009
+ "required": [
102010
+ "data"
102011
+ ],
102012
+ "properties": {
102013
+ "data": {
102014
+ "type": "array",
102015
+ "items": {
102016
+ "$ref": "#/components/schemas/Connections.ActivityRow"
102017
+ }
102018
+ },
102019
+ "next_after": {
102020
+ "type": [
102021
+ "integer",
102022
+ "null"
102023
+ ]
102024
+ }
102025
+ }
102026
+ }
102027
+ }
102028
+ }
102029
+ },
102030
+ "404": {
102031
+ "$ref": "#/components/responses/Connections.NotFound"
102032
+ }
102033
+ },
102034
+ "tags": [
102035
+ "connections"
102036
+ ],
102037
+ "x-genesis-service": "connections",
102038
+ "x-upstream": {
102039
+ "base": "https://connections-api-808958844152.us-central1.run.app",
102040
+ "method": "GET",
102041
+ "path": "/v1/{id}/activity",
102042
+ "status": "not_deployed"
102043
+ },
102044
+ "x-mcp": true
102045
+ }
102046
+ },
102047
+ "/v1/connections/tools": {
102048
+ "get": {
102049
+ "operationId": "connections_searchTools",
102050
+ "summary": "Search the connected tools your organization may call",
102051
+ "description": "Scope `connections:read`. Connected tools of the selected environment whose policy is not `deny`, matched against `q` (at most 100). genesis-mcp's `genesis_search_tools` lists them by `name` (`conn.<connection>.<tool>`). `session_tainted` says whether this principal has read untrusted content.",
102052
+ "parameters": [
102053
+ {
102054
+ "name": "q",
102055
+ "in": "query",
102056
+ "required": false,
102057
+ "description": "Keywords",
102058
+ "schema": {
102059
+ "type": "string",
102060
+ "maxLength": 200
102061
+ }
102062
+ }
102063
+ ],
102064
+ "responses": {
102065
+ "200": {
102066
+ "description": "Matching connected tools",
102067
+ "content": {
102068
+ "application/json": {
102069
+ "schema": {
102070
+ "$ref": "#/components/schemas/Connections.SearchToolsResponse"
102071
+ }
102072
+ }
102073
+ }
102074
+ },
102075
+ "403": {
102076
+ "$ref": "#/components/responses/Connections.Forbidden"
102077
+ }
102078
+ },
102079
+ "tags": [
102080
+ "connections"
102081
+ ],
102082
+ "x-genesis-service": "connections",
102083
+ "x-upstream": {
102084
+ "base": "https://connections-api-808958844152.us-central1.run.app",
102085
+ "method": "GET",
102086
+ "path": "/v1/tools",
102087
+ "status": "not_deployed"
102088
+ },
102089
+ "x-mcp": true
102090
+ }
102091
+ },
102092
+ "/v1/connections/oauth/callback": {
102093
+ "get": {
102094
+ "operationId": "connections_oauthCallback",
102095
+ "summary": "OAuth redirect target for a person's browser (anonymous)",
102096
+ "description": "Human browser only; anonymous. The vendor redirects the person here after consent. The gateway forwards it with no identity envelope and no credential; Connections authenticates it only by the single-use `state` (10 minutes, bound to the connection and its PKCE verifier) and hands the code to Blinds. Not an API for agents.",
102097
+ "parameters": [
102098
+ {
102099
+ "name": "state",
102100
+ "in": "query",
102101
+ "required": false,
102102
+ "schema": {
102103
+ "type": "string",
102104
+ "maxLength": 512
102105
+ }
102106
+ },
102107
+ {
102108
+ "name": "code",
102109
+ "in": "query",
102110
+ "required": false,
102111
+ "schema": {
102112
+ "type": "string",
102113
+ "maxLength": 2048
102114
+ }
102115
+ },
102116
+ {
102117
+ "name": "iss",
102118
+ "in": "query",
102119
+ "required": false,
102120
+ "schema": {
102121
+ "type": "string",
102122
+ "maxLength": 512
102123
+ }
102124
+ },
102125
+ {
102126
+ "name": "error",
102127
+ "in": "query",
102128
+ "required": false,
102129
+ "schema": {
102130
+ "type": "string",
102131
+ "maxLength": 256
102132
+ }
102133
+ },
102134
+ {
102135
+ "name": "error_description",
102136
+ "in": "query",
102137
+ "required": false,
102138
+ "schema": {
102139
+ "type": "string",
102140
+ "maxLength": 1024
102141
+ }
102142
+ }
102143
+ ],
102144
+ "responses": {
102145
+ "200": {
102146
+ "description": "A page telling the person the connection is ready (or what failed)",
102147
+ "content": {
102148
+ "text/html": {
102149
+ "schema": {
102150
+ "type": "string"
102151
+ }
102152
+ }
102153
+ }
102154
+ },
102155
+ "400": {
102156
+ "description": "Unknown, used or expired state",
102157
+ "content": {
102158
+ "text/html": {
102159
+ "schema": {
102160
+ "type": "string"
102161
+ }
102162
+ }
102163
+ }
102164
+ }
102165
+ },
102166
+ "tags": [
102167
+ "connections"
102168
+ ],
102169
+ "security": [],
102170
+ "x-genesis-service": "connections",
102171
+ "x-upstream": {
102172
+ "base": "https://connections-api-808958844152.us-central1.run.app",
102173
+ "method": "GET",
102174
+ "path": "/v1/oauth/callback",
102175
+ "status": "not_deployed"
102176
+ },
102177
+ "x-mcp": false
102178
+ }
102179
+ },
102180
+ "/v1/agents/search": {
102181
+ "get": {
102182
+ "operationId": "agents_search",
102183
+ "summary": "Search public agents",
102184
+ "description": "Public, no credential. Ranked full-text search over public Live agents: matches in the name rank above the organization name, then the description, then the agent id; every word must match, as a prefix. An exact agent id ranks that agent first. GET only, no body, no other query key. Cached at the edge for up to 30 seconds. Rate limited per client address (429 RATE_LIMITED with Retry-After).",
102185
+ "parameters": [
102186
+ {
102187
+ "name": "q",
102188
+ "in": "query",
102189
+ "required": true,
102190
+ "description": "What to search for, 1 to 200 characters.",
102191
+ "schema": {
102192
+ "type": "string",
102193
+ "minLength": 1,
102194
+ "maxLength": 200
102195
+ }
102196
+ },
102197
+ {
102198
+ "name": "limit",
102199
+ "in": "query",
102200
+ "required": false,
102201
+ "description": "Most results to return, 1 to 20 (default 20).",
102202
+ "schema": {
102203
+ "type": "integer",
102204
+ "minimum": 1,
102205
+ "maximum": 20,
102206
+ "default": 20
102207
+ }
102208
+ }
102209
+ ],
102210
+ "responses": {
102211
+ "200": {
102212
+ "description": "Matching public agents, best first",
102213
+ "content": {
102214
+ "application/json": {
102215
+ "schema": {
102216
+ "$ref": "#/components/schemas/Agents.AgentSearchResults"
102217
+ }
102218
+ }
102219
+ }
102220
+ },
102221
+ "400": {
102222
+ "description": "INVALID_QUERY (q or limit out of range) or INVALID_REQUEST (another query key",
102223
+ "or a body)": null
102224
+ },
102225
+ "405": {
102226
+ "description": "METHOD_NOT_ALLOWED (after a credential verifies; without one",
102227
+ "401 like every non-public path)": null
102228
+ },
102229
+ "429": {
102230
+ "description": "RATE_LIMITED"
102231
+ },
102232
+ "502": {
102233
+ "description": "BAD_GATEWAY (the index answered outside its contract; nothing is passed through)"
102234
+ },
102235
+ "503": {
102236
+ "description": "AGENT_INDEX_UNAVAILABLE or SERVICE_DISABLED"
102237
+ }
102238
+ },
102239
+ "tags": [
102240
+ "agents"
102241
+ ],
102242
+ "security": [],
102243
+ "x-genesis-service": "agents",
102244
+ "x-upstream": {
102245
+ "base": "https://genesis-agent-index.invalid",
102246
+ "method": "GET",
102247
+ "path": "/v1/agents/search",
102248
+ "status": "not_deployed"
102249
+ },
102250
+ "x-mcp": true
102251
+ }
102252
+ },
102253
+ "/v1/agents/sitemap": {
102254
+ "get": {
102255
+ "operationId": "agents_sitemap",
102256
+ "summary": "List every public agent for crawlers",
102257
+ "description": "Public, no credential. Every public Live agent id (at most 50,000) with when its public content last changed, for sitemaps and spiders. GET only, no query string, no body. Cached at the edge for up to 5 minutes. Rate limited per client address.",
102258
+ "responses": {
102259
+ "200": {
102260
+ "description": "Public agent ids",
102261
+ "content": {
102262
+ "application/json": {
102263
+ "schema": {
102264
+ "$ref": "#/components/schemas/Agents.AgentSitemap"
102265
+ }
102266
+ }
102267
+ }
102268
+ },
102269
+ "400": {
102270
+ "description": "INVALID_REQUEST (a query string or a body)"
102271
+ },
102272
+ "405": {
102273
+ "description": "METHOD_NOT_ALLOWED (after a credential verifies; without one",
102274
+ "401 like every non-public path)": null
102275
+ },
102276
+ "429": {
102277
+ "description": "RATE_LIMITED"
102278
+ },
102279
+ "502": {
102280
+ "description": "BAD_GATEWAY"
102281
+ },
102282
+ "503": {
102283
+ "description": "AGENT_INDEX_UNAVAILABLE or SERVICE_DISABLED"
102284
+ }
102285
+ },
102286
+ "tags": [
102287
+ "agents"
102288
+ ],
102289
+ "security": [],
102290
+ "x-genesis-service": "agents",
102291
+ "x-upstream": {
102292
+ "base": "https://genesis-agent-index.invalid",
102293
+ "method": "GET",
102294
+ "path": "/v1/agents/sitemap",
102295
+ "status": "not_deployed"
102296
+ },
102297
+ "x-mcp": true
102298
+ }
101548
102299
  }
101549
102300
  },
101550
102301
  "components": {
@@ -105260,39 +106011,6 @@
105260
106011
  }
105261
106012
  }
105262
106013
  },
105263
- "Hives.CreateSsoConnectionRequest": {
105264
- "type": "object",
105265
- "required": [
105266
- "name"
105267
- ],
105268
- "properties": {
105269
- "idp_type": {
105270
- "type": [
105271
- "string",
105272
- "null"
105273
- ],
105274
- "description": "IdP type hint"
105275
- },
105276
- "metadata_raw": {
105277
- "type": [
105278
- "string",
105279
- "null"
105280
- ],
105281
- "description": "Raw IdP metadata XML (alternative to URL)"
105282
- },
105283
- "metadata_url": {
105284
- "type": [
105285
- "string",
105286
- "null"
105287
- ],
105288
- "description": "IdP metadata URL (e.g. Okta, Azure AD metadata endpoint)"
105289
- },
105290
- "name": {
105291
- "type": "string",
105292
- "description": "Connection name/label"
105293
- }
105294
- }
105295
- },
105296
106014
  "Hives.CreateTerminalSessionRequest": {
105297
106015
  "type": "object",
105298
106016
  "description": "Create terminal session request",
@@ -131145,6 +131863,65 @@
131145
131863
  "additionalProperties": false,
131146
131864
  "description": "Upsert by scoped workflow ID. Backend supplies deployed status, stable route ID and enabled routing descriptor. This is persisted configuration, not runtime/telephony execution proof."
131147
131865
  },
131866
+ "Dials.DeleteWorkflow": {
131867
+ "type": "object",
131868
+ "additionalProperties": false,
131869
+ "properties": {
131870
+ "scope": {
131871
+ "$ref": "#/components/schemas/Dials.Scope"
131872
+ },
131873
+ "actorId": {
131874
+ "type": [
131875
+ "string",
131876
+ "null"
131877
+ ],
131878
+ "description": "Optional compatibility field; the actual actor comes from the verified gateway identity."
131879
+ }
131880
+ },
131881
+ "required": [
131882
+ "scope"
131883
+ ]
131884
+ },
131885
+ "Dials.DeleteWorkflowReceipt": {
131886
+ "type": "object",
131887
+ "additionalProperties": false,
131888
+ "properties": {
131889
+ "ok": {
131890
+ "type": "boolean",
131891
+ "const": true
131892
+ },
131893
+ "deleted": {
131894
+ "type": "boolean",
131895
+ "const": true
131896
+ },
131897
+ "workflow": {
131898
+ "$ref": "#/components/schemas/Dials.WorkflowDocument"
131899
+ },
131900
+ "routeIds": {
131901
+ "type": "array",
131902
+ "items": {
131903
+ "type": "string"
131904
+ },
131905
+ "description": "The routing-rule descriptor ids that were deleted."
131906
+ },
131907
+ "auditId": {
131908
+ "type": "string"
131909
+ },
131910
+ "next": {
131911
+ "type": "string",
131912
+ "const": "workflow_deleted"
131913
+ }
131914
+ },
131915
+ "required": [
131916
+ "ok",
131917
+ "deleted",
131918
+ "workflow",
131919
+ "routeIds",
131920
+ "auditId",
131921
+ "next"
131922
+ ],
131923
+ "description": "The deleted workflow as it was, with status \"deleted\"."
131924
+ },
131148
131925
  "Dials.CallSession": {
131149
131926
  "type": "object",
131150
131927
  "required": [
@@ -157015,6 +157792,951 @@
157015
157792
  }
157016
157793
  }
157017
157794
  }
157795
+ },
157796
+ "Connections.Tier": {
157797
+ "type": "string",
157798
+ "enum": [
157799
+ "verified",
157800
+ "suspended",
157801
+ "pending"
157802
+ ]
157803
+ },
157804
+ "Connections.Effect": {
157805
+ "type": "string",
157806
+ "enum": [
157807
+ "read",
157808
+ "write",
157809
+ "send",
157810
+ "spend",
157811
+ "destructive"
157812
+ ]
157813
+ },
157814
+ "Connections.Mode": {
157815
+ "type": "string",
157816
+ "enum": [
157817
+ "allow",
157818
+ "approve",
157819
+ "deny"
157820
+ ]
157821
+ },
157822
+ "Connections.ConnectionStatus": {
157823
+ "type": "string",
157824
+ "enum": [
157825
+ "pending_auth",
157826
+ "active",
157827
+ "needs_reauth",
157828
+ "revoked"
157829
+ ]
157830
+ },
157831
+ "Connections.Error": {
157832
+ "type": "object",
157833
+ "required": [
157834
+ "error"
157835
+ ],
157836
+ "description": "Codes include TOOL_DENIED, AUTHORITY_DENIED (with `reasons`), APPROVAL_UNAVAILABLE (403), TOOL_CHANGED_PENDING_REVIEW (410), APPROVAL_CONSUMED, APPROVAL_NOT_APPROVED, APPROVAL_MISMATCH, revoked, conflict (409) and invalid (422).",
157837
+ "properties": {
157838
+ "error": {
157839
+ "type": "object",
157840
+ "required": [
157841
+ "code",
157842
+ "message"
157843
+ ],
157844
+ "properties": {
157845
+ "code": {
157846
+ "type": "string"
157847
+ },
157848
+ "message": {
157849
+ "type": "string"
157850
+ },
157851
+ "request_id": {
157852
+ "type": "string"
157853
+ }
157854
+ }
157855
+ },
157856
+ "reasons": {
157857
+ "type": "array",
157858
+ "items": {},
157859
+ "description": "Auto's reasons on 403 AUTHORITY_DENIED"
157860
+ },
157861
+ "auto_check_id": {
157862
+ "type": "string"
157863
+ }
157864
+ }
157865
+ },
157866
+ "Connections.ApprovalRequired": {
157867
+ "type": "object",
157868
+ "required": [
157869
+ "error",
157870
+ "approval_request_id",
157871
+ "poll_url",
157872
+ "expires_at"
157873
+ ],
157874
+ "properties": {
157875
+ "error": {
157876
+ "type": "object",
157877
+ "required": [
157878
+ "code",
157879
+ "message"
157880
+ ],
157881
+ "properties": {
157882
+ "code": {
157883
+ "type": "string",
157884
+ "const": "APPROVAL_REQUIRED"
157885
+ },
157886
+ "message": {
157887
+ "type": "string"
157888
+ },
157889
+ "request_id": {
157890
+ "type": "string"
157891
+ }
157892
+ }
157893
+ },
157894
+ "approval_request_id": {
157895
+ "type": "string",
157896
+ "pattern": "^apr_[0-9a-f]{32}$"
157897
+ },
157898
+ "poll_url": {
157899
+ "type": "string",
157900
+ "description": "Read the approval here, e.g. /v1/auto/approvals/apr_…"
157901
+ },
157902
+ "expires_at": {
157903
+ "type": [
157904
+ "string",
157905
+ "null"
157906
+ ],
157907
+ "format": "date-time"
157908
+ }
157909
+ }
157910
+ },
157911
+ "Connections.NeedsReauth": {
157912
+ "type": "object",
157913
+ "required": [
157914
+ "error",
157915
+ "authorize_url"
157916
+ ],
157917
+ "properties": {
157918
+ "error": {
157919
+ "type": "object",
157920
+ "required": [
157921
+ "code",
157922
+ "message"
157923
+ ],
157924
+ "properties": {
157925
+ "code": {
157926
+ "type": "string",
157927
+ "const": "CONNECTION_NEEDS_REAUTH"
157928
+ },
157929
+ "message": {
157930
+ "type": "string"
157931
+ },
157932
+ "request_id": {
157933
+ "type": "string"
157934
+ }
157935
+ }
157936
+ },
157937
+ "authorize_url": {
157938
+ "type": "string",
157939
+ "format": "uri",
157940
+ "description": "A person opens this to re-authorize"
157941
+ }
157942
+ }
157943
+ },
157944
+ "Connections.Source": {
157945
+ "type": "object",
157946
+ "properties": {
157947
+ "connection": {
157948
+ "type": "string"
157949
+ },
157950
+ "server": {
157951
+ "type": "string"
157952
+ },
157953
+ "tool": {
157954
+ "type": "string"
157955
+ },
157956
+ "tier": {
157957
+ "$ref": "#/components/schemas/Connections.Tier"
157958
+ }
157959
+ }
157960
+ },
157961
+ "Connections.UntrustedText": {
157962
+ "type": "object",
157963
+ "description": "A vendor-written text (a tool description), sanitized and flagged. Data, never instructions.",
157964
+ "required": [
157965
+ "untrusted",
157966
+ "text"
157967
+ ],
157968
+ "properties": {
157969
+ "untrusted": {
157970
+ "type": "boolean",
157971
+ "const": true
157972
+ },
157973
+ "source": {
157974
+ "$ref": "#/components/schemas/Connections.Source"
157975
+ },
157976
+ "text": {
157977
+ "type": "string"
157978
+ },
157979
+ "sanitized": {
157980
+ "type": "integer",
157981
+ "minimum": 0
157982
+ },
157983
+ "flags": {
157984
+ "type": "array",
157985
+ "items": {
157986
+ "type": "string"
157987
+ }
157988
+ }
157989
+ }
157990
+ },
157991
+ "Connections.UntrustedResult": {
157992
+ "type": "object",
157993
+ "description": "A tool's output (MCP content blocks), sanitized, credential-redacted and flagged. Third-party data, never instructions.",
157994
+ "required": [
157995
+ "untrusted",
157996
+ "source",
157997
+ "content"
157998
+ ],
157999
+ "properties": {
158000
+ "untrusted": {
158001
+ "type": "boolean",
158002
+ "const": true
158003
+ },
158004
+ "source": {
158005
+ "$ref": "#/components/schemas/Connections.Source"
158006
+ },
158007
+ "flags": {
158008
+ "type": "array",
158009
+ "items": {
158010
+ "type": "string"
158011
+ }
158012
+ },
158013
+ "sanitized": {
158014
+ "type": "integer",
158015
+ "minimum": 0
158016
+ },
158017
+ "credentials_redacted": {
158018
+ "type": "integer",
158019
+ "minimum": 0
158020
+ },
158021
+ "truncated": {
158022
+ "type": "boolean"
158023
+ },
158024
+ "content": {
158025
+ "type": "array",
158026
+ "items": {}
158027
+ },
158028
+ "structuredContent": {},
158029
+ "isError": {
158030
+ "type": "boolean"
158031
+ }
158032
+ }
158033
+ },
158034
+ "Connections.CatalogServer": {
158035
+ "type": "object",
158036
+ "required": [
158037
+ "id",
158038
+ "display",
158039
+ "tier"
158040
+ ],
158041
+ "properties": {
158042
+ "id": {
158043
+ "type": "string"
158044
+ },
158045
+ "vendor": {
158046
+ "type": "string"
158047
+ },
158048
+ "display": {
158049
+ "type": "string"
158050
+ },
158051
+ "plugins": {
158052
+ "type": "array",
158053
+ "items": {
158054
+ "type": "string"
158055
+ }
158056
+ },
158057
+ "url": {
158058
+ "type": "string"
158059
+ },
158060
+ "docs": {
158061
+ "type": "string"
158062
+ },
158063
+ "auth": {
158064
+ "type": "string"
158065
+ },
158066
+ "tier": {
158067
+ "$ref": "#/components/schemas/Connections.Tier"
158068
+ },
158069
+ "reason": {
158070
+ "type": [
158071
+ "string",
158072
+ "null"
158073
+ ],
158074
+ "description": "Why a suspended server is paused"
158075
+ },
158076
+ "tools": {
158077
+ "type": "integer",
158078
+ "description": "Number of tools in the pinned manifest"
158079
+ }
158080
+ }
158081
+ },
158082
+ "Connections.CatalogTool": {
158083
+ "type": "object",
158084
+ "required": [
158085
+ "name",
158086
+ "effect"
158087
+ ],
158088
+ "properties": {
158089
+ "name": {
158090
+ "type": "string"
158091
+ },
158092
+ "effect": {
158093
+ "$ref": "#/components/schemas/Connections.Effect"
158094
+ },
158095
+ "scopes": {
158096
+ "type": "array",
158097
+ "items": {
158098
+ "type": "string"
158099
+ }
158100
+ },
158101
+ "description": {
158102
+ "$ref": "#/components/schemas/Connections.UntrustedText"
158103
+ }
158104
+ }
158105
+ },
158106
+ "Connections.CatalogServerDetail": {
158107
+ "type": "object",
158108
+ "required": [
158109
+ "id",
158110
+ "display",
158111
+ "tier",
158112
+ "tools"
158113
+ ],
158114
+ "properties": {
158115
+ "id": {
158116
+ "type": "string"
158117
+ },
158118
+ "vendor": {
158119
+ "type": "string"
158120
+ },
158121
+ "display": {
158122
+ "type": "string"
158123
+ },
158124
+ "plugins": {
158125
+ "type": "array",
158126
+ "items": {
158127
+ "type": "string"
158128
+ }
158129
+ },
158130
+ "url": {
158131
+ "type": "string"
158132
+ },
158133
+ "docs": {
158134
+ "type": "string"
158135
+ },
158136
+ "auth": {
158137
+ "type": "string"
158138
+ },
158139
+ "tier": {
158140
+ "$ref": "#/components/schemas/Connections.Tier"
158141
+ },
158142
+ "reason": {
158143
+ "type": [
158144
+ "string",
158145
+ "null"
158146
+ ]
158147
+ },
158148
+ "manifest_sha256": {
158149
+ "type": [
158150
+ "string",
158151
+ "null"
158152
+ ]
158153
+ },
158154
+ "tools": {
158155
+ "type": "array",
158156
+ "items": {
158157
+ "$ref": "#/components/schemas/Connections.CatalogTool"
158158
+ }
158159
+ }
158160
+ }
158161
+ },
158162
+ "Connections.Connection": {
158163
+ "type": "object",
158164
+ "required": [
158165
+ "id",
158166
+ "server",
158167
+ "status"
158168
+ ],
158169
+ "properties": {
158170
+ "id": {
158171
+ "type": "string",
158172
+ "pattern": "^conn_[0-9a-f]{32}$"
158173
+ },
158174
+ "server": {
158175
+ "type": "string"
158176
+ },
158177
+ "url": {
158178
+ "type": "string"
158179
+ },
158180
+ "status": {
158181
+ "$ref": "#/components/schemas/Connections.ConnectionStatus"
158182
+ },
158183
+ "auto_org": {
158184
+ "type": [
158185
+ "string",
158186
+ "null"
158187
+ ],
158188
+ "description": "The Auto org that governs the connection, if one was named at connect"
158189
+ },
158190
+ "tier": {
158191
+ "$ref": "#/components/schemas/Connections.Tier"
158192
+ },
158193
+ "server_status": {
158194
+ "$ref": "#/components/schemas/Connections.Tier"
158195
+ },
158196
+ "policy": {
158197
+ "type": "object",
158198
+ "additionalProperties": {
158199
+ "$ref": "#/components/schemas/Connections.Mode"
158200
+ }
158201
+ },
158202
+ "scopes_requested": {
158203
+ "type": "array",
158204
+ "items": {
158205
+ "type": "string"
158206
+ }
158207
+ },
158208
+ "scopes_granted": {
158209
+ "type": "array",
158210
+ "items": {
158211
+ "type": "string"
158212
+ }
158213
+ },
158214
+ "token_expires_at": {
158215
+ "type": [
158216
+ "string",
158217
+ "null"
158218
+ ],
158219
+ "format": "date-time"
158220
+ },
158221
+ "created_by": {
158222
+ "type": "string"
158223
+ },
158224
+ "created_at": {
158225
+ "type": "string",
158226
+ "format": "date-time"
158227
+ },
158228
+ "updated_at": {
158229
+ "type": "string",
158230
+ "format": "date-time"
158231
+ },
158232
+ "revoked_at": {
158233
+ "type": [
158234
+ "string",
158235
+ "null"
158236
+ ],
158237
+ "format": "date-time"
158238
+ }
158239
+ }
158240
+ },
158241
+ "Connections.ConnectRequest": {
158242
+ "type": "object",
158243
+ "required": [
158244
+ "server"
158245
+ ],
158246
+ "additionalProperties": false,
158247
+ "properties": {
158248
+ "server": {
158249
+ "type": "string",
158250
+ "pattern": "^[a-z0-9-]{1,64}$"
158251
+ },
158252
+ "tools": {
158253
+ "type": "array",
158254
+ "maxItems": 500,
158255
+ "items": {
158256
+ "type": "string",
158257
+ "pattern": "^[A-Za-z0-9_.-]{1,128}$"
158258
+ },
158259
+ "description": "Tools to enable (default: the manifest defaults)"
158260
+ },
158261
+ "auto_org": {
158262
+ "type": "string",
158263
+ "pattern": "^aorg_[a-f0-9]{32}$",
158264
+ "description": "The Auto org that governs the connection. A connect carrying it always answers 428 APPROVAL_REQUIRED first."
158265
+ }
158266
+ }
158267
+ },
158268
+ "Connections.ConnectResponse": {
158269
+ "type": "object",
158270
+ "required": [
158271
+ "connection",
158272
+ "authorize_url"
158273
+ ],
158274
+ "properties": {
158275
+ "connection": {
158276
+ "$ref": "#/components/schemas/Connections.Connection"
158277
+ },
158278
+ "authorize_url": {
158279
+ "type": "string",
158280
+ "format": "uri",
158281
+ "description": "A person opens this to consent at the vendor"
158282
+ },
158283
+ "next": {
158284
+ "type": "string"
158285
+ }
158286
+ }
158287
+ },
158288
+ "Connections.AuthorizeResponse": {
158289
+ "type": "object",
158290
+ "required": [
158291
+ "authorize_url"
158292
+ ],
158293
+ "properties": {
158294
+ "authorize_url": {
158295
+ "type": "string",
158296
+ "format": "uri"
158297
+ },
158298
+ "next": {
158299
+ "type": "string"
158300
+ }
158301
+ }
158302
+ },
158303
+ "Connections.ConnectionTool": {
158304
+ "type": "object",
158305
+ "required": [
158306
+ "name",
158307
+ "effect",
158308
+ "mode"
158309
+ ],
158310
+ "properties": {
158311
+ "name": {
158312
+ "type": "string"
158313
+ },
158314
+ "effect": {
158315
+ "$ref": "#/components/schemas/Connections.Effect"
158316
+ },
158317
+ "mode": {
158318
+ "$ref": "#/components/schemas/Connections.Mode"
158319
+ },
158320
+ "stored_mode": {
158321
+ "$ref": "#/components/schemas/Connections.Mode"
158322
+ },
158323
+ "scopes": {
158324
+ "type": "array",
158325
+ "items": {
158326
+ "type": "string"
158327
+ }
158328
+ },
158329
+ "description": {
158330
+ "$ref": "#/components/schemas/Connections.UntrustedText"
158331
+ },
158332
+ "inputSchema": {},
158333
+ "schema_flags": {
158334
+ "type": "array",
158335
+ "items": {
158336
+ "type": "string"
158337
+ }
158338
+ }
158339
+ }
158340
+ },
158341
+ "Connections.ToolList": {
158342
+ "type": "object",
158343
+ "required": [
158344
+ "connection",
158345
+ "server",
158346
+ "tools"
158347
+ ],
158348
+ "properties": {
158349
+ "connection": {
158350
+ "type": "string"
158351
+ },
158352
+ "server": {
158353
+ "type": "string"
158354
+ },
158355
+ "tier": {
158356
+ "$ref": "#/components/schemas/Connections.Tier"
158357
+ },
158358
+ "server_status": {
158359
+ "$ref": "#/components/schemas/Connections.Tier"
158360
+ },
158361
+ "manifest_sha256": {
158362
+ "type": [
158363
+ "string",
158364
+ "null"
158365
+ ]
158366
+ },
158367
+ "tools": {
158368
+ "type": "array",
158369
+ "items": {
158370
+ "$ref": "#/components/schemas/Connections.ConnectionTool"
158371
+ }
158372
+ }
158373
+ }
158374
+ },
158375
+ "Connections.ToolPolicyRequest": {
158376
+ "type": "object",
158377
+ "required": [
158378
+ "tools"
158379
+ ],
158380
+ "additionalProperties": false,
158381
+ "properties": {
158382
+ "tools": {
158383
+ "type": "object",
158384
+ "maxProperties": 500,
158385
+ "additionalProperties": {
158386
+ "$ref": "#/components/schemas/Connections.Mode"
158387
+ },
158388
+ "description": "Tool name to mode, e.g. {\"create_issue\": \"approve\"}"
158389
+ }
158390
+ }
158391
+ },
158392
+ "Connections.ToolPolicyResponse": {
158393
+ "type": "object",
158394
+ "required": [
158395
+ "connection",
158396
+ "changed"
158397
+ ],
158398
+ "properties": {
158399
+ "connection": {
158400
+ "$ref": "#/components/schemas/Connections.Connection"
158401
+ },
158402
+ "changed": {
158403
+ "type": "array",
158404
+ "items": {
158405
+ "type": "object",
158406
+ "properties": {
158407
+ "name": {
158408
+ "type": "string"
158409
+ },
158410
+ "effect": {
158411
+ "$ref": "#/components/schemas/Connections.Effect"
158412
+ },
158413
+ "from": {
158414
+ "$ref": "#/components/schemas/Connections.Mode"
158415
+ },
158416
+ "to": {
158417
+ "$ref": "#/components/schemas/Connections.Mode"
158418
+ }
158419
+ }
158420
+ }
158421
+ },
158422
+ "reauthorize": {
158423
+ "type": "object",
158424
+ "properties": {
158425
+ "missing_scopes": {
158426
+ "type": "array",
158427
+ "items": {
158428
+ "type": "string"
158429
+ }
158430
+ },
158431
+ "authorize_url": {
158432
+ "type": "string",
158433
+ "format": "uri"
158434
+ }
158435
+ }
158436
+ }
158437
+ }
158438
+ },
158439
+ "Connections.CallRequest": {
158440
+ "type": "object",
158441
+ "required": [
158442
+ "arguments"
158443
+ ],
158444
+ "additionalProperties": false,
158445
+ "properties": {
158446
+ "arguments": {
158447
+ "type": "object",
158448
+ "additionalProperties": true,
158449
+ "description": "The tool's arguments, as its inputSchema describes"
158450
+ }
158451
+ }
158452
+ },
158453
+ "Connections.CallResult": {
158454
+ "type": "object",
158455
+ "required": [
158456
+ "call_id",
158457
+ "outcome",
158458
+ "result"
158459
+ ],
158460
+ "properties": {
158461
+ "call_id": {
158462
+ "type": "string"
158463
+ },
158464
+ "outcome": {
158465
+ "type": "string",
158466
+ "enum": [
158467
+ "ok",
158468
+ "tool_error"
158469
+ ]
158470
+ },
158471
+ "result": {
158472
+ "$ref": "#/components/schemas/Connections.UntrustedResult"
158473
+ },
158474
+ "auto_check_id": {
158475
+ "type": [
158476
+ "string",
158477
+ "null"
158478
+ ]
158479
+ },
158480
+ "auto_receipt": {
158481
+ "type": [
158482
+ "string",
158483
+ "null"
158484
+ ],
158485
+ "description": "Auto's signed receipt (JWS)"
158486
+ },
158487
+ "approval_id": {
158488
+ "type": [
158489
+ "string",
158490
+ "null"
158491
+ ]
158492
+ }
158493
+ }
158494
+ },
158495
+ "Connections.RevokeResponse": {
158496
+ "type": "object",
158497
+ "required": [
158498
+ "connection"
158499
+ ],
158500
+ "properties": {
158501
+ "connection": {
158502
+ "$ref": "#/components/schemas/Connections.Connection"
158503
+ },
158504
+ "vendor_revoked": {
158505
+ "type": "boolean"
158506
+ },
158507
+ "tokens_deleted": {
158508
+ "type": "boolean"
158509
+ }
158510
+ }
158511
+ },
158512
+ "Connections.ActivityRow": {
158513
+ "type": "object",
158514
+ "required": [
158515
+ "seq",
158516
+ "kind",
158517
+ "outcome",
158518
+ "hash"
158519
+ ],
158520
+ "additionalProperties": true,
158521
+ "properties": {
158522
+ "seq": {
158523
+ "type": "integer"
158524
+ },
158525
+ "at": {
158526
+ "type": "string",
158527
+ "format": "date-time"
158528
+ },
158529
+ "kind": {
158530
+ "type": "string"
158531
+ },
158532
+ "connection_id": {
158533
+ "type": [
158534
+ "string",
158535
+ "null"
158536
+ ]
158537
+ },
158538
+ "principal": {
158539
+ "type": [
158540
+ "string",
158541
+ "null"
158542
+ ]
158543
+ },
158544
+ "tool": {
158545
+ "type": [
158546
+ "string",
158547
+ "null"
158548
+ ]
158549
+ },
158550
+ "args_sha256": {
158551
+ "type": [
158552
+ "string",
158553
+ "null"
158554
+ ]
158555
+ },
158556
+ "result_sha256": {
158557
+ "type": [
158558
+ "string",
158559
+ "null"
158560
+ ]
158561
+ },
158562
+ "outcome": {
158563
+ "type": "string"
158564
+ },
158565
+ "prev_hash": {
158566
+ "type": "string"
158567
+ },
158568
+ "hash": {
158569
+ "type": "string"
158570
+ }
158571
+ }
158572
+ },
158573
+ "Connections.ConnectedTool": {
158574
+ "type": "object",
158575
+ "required": [
158576
+ "name",
158577
+ "connection",
158578
+ "server",
158579
+ "tool",
158580
+ "effect"
158581
+ ],
158582
+ "properties": {
158583
+ "name": {
158584
+ "type": "string",
158585
+ "description": "conn.<connection>.<tool>"
158586
+ },
158587
+ "connection": {
158588
+ "type": "string",
158589
+ "pattern": "^conn_[0-9a-f]{32}$"
158590
+ },
158591
+ "server": {
158592
+ "type": "string"
158593
+ },
158594
+ "tool": {
158595
+ "type": "string"
158596
+ },
158597
+ "effect": {
158598
+ "$ref": "#/components/schemas/Connections.Effect"
158599
+ },
158600
+ "mode": {
158601
+ "$ref": "#/components/schemas/Connections.Mode"
158602
+ },
158603
+ "description": {
158604
+ "$ref": "#/components/schemas/Connections.UntrustedText"
158605
+ },
158606
+ "inputSchema": {},
158607
+ "schema_flags": {
158608
+ "type": "array",
158609
+ "items": {
158610
+ "type": "string"
158611
+ }
158612
+ }
158613
+ }
158614
+ },
158615
+ "Connections.SearchToolsResponse": {
158616
+ "type": "object",
158617
+ "required": [
158618
+ "data"
158619
+ ],
158620
+ "properties": {
158621
+ "data": {
158622
+ "type": "array",
158623
+ "items": {
158624
+ "$ref": "#/components/schemas/Connections.ConnectedTool"
158625
+ }
158626
+ },
158627
+ "session_tainted": {
158628
+ "type": "boolean"
158629
+ }
158630
+ }
158631
+ },
158632
+ "Agents.AgentSearchResults": {
158633
+ "type": "object",
158634
+ "additionalProperties": false,
158635
+ "required": [
158636
+ "results"
158637
+ ],
158638
+ "properties": {
158639
+ "results": {
158640
+ "type": "array",
158641
+ "maxItems": 20,
158642
+ "items": {
158643
+ "$ref": "#/components/schemas/Agents.AgentSearchHit"
158644
+ }
158645
+ }
158646
+ }
158647
+ },
158648
+ "Agents.AgentSearchHit": {
158649
+ "type": "object",
158650
+ "additionalProperties": false,
158651
+ "required": [
158652
+ "agentId",
158653
+ "did",
158654
+ "verified",
158655
+ "environment"
158656
+ ],
158657
+ "description": "One public agent. Optional keys are omitted when the owner did not disclose them.",
158658
+ "properties": {
158659
+ "agentId": {
158660
+ "type": "string",
158661
+ "pattern": "^a_[A-Za-z0-9]{1,64}$",
158662
+ "description": "The agent's IAM id (a_...)"
158663
+ },
158664
+ "did": {
158665
+ "type": "string",
158666
+ "description": "The agent's canonical DID (did:oas:agent:...)"
158667
+ },
158668
+ "verified": {
158669
+ "type": "boolean",
158670
+ "const": true,
158671
+ "description": "IAM vouches for this public identity"
158672
+ },
158673
+ "environment": {
158674
+ "type": "string",
158675
+ "const": "live",
158676
+ "description": "Always live; Sandbox agents are never indexed"
158677
+ },
158678
+ "name": {
158679
+ "type": "string",
158680
+ "maxLength": 120,
158681
+ "description": "The agent's name (when disclosed)"
158682
+ },
158683
+ "owner": {
158684
+ "type": "object",
158685
+ "additionalProperties": false,
158686
+ "required": [
158687
+ "name"
158688
+ ],
158689
+ "description": "The owning organization (when its name is disclosed). Never a person.",
158690
+ "properties": {
158691
+ "name": {
158692
+ "type": "string",
158693
+ "maxLength": 120
158694
+ }
158695
+ }
158696
+ },
158697
+ "description": {
158698
+ "type": "string",
158699
+ "maxLength": 300,
158700
+ "description": "The owner's public description (when disclosed)"
158701
+ },
158702
+ "createdAt": {
158703
+ "type": "integer",
158704
+ "description": "When the agent was created",
158705
+ "in milliseconds since the epoch (when disclosed)": null
158706
+ }
158707
+ }
158708
+ },
158709
+ "Agents.AgentSitemap": {
158710
+ "type": "object",
158711
+ "additionalProperties": false,
158712
+ "required": [
158713
+ "agents"
158714
+ ],
158715
+ "properties": {
158716
+ "agents": {
158717
+ "type": "array",
158718
+ "maxItems": 50000,
158719
+ "items": {
158720
+ "type": "object",
158721
+ "additionalProperties": false,
158722
+ "required": [
158723
+ "agentId",
158724
+ "updatedAt"
158725
+ ],
158726
+ "properties": {
158727
+ "agentId": {
158728
+ "type": "string",
158729
+ "pattern": "^a_[A-Za-z0-9]{1,64}$"
158730
+ },
158731
+ "updatedAt": {
158732
+ "type": "integer",
158733
+ "description": "When the agent's public content last changed",
158734
+ "in milliseconds since the epoch": null
158735
+ }
158736
+ }
158737
+ }
158738
+ }
158739
+ }
157018
158740
  }
157019
158741
  },
157020
158742
  "responses": {
@@ -157593,6 +159315,76 @@
157593
159315
  }
157594
159316
  }
157595
159317
  }
159318
+ },
159319
+ "Connections.Forbidden": {
159320
+ "description": "Missing scope; `TOOL_DENIED` (policy deny or not in the manifest); `AUTHORITY_DENIED` with `reasons` (Auto denied); `APPROVAL_UNAVAILABLE` (an approval is needed but the org has no Auto org)",
159321
+ "content": {
159322
+ "application/json": {
159323
+ "schema": {
159324
+ "$ref": "#/components/schemas/Connections.Error"
159325
+ }
159326
+ }
159327
+ }
159328
+ },
159329
+ "Connections.NotFound": {
159330
+ "description": "Not found in your organization and environment",
159331
+ "content": {
159332
+ "application/json": {
159333
+ "schema": {
159334
+ "$ref": "#/components/schemas/Connections.Error"
159335
+ }
159336
+ }
159337
+ }
159338
+ },
159339
+ "Connections.Conflict": {
159340
+ "description": "`revoked`, `conflict` (the policy changed meanwhile), or an approval refusal: `APPROVAL_CONSUMED`, `APPROVAL_NOT_APPROVED`, `APPROVAL_MISMATCH`",
159341
+ "content": {
159342
+ "application/json": {
159343
+ "schema": {
159344
+ "$ref": "#/components/schemas/Connections.Error"
159345
+ }
159346
+ }
159347
+ }
159348
+ },
159349
+ "Connections.NeedsReauth": {
159350
+ "description": "`CONNECTION_NEEDS_REAUTH`: a person opens the fresh `authorize_url` (an approval refusal or `revoked` is also a 409, without it)",
159351
+ "content": {
159352
+ "application/json": {
159353
+ "schema": {
159354
+ "$ref": "#/components/schemas/Connections.NeedsReauth"
159355
+ }
159356
+ }
159357
+ }
159358
+ },
159359
+ "Connections.ToolChanged": {
159360
+ "description": "`TOOL_CHANGED_PENDING_REVIEW`: the server's live tools differ from its pinned manifest; it is suspended for every organization until re-verified",
159361
+ "content": {
159362
+ "application/json": {
159363
+ "schema": {
159364
+ "$ref": "#/components/schemas/Connections.Error"
159365
+ }
159366
+ }
159367
+ }
159368
+ },
159369
+ "Connections.Invalid": {
159370
+ "description": "Invalid request body or parameters",
159371
+ "content": {
159372
+ "application/json": {
159373
+ "schema": {
159374
+ "$ref": "#/components/schemas/Connections.Error"
159375
+ }
159376
+ }
159377
+ }
159378
+ },
159379
+ "Connections.ApprovalRequired": {
159380
+ "description": "`APPROVAL_REQUIRED`: a human approves `approval_request_id` in Auto; then retry the same request with `OneOS-Approval`",
159381
+ "content": {
159382
+ "application/json": {
159383
+ "schema": {
159384
+ "$ref": "#/components/schemas/Connections.ApprovalRequired"
159385
+ }
159386
+ }
159387
+ }
157596
159388
  }
157597
159389
  },
157598
159390
  "parameters": {
@@ -158718,6 +160510,46 @@
158718
160510
  "maxLength": 256
158719
160511
  },
158720
160512
  "description": "Stable key; a retry with it returns the original decision instead of creating another"
160513
+ },
160514
+ "Connections.Id": {
160515
+ "name": "id",
160516
+ "in": "path",
160517
+ "required": true,
160518
+ "description": "Connection id (conn_ followed by 32 hex)",
160519
+ "schema": {
160520
+ "type": "string",
160521
+ "pattern": "^conn_[0-9a-f]{32}$"
160522
+ }
160523
+ },
160524
+ "Connections.Server": {
160525
+ "name": "server",
160526
+ "in": "path",
160527
+ "required": true,
160528
+ "description": "Catalog server id, e.g. linear, neon, sentry",
160529
+ "schema": {
160530
+ "type": "string",
160531
+ "pattern": "^[a-z0-9-]{1,64}$"
160532
+ }
160533
+ },
160534
+ "Connections.Tool": {
160535
+ "name": "tool",
160536
+ "in": "path",
160537
+ "required": true,
160538
+ "description": "The tool's name in the pinned manifest",
160539
+ "schema": {
160540
+ "type": "string",
160541
+ "pattern": "^[A-Za-z0-9_.-]{1,128}$"
160542
+ }
160543
+ },
160544
+ "Connections.Approval": {
160545
+ "name": "OneOS-Approval",
160546
+ "in": "header",
160547
+ "required": false,
160548
+ "description": "An approved approval id (`apr_…`) from an earlier 428, to retry the same request",
160549
+ "schema": {
160550
+ "type": "string",
160551
+ "pattern": "^apr_[0-9a-f]{32}$"
160552
+ }
158721
160553
  }
158722
160554
  },
158723
160555
  "headers": {
@@ -158754,7 +160586,7 @@
158754
160586
  "upstream": "https://api.fdy.sh",
158755
160587
  "status": "live",
158756
160588
  "statusNote": "api.fdy.sh answered in the Oct 9 inventory probe",
158757
- "operations": 116
160589
+ "operations": 115
158758
160590
  },
158759
160591
  {
158760
160592
  "name": "hives",
@@ -158762,7 +160594,7 @@
158762
160594
  "upstream": "https://api.hives.sh",
158763
160595
  "status": "down",
158764
160596
  "statusNote": "api.hives.sh returned 503 (audit G-LIVE-1); spec misses 35 console-called paths (G-SPEC-1)",
158765
- "operations": 198
160597
+ "operations": 195
158766
160598
  },
158767
160599
  {
158768
160600
  "name": "relays",
@@ -158826,7 +160658,7 @@
158826
160658
  "upstream": "https://dials-808958844152.us-central1.run.app",
158827
160659
  "status": "unverified",
158828
160660
  "statusNote": "Backend healthy; Genesis signed-identity integration pending deployment and acceptance.",
158829
- "operations": 37
160661
+ "operations": 38
158830
160662
  },
158831
160663
  {
158832
160664
  "name": "silos",
@@ -158994,6 +160826,24 @@
158994
160826
  "statusNote": "Org API keys and One account logins with a selected project (gateway/src/brews-transport.ts). Sandbox. Omit scope: Brews fills it from the selection. Run, eval and bench answer 503 BREWS_E_METERING_UNAVAILABLE.",
158995
160827
  "gatewayRoute": "dedicated",
158996
160828
  "operations": 22
160829
+ },
160830
+ {
160831
+ "name": "connections",
160832
+ "title": "Connections (verified remote MCP servers)",
160833
+ "upstream": "https://connections-api-808958844152.us-central1.run.app",
160834
+ "status": "not_deployed",
160835
+ "statusNote": "Closed gateway admission behind CONNECTIONS_GATEWAY_ENABLED (default off): /v1/connections/* with a v2 signed identity and selected context (API key, M2M token or login session); connections:read for GET, connections:write otherwise, connections:* both. Sandbox in P0; Live only through UPSTREAM_CONNECTIONS_LIVE once connections is in GENESIS_LIVE_SERVICES. GET /v1/connections/oauth/callback is anonymous (a person's browser after vendor consent): no credential is read or forwarded and no identity envelope is sent. connections_authorize is a human-consent operation the hosted MCP refuses. Tool results and vendor descriptions are wrapped as untrusted. Vendor tokens live in Blinds only.",
160836
+ "gatewayRoute": "dedicated",
160837
+ "operations": 13
160838
+ },
160839
+ {
160840
+ "name": "agents",
160841
+ "title": "Agents (public agent search)",
160842
+ "upstream": "https://genesis-agent-index.invalid",
160843
+ "status": "not_deployed",
160844
+ "statusNote": "genesis-agent-index (l1felabs/genesis-agent-index) is not deployed. The gateway admits it behind AGENT_INDEX_ENABLED with AGENT_INDEX_ORIGIN (gateway/src/agent-index.ts): public and anonymous (no credential is read or forwarded), rate limited per client address, never metered. Live public agents only.",
160845
+ "gatewayRoute": "dedicated",
160846
+ "operations": 2
158997
160847
  }
158998
160848
  ]
158999
160849
  }