A repository containing bundled tools and vendor libraries for Swift MLX integration, including Rivet workflow engine, AI design prompt tools, and MLX Swift language model components with tool call support
Two tools present with minimal schema documentation. mcpToolCall has a detailed input schema with 7 parameters (name, version, transportType, toolName, toolArguments, toolCallId, serverUrl, serverId), all with descriptions and type constraints (enum for transportType). gptFunction has 4 parameters (name, description, schema, strict) with basic descriptions. However, neither tool has documented output schemas, critical for LLM planning. Descriptions are present but generic (mcpToolCall: 'Connects to an MCP server and gets a tool call response'; gptFunction: 'Defines a tool, which is a method that the LLM can call'). No error handling guidance, no recovery patterns, no examples of expected outputs. Tool names lack action verbs (mcpToolCall, gptFunction are noun-heavy). No evidence of idempotency, pagination, or composition patterns.
Defines a tool, which is a method that the LLM can call in its responses
Connects to an MCP (Model Context Protocol) server and gets a tool call response
No output schemas documented for either tool. LLMs cannot plan downstream calls or extract required fields without knowing what these tools return.
Tool names lack action verbs. 'mcpToolCall' and 'gptFunction' are noun-based; should be 'call_mcp_tool' and 'define_gpt_function' to signal intent.
Descriptions are generic and under 50 characters. 'Connects to an MCP server and gets a tool call response' lacks WHEN to use, prerequisites, or side effects. No guidance on error recovery.
mcpToolCall accepts 'toolArguments' as a free-form object with no schema constraints. LLMs cannot validate argument structure before calling; invalid args will fail at runtime with no guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 38 | 2026-07-28+ | v2 |
gptFunction's 'schema' parameter is typed as 'object' with no description of expected structure (JSON Schema format? OpenAI format?). Ambiguous parameter design invites misuse.