Module: VectorMCP::Security

Defined in:
lib/vector_mcp/security.rb,
lib/vector_mcp/security/middleware.rb,
lib/vector_mcp/security/auth_manager.rb,
lib/vector_mcp/security/authorization.rb,
lib/vector_mcp/security/session_context.rb,
lib/vector_mcp/security/strategies/custom.rb,
lib/vector_mcp/security/strategies/api_key.rb,
lib/vector_mcp/security/strategies/jwt_token.rb

Overview

Security components for VectorMCP servers Provides opt-in authentication and authorization

Defined Under Namespace

Modules: Strategies Classes: AuthManager, Authorization, Middleware, SessionContext

Class Method Summary collapse

Class Method Details

.auth_managerAuthManager

Get default authentication manager

Returns:

  • (AuthManager)

    a new authentication manager instance



20
21
22
# File 'lib/vector_mcp/security.rb', line 20

def self.auth_manager
  AuthManager.new
end

.authorizationAuthorization

Get default authorization manager

Returns:



26
27
28
# File 'lib/vector_mcp/security.rb', line 26

def self.authorization
  Authorization.new
end

.jwt_available?Boolean

Check if JWT support is available

Returns:

  • (Boolean)

    true if JWT gem is loaded



42
43
44
# File 'lib/vector_mcp/security.rb', line 42

def self.jwt_available?
  Strategies::JwtToken.available?
end

.middleware(auth_manager: nil, authorization: nil) ⇒ Middleware

Create security middleware with default components

Parameters:

  • auth_manager (AuthManager) (defaults to: nil)

    optional custom auth manager

  • authorization (Authorization) (defaults to: nil)

    optional custom authorization

Returns:



34
35
36
37
38
# File 'lib/vector_mcp/security.rb', line 34

def self.middleware(auth_manager: nil, authorization: nil)
  auth_manager ||= self.auth_manager
  authorization ||= self.authorization
  Middleware.new(auth_manager, authorization)
end