@@ -148,6 +148,10 @@ func (t *TodoTool) Tools(ctx context.Context) ([]tools.Tool, error) {
148
148
Function : & tools.FunctionDefinition {
149
149
Name : "create_todo" ,
150
150
Description : "Create a new todo item with a description" ,
151
+ Annotations : tools.ToolAnnotation {
152
+ // This is technically not read-only but has practically no destructive side effects.
153
+ ReadOnlyHint : & []bool {true }[0 ],
154
+ },
151
155
Parameters : tools.FunctionParamaters {
152
156
Type : "object" ,
153
157
Properties : map [string ]any {
@@ -165,6 +169,10 @@ func (t *TodoTool) Tools(ctx context.Context) ([]tools.Tool, error) {
165
169
Function : & tools.FunctionDefinition {
166
170
Name : "create_todos" ,
167
171
Description : "Create a list of new todo items with descriptions" ,
172
+ Annotations : tools.ToolAnnotation {
173
+ // This is technically not read-only but has practically no destructive side effects.
174
+ ReadOnlyHint : & []bool {true }[0 ],
175
+ },
168
176
Parameters : tools.FunctionParamaters {
169
177
Type : "object" ,
170
178
Properties : map [string ]any {
@@ -191,6 +199,10 @@ func (t *TodoTool) Tools(ctx context.Context) ([]tools.Tool, error) {
191
199
Function : & tools.FunctionDefinition {
192
200
Name : "update_todo" ,
193
201
Description : "Update the status of a todo item" ,
202
+ Annotations : tools.ToolAnnotation {
203
+ // This is technically not read-only but has practically no destructive side effects.
204
+ ReadOnlyHint : & []bool {true }[0 ],
205
+ },
194
206
Parameters : tools.FunctionParamaters {
195
207
Type : "object" ,
196
208
Properties : map [string ]any {
0 commit comments