Generates MCP tools from OpenAPI 3.x specifications. Converts OpenAPI operations into executable MCP tools with HTTP backend invocation, parameter binding, authentication decoration, and error mapping.
Two tools with partial schemas and descriptions. Tool 1 (dynamic_openapi_tool_generation) has a reasonable description (145 chars) and input schema with 4 properties, but lacks output schema documentation and parameter descriptions are minimal. Tool 2 (invoke_generated_tool) has a good description (165 chars) but schema is incomplete: 'arguments' property lacks type definition (just 'object' with no properties), and 'toolName' is required but 'arguments' is not, creating ambiguity. Neither tool has error handling guidance, output schemas, or parameter constraints (enums, ranges). Naming is verb-based but generic ('invoke_generated_tool' could be clearer about what 'generated' means). No evidence of idempotency hints, permission gates, or recovery guidance.
Generates MCP tools from OpenAPI specifications. Takes an OpenAPI spec (inline YAML/JSON or URL), derives tool naming prefix from spec title or user override, resolves backend base URL from servers[] or user override, and produces a list of executable MCP tools with HTTP invocation plans.
Invokes a generated MCP tool by name with user-supplied arguments. Resolves the tool from the live registry, executes it via Spring AI ToolCallback, and returns a structured result with success/error classification, response body, and execution duration.
invoke_generated_tool 'arguments' parameter has no type definition, schema shows only 'object' with no properties. LLMs cannot infer what fields are valid.
No output schemas documented for either tool. LLMs cannot plan downstream calls or extract required fields (e.g., tool names, IDs for chaining).
Parameter descriptions are missing or trivial. 'specContents' lacks guidance on YAML vs JSON format; 'arguments' has no hint about required vs optional fields.
No error handling guidance. If tool invocation fails (invalid tool name, bad arguments, backend timeout), LLM has no recovery path.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
invoke_generated_tool is a write operation (modifies backend state) but lacks idempotency hint or confirmation pattern. Agents may retry and cause duplicate side effects.