|
1 | 1 | { |
2 | 2 | "openapi": "3.1.0", |
3 | 3 | "info": { |
4 | | - "title": "Open Tool Calling Standard", |
| 4 | + "title": "Open eXecution Protocol (OXP) Standard", |
5 | 5 | "version": "1.0.0", |
6 | 6 | "description": "A standard for calling tools (functions or services) in a distributed system.", |
7 | 7 | "license": { |
8 | 8 | "name": "MIT", |
9 | 9 | "url": "https://opensource.org/licenses/MIT" |
10 | 10 | }, |
11 | 11 | "contact": { |
12 | | - "url": "https://opentoolcalling.org" |
| 12 | + "url": "https://openexecprotocol.org" |
13 | 13 | } |
14 | 14 | }, |
15 | 15 | "paths": { |
|
66 | 66 | "type": "string", |
67 | 67 | "format": "uri" |
68 | 68 | }, |
69 | | - "tools": { |
| 69 | + "items": { |
70 | 70 | "type": "array", |
71 | 71 | "items": { |
72 | 72 | "$ref": "#/components/schemas/ToolDefinition" |
73 | 73 | } |
74 | 74 | } |
75 | 75 | }, |
76 | | - "required": ["tools"] |
| 76 | + "required": ["items"] |
77 | 77 | } |
78 | 78 | } |
79 | 79 | } |
|
222 | 222 | }, |
223 | 223 | "input_schema": { |
224 | 224 | "type": "object", |
225 | | - "properties": { |
226 | | - "parameters": { |
227 | | - "type": "object", |
228 | | - "additionalProperties": true, |
229 | | - "description": "JSON Schema describing the input parameters for the tool. Supports standard JSON Schema validation but excludes $ref and definitions/schemas for simplicity." |
230 | | - } |
231 | | - }, |
232 | | - "required": ["parameters"], |
233 | | - "additionalProperties": true |
| 225 | + "additionalProperties": true, |
| 226 | + "description": "JSON Schema describing the input parameters for the tool. Supports standard JSON Schema validation but excludes $ref and definitions/schemas for simplicity." |
234 | 227 | }, |
235 | 228 | "output_schema": { |
236 | 229 | "oneOf": [ |
|
298 | 291 | "additionalProperties": true |
299 | 292 | } |
300 | 293 | }, |
301 | | - "required": [ |
302 | | - "id", |
303 | | - "name", |
304 | | - "description", |
305 | | - "input_schema", |
306 | | - "output_schema" |
307 | | - ], |
| 294 | + "required": ["id", "name", "description", "version"], |
308 | 295 | "additionalProperties": false |
309 | 296 | }, |
310 | 297 | "CallToolRequest": { |
|
430 | 417 | "developer_message": { |
431 | 418 | "type": "string", |
432 | 419 | "description": "An internal message that will be logged but will not be shown to the user or the AI model" |
| 420 | + }, |
| 421 | + "missing_requirements": { |
| 422 | + "type": "object", |
| 423 | + "description": "A map of missing requirements.", |
| 424 | + "properties": { |
| 425 | + "authorization": { |
| 426 | + "type": "array", |
| 427 | + "description": "A list of authorization challenges that must be completed before the tool can be called.", |
| 428 | + "items": { |
| 429 | + "$ref": "#/components/schemas/ToolAuthorizationChallenge" |
| 430 | + } |
| 431 | + }, |
| 432 | + "user_id": { |
| 433 | + "type": "boolean", |
| 434 | + "description": "Whether the tool requires a user ID." |
| 435 | + } |
| 436 | + } |
433 | 437 | } |
434 | 438 | }, |
435 | 439 | "required": ["message"], |
|
454 | 458 | "required": ["message"], |
455 | 459 | "additionalProperties": true |
456 | 460 | }, |
| 461 | + "ToolAuthorizationChallenge": { |
| 462 | + "type": "object", |
| 463 | + "properties": { |
| 464 | + "id": { |
| 465 | + "type": "string", |
| 466 | + "description": "The unique identifier for the authorization challenge." |
| 467 | + }, |
| 468 | + "url": { |
| 469 | + "type": "string", |
| 470 | + "description": "The URL the user must visit to complete the authorization challenge." |
| 471 | + }, |
| 472 | + "check_url": { |
| 473 | + "type": "string", |
| 474 | + "description": "The URL to check the status of the authorization challenge." |
| 475 | + } |
| 476 | + }, |
| 477 | + "required": ["id", "url"], |
| 478 | + "additionalProperties": false |
| 479 | + }, |
457 | 480 | "ToolError": { |
458 | 481 | "type": "object", |
459 | 482 | "description": "An error that occurred inside the tool function.", |
|
0 commit comments