Module: ActionMCP::Server

Defined in:
lib/action_mcp/server.rb,
lib/action_mcp/server/roots.rb,
lib/action_mcp/server/tools.rb,
lib/action_mcp/server/prompts.rb,
lib/action_mcp/server/sampling.rb,
lib/action_mcp/server/resources.rb,
lib/action_mcp/server/elicitation.rb,
lib/action_mcp/server/error_aware.rb,
lib/action_mcp/server/base_session.rb,
lib/action_mcp/server/capabilities.rb,
lib/action_mcp/server/configuration.rb,
lib/action_mcp/server/session_store.rb,
lib/action_mcp/server/base_messaging.rb,
lib/action_mcp/server/error_handling.rb,
lib/action_mcp/server/simple_pub_sub.rb,
lib/action_mcp/server/handlers/router.rb,
lib/action_mcp/server/json_rpc_handler.rb,
lib/action_mcp/server/sampling_request.rb,
lib/action_mcp/server/messaging_service.rb,
lib/action_mcp/server/solid_mcp_adapter.rb,
lib/action_mcp/server/transport_handler.rb,
lib/action_mcp/server/base_session_store.rb,
lib/action_mcp/server/response_collector.rb,
lib/action_mcp/server/test_session_store.rb,
lib/action_mcp/server/registry_management.rb,
lib/action_mcp/server/handlers/tool_handler.rb,
lib/action_mcp/server/session_store_factory.rb,
lib/action_mcp/server/volatile_session_store.rb,
lib/action_mcp/server/handlers/prompt_handler.rb,
lib/action_mcp/server/handlers/logging_handler.rb,
lib/action_mcp/server/handlers/resource_handler.rb,
lib/action_mcp/server/active_record_session_store.rb

Overview

Module for server-related functionality.

Defined Under Namespace

Modules: BaseMessaging, Capabilities, Elicitation, ErrorAware, ErrorHandling, Handlers, MessagingService, Prompts, RegistryManagement, Resources, ResponseCollector, Roots, Sampling, SessionStore, Tools Classes: ActiveRecordSessionStore, BaseSession, BaseSessionStore, Configuration, JsonRpcHandler, SamplingRequest, ServerBase, SessionStoreFactory, SimplePubSub, SolidMcpAdapter, TestSessionStore, TransportHandler, VolatileSessionStore

Constant Summary collapse

ADAPTERS =

Available pubsub adapter types

{
  "test" => "SimplePubSub",
  "simple" => "SimplePubSub",
  "solid_mcp" => "SolidMcpAdapter" # Database-backed adapter optimized for MCP
}.compact.freeze

Class Method Summary collapse

Class Method Details

.serverObject



19
20
21
# File 'lib/action_mcp/server.rb', line 19

def server
  @server ||= ServerBase.new
end

.session_storeObject

Access the session store



32
33
34
35
36
37
38
39
# File 'lib/action_mcp/server.rb', line 32

def session_store
  current_type = ActionMCP.configuration.server_session_store_type
  if @session_store.nil? || @session_store_type != current_type
    @session_store_type = current_type
    @session_store = SessionStoreFactory.create(current_type)
  end
  @session_store
end

.shutdownObject

Shut down the server and clean up resources



24
25
26
27
28
29
# File 'lib/action_mcp/server.rb', line 24

def shutdown
  return unless @server

  @server.shutdown
  @server = nil
end