Skip to content

Commit 74761b6

Browse files
authored
Bump fast-mcp to 1.6.0 (#90)
1 parent 6f87848 commit 74761b6

File tree

7 files changed

+22
-12
lines changed

7 files changed

+22
-12
lines changed

Gemfile.lock

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ PATH
22
remote: .
33
specs:
44
tidewave (0.3.1)
5-
fast-mcp (~> 1.5.0)
5+
fast-mcp (~> 1.6.0)
66
rack (>= 2.0)
77
rails (>= 7.1.0)
88

@@ -129,13 +129,13 @@ GEM
129129
zeitwerk (~> 2.6)
130130
erb (5.0.2)
131131
erubi (1.13.1)
132-
fast-mcp (1.5.0)
132+
fast-mcp (1.6.0)
133133
addressable (~> 2.8)
134134
base64
135135
dry-schema (~> 1.14)
136136
json (~> 2.0)
137137
mime-types (~> 3.4)
138-
rack (~> 3.1)
138+
rack (>= 2.0, < 4.0)
139139
globalid (1.2.1)
140140
activesupport (>= 6.1)
141141
i18n (1.14.7)

lib/tidewave/tools/execute_sql_query.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ class Tidewave::Tools::ExecuteSqlQuery < Tidewave::Tools::Base
1919

2020
arguments do
2121
required(:query).filled(:string).description("The SQL query to execute. For PostgreSQL, use $1, $2 placeholders. For MySQL, use ? placeholders.")
22-
optional(:arguments).value(:array).description("The arguments to pass to the query. The query must contain corresponding parameter placeholders.")
22+
optional(:arguments).array(:str?, :bool?, :float?, :nil?, :hash?, :array?).description("The arguments to pass to the query. The query must contain corresponding parameter placeholders.")
2323
end
2424

2525
RESULT_LIMIT = 50

lib/tidewave/tools/project_eval.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ class Tidewave::Tools::ProjectEval < Tidewave::Tools::Base
1818

1919
arguments do
2020
required(:code).filled(:string).description("The Ruby code to evaluate")
21-
optional(:arguments).value(:array).description("The arguments to pass to evaluation. They are available inside the evaluated code as `arguments`.")
21+
optional(:arguments).array(:str?, :bool?, :float?, :nil?, :hash?, :array?).description("The arguments to pass to evaluation. They are available inside the evaluated code as `arguments`.")
2222
optional(:timeout).filled(:integer).description("The timeout in milliseconds. If the evaluation takes longer than this, it will be terminated. Defaults to 30000 (30 seconds).")
2323
optional(:json).hidden().filled(:bool).description("Whether to return the result as JSON with structured output containing result, success, stdout, and stderr fields. Defaults to false.")
2424
end

spec/tools/execute_sql_query_spec.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,14 @@
3636
properties: {
3737
query: {
3838
type: "string",
39-
description: "The SQL query to execute. For PostgreSQL, use $1, $2 placeholders. For MySQL, use ? placeholders."
39+
description: "The SQL query to execute. For PostgreSQL, use $1, $2 placeholders. For MySQL, use ? placeholders.",
40+
minLength: 1
4041
},
4142
arguments: {
4243
type: "array",
43-
items: {},
44+
items: {
45+
type: [ "string", "boolean", "number", "null", "object", "array" ]
46+
},
4447
description: "The arguments to pass to the query. The query must contain corresponding parameter placeholders."
4548
}
4649
},

spec/tools/get_source_location_spec.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
properties: {
1414
reference: {
1515
type: "string",
16-
description: "The constant/method to lookup, such String, String#gsub or File.executable?"
16+
description: "The constant/method to lookup, such String, String#gsub or File.executable?",
17+
minLength: 1
1718
}
1819
},
1920
required: [ "reference" ],

spec/tools/project_eval_spec.rb

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,22 @@
1414
properties: {
1515
arguments: {
1616
description: "The arguments to pass to evaluation. They are available inside the evaluated code as `arguments`.",
17-
items: {},
17+
items: {
18+
type: [ "string", "boolean", "number", "null", "object", "array" ]
19+
},
1820
type: "array"
1921
},
2022
code: {
2123
description: "The Ruby code to evaluate",
22-
type: "string"
24+
type: "string",
25+
minLength: 1
2326
},
2427
timeout: {
2528
description: "The timeout in milliseconds. If the evaluation takes longer than this, it will be terminated. Defaults to 30000 (30 seconds).",
26-
type: "number"
29+
type: "integer",
30+
not: {
31+
type: "null"
32+
}
2733
}
2834
},
2935
required: [ "code" ],

tidewave.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,6 @@ Gem::Specification.new do |spec|
2121
end
2222

2323
spec.add_dependency "rails", ">= 7.1.0"
24-
spec.add_dependency "fast-mcp", "~> 1.5.0"
24+
spec.add_dependency "fast-mcp", "~> 1.6.0"
2525
spec.add_dependency "rack", ">= 2.0"
2626
end

0 commit comments

Comments
 (0)