fix(tooling): resolve Gemini API schema validation error #9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request resolves a schema validation error that occurs when using the Directus MCP server with the Gemini CLI. The
create-field
tool definition included awidth
parameter usingz.enum
, which was not correctly translated into a valid JSON schema, omitting the necessarytype
property. This caused a400 INVALID_ARGUMENT
error from the Gemini API.The fix involves two main changes:
src/types/fields.ts
, thez.enum
for thewidth
property inFieldMetaSchema
andFieldSchema
has been replaced withoptionalString()
, and the possible values are now described in the parameter's description.src/utils/define.ts
, explicit return types (ToolDefinition
andPromptDefinition
) have been added to thedefineTool
anddefinePrompt
functions to resolve a TypeScript build error that surfaced after the first change.After applying these changes, the project builds successfully, and the Gemini CLI operates without any API errors.