Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .changeset/fix-history-adapter-schema.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
"@lytics/dev-agent": patch
"@lytics/dev-agent-mcp": patch
---

Fix dev_history tool schema for Claude API compatibility

- Removed `anyOf` from input schema (Claude API doesn't support it at top level)
- Validation for "at least one of query or file required" is still enforced in execute()

Original file line number Diff line number Diff line change
Expand Up @@ -97,10 +97,8 @@ describe('HistoryAdapter', () => {
it('should require either query or file', () => {
const definition = adapter.getToolDefinition();

expect(definition.inputSchema.anyOf).toEqual([
{ required: ['query'] },
{ required: ['file'] },
]);
// Note: anyOf removed for Claude API compatibility - validation is done in execute()
expect(definition.inputSchema.required).toEqual([]);
});
});

Expand Down
4 changes: 2 additions & 2 deletions packages/mcp-server/src/adapters/built-in/history-adapter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,8 @@ export class HistoryAdapter extends ToolAdapter {
default: this.config.defaultTokenBudget,
},
},
// At least one of query or file is required
anyOf: [{ required: ['query'] }, { required: ['file'] }],
// Note: At least one of query or file is required (validated in execute)
required: [],
},
};
}
Expand Down