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
4 changes: 2 additions & 2 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ gem 'addressable' # better URI checking
gem 'combined_time_select'
gem 'jekyll-timeago'

gem "rails-html-sanitizer", "~> 1.6"
gem "rails-html-sanitizer", "~> 1.7"
gem 'tzinfo-data'

# email parsing
Expand Down Expand Up @@ -127,7 +127,7 @@ end

gem 'rack-timeout'

gem "mcp", "~> 0.13.0"
gem "mcp", "~> 0.23.0"
gem "doorkeeper", "~> 5.9"

gem "rack-cors", "~> 2.0", group: :development
26 changes: 15 additions & 11 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ GEM
haml (5.2.2)
temple (>= 0.8.0)
tilt
hana (1.3.7)
hashdiff (1.0.1)
hashie (5.1.0)
logger
Expand Down Expand Up @@ -263,9 +264,11 @@ GEM
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
json (2.21.1)
json-schema (6.2.0)
addressable (~> 2.8)
bigdecimal (>= 3.1, < 5)
json_schemer (2.5.0)
bigdecimal
hana (~> 1.3)
regexp_parser (~> 2.0)
simpleidn (~> 0.2)
jwt (3.2.0)
base64
kaminari (1.2.1)
Expand All @@ -286,7 +289,7 @@ GEM
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
logger (1.7.0)
loofah (2.25.1)
loofah (2.25.2)
crass (~> 1.0.2)
nokogiri (>= 1.12.0)
mail (2.9.0)
Expand All @@ -301,8 +304,8 @@ GEM
rest-client (>= 1.6.7)
marcel (1.0.4)
matrix (0.4.2)
mcp (0.13.0)
json-schema (>= 4.1)
mcp (0.23.0)
json_schemer (>= 2.4)
memory_profiler (1.0.0)
meta_request (0.8.3)
rack-contrib (>= 1.1, < 3)
Expand Down Expand Up @@ -390,8 +393,8 @@ GEM
activesupport (>= 5.0.0)
minitest
nokogiri (>= 1.6)
rails-html-sanitizer (1.7.0)
loofah (~> 2.25)
rails-html-sanitizer (1.7.1)
loofah (~> 2.25, >= 2.25.2)
nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
railties (6.1.7.10)
actionpack (= 6.1.7.10)
Expand Down Expand Up @@ -505,6 +508,7 @@ GEM
simplecov_json_formatter (~> 0.1)
simplecov-html (0.13.1)
simplecov_json_formatter (0.1.4)
simpleidn (0.2.3)
spring (2.1.0)
spring-commands-rspec (1.0.4)
spring (>= 0.9.1)
Expand Down Expand Up @@ -567,7 +571,7 @@ GEM
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
websocket (1.2.11)
websocket-driver (0.8.1)
websocket-driver (0.8.2)
base64
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5)
Expand Down Expand Up @@ -624,7 +628,7 @@ DEPENDENCIES
logger
loofah (>= 2.5)
mailgun_rails
mcp (~> 0.13.0)
mcp (~> 0.23.0)
meta_request
mutex_m
ostruct
Expand All @@ -636,7 +640,7 @@ DEPENDENCIES
rack-timeout
rack-utf8_sanitizer (~> 1.8)
rails (~> 6.1.7.10)
rails-html-sanitizer (~> 1.6)
rails-html-sanitizer (~> 1.7)
randomized_field (~> 1.0)
rdoc
redcarpet
Expand Down
2 changes: 1 addition & 1 deletion app/controllers/welcome_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ def support

def mcp_server
@mcp_tools = Mcp::DabbleServer::TOOLS.map do |tool|
schema = tool.input_schema.schema
schema = tool.input_schema.to_h
{
name: tool.tool_name,
title: tool.title,
Expand Down
13 changes: 13 additions & 0 deletions spec/controllers/welcome_controller_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,17 @@
expect(response).to redirect_to(latest_entry_url)
end
end

describe 'mcp_server' do
it 'renders documentation from the MCP tool schemas' do
get :mcp_server

expect(response).to have_http_status(:ok)
expect(response.body).to include(
'<title>Dabble Me MCP Server: Connect Your Journal to ChatGPT and Claude — Dabble me.</title>'
)
expect(response.body).to have_content('search_entries')
expect(response.body).to have_content('query (required)')
end
end
end
Loading