Package burp.mcp.util
Class McpConfig
java.lang.Object
burp.mcp.util.McpConfig
Configuration manager backed by Montoya Preferences API.
Thread-safe singleton that handles null defaults.
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic PathdefaultSocketPath(String tag) Automatic socket path for a project tag (project id or similar).static StringGenerate a cryptographically random 32-character hex API token.static Stringstatic ApprovalManagerintSeconds an undecided approval stays queued for a retry before expiring.intSeconds a gated tool call waits for an operator decision before returning pending.intstatic McpConfigintintintintintgetPort()intstatic RequestCacheintScope policy: "off", "prompt" or "deny".Explicit socket path, or "" for automatic per-project path.int"self_signed" or "custom"static McpConfiginitialize(McpConfig.Preferences preferences) booleanWhether new approval requests pop a dialog in addition to the Approvals tab.booleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanresolveSocketPath(String projectName, String projectId) Resolve the effective socket path: an explicit config wins, otherwise a socket next to the current project file, otherwise a stable temporary per-project path.static voidsetActiveSocketPath(String path) static voidsetApprovalManager(ApprovalManager manager) voidsetApprovalPopupEnabled(boolean enabled) voidsetApprovalTtlSeconds(int seconds) voidsetApprovalWaitSeconds(int seconds) voidsetAuditLogEnabled(boolean enabled) voidsetAuthEnabled(boolean enabled) voidsetAuthToken(String token) voidsetBindAddress(String address) voidsetCacheEnabled(boolean enabled) voidsetCacheTtlSeconds(int seconds) voidsetIncludeRequestBody(boolean include) voidsetIncludeResponseBody(boolean include) voidsetLoggingFilePath(String path) voidsetLogLevel(String level) voidsetMaxConnectionsPerIp(int n) voidsetMaxQueueSize(int size) voidsetMaxResponseBodyBytes(int bytes) voidsetMaxSitemapEntries(int entries) voidsetMetricsEnabled(boolean enabled) voidsetPort(int port) voidsetRateLimitPerMinute(int limit) static voidsetRequestCache(RequestCache cache) voidsetRequestTimeoutMs(int ms) voidsetScopeEnforcement(String mode) voidsetSocketEnabled(boolean enabled) voidsetSocketPath(String path) voidsetThreadPoolSize(int size) voidsetTlsEnabled(boolean enabled) voidsetTlsKeystorePassword(String password) voidsetTlsKeystorePath(String path) voidsetTlsMode(String mode) validate()Validate all configuration values.
-
Method Details
-
initialize
-
getInstance
-
getPort
public int getPort() -
getMaxResponseBodyBytes
public int getMaxResponseBodyBytes() -
getMaxSitemapEntries
public int getMaxSitemapEntries() -
getBindAddress
-
getThreadPoolSize
public int getThreadPoolSize() -
getRequestTimeoutMs
public int getRequestTimeoutMs() -
getCacheTtlSeconds
public int getCacheTtlSeconds() -
getRateLimitPerMinute
public int getRateLimitPerMinute() -
isIncludeRequestBody
public boolean isIncludeRequestBody() -
isIncludeResponseBody
public boolean isIncludeResponseBody() -
setPort
public void setPort(int port) -
setMaxResponseBodyBytes
public void setMaxResponseBodyBytes(int bytes) -
setBindAddress
-
setMaxSitemapEntries
public void setMaxSitemapEntries(int entries) -
setRequestTimeoutMs
public void setRequestTimeoutMs(int ms) -
setCacheTtlSeconds
public void setCacheTtlSeconds(int seconds) -
setRateLimitPerMinute
public void setRateLimitPerMinute(int limit) -
setThreadPoolSize
public void setThreadPoolSize(int size) -
setIncludeRequestBody
public void setIncludeRequestBody(boolean include) -
setIncludeResponseBody
public void setIncludeResponseBody(boolean include) -
getLogLevel
-
setLogLevel
-
getLoggingFilePath
-
setLoggingFilePath
-
getMaxQueueSize
public int getMaxQueueSize() -
setMaxQueueSize
public void setMaxQueueSize(int size) -
getMaxConnectionsPerIp
public int getMaxConnectionsPerIp() -
setMaxConnectionsPerIp
public void setMaxConnectionsPerIp(int n) -
isMetricsEnabled
public boolean isMetricsEnabled() -
setMetricsEnabled
public void setMetricsEnabled(boolean enabled) -
isCacheEnabled
public boolean isCacheEnabled() -
setCacheEnabled
public void setCacheEnabled(boolean enabled) -
isAuditLogEnabled
public boolean isAuditLogEnabled() -
setAuditLogEnabled
public void setAuditLogEnabled(boolean enabled) -
getScopeEnforcement
Scope policy: "off", "prompt" or "deny". -
setScopeEnforcement
-
getApprovalWaitSeconds
public int getApprovalWaitSeconds()Seconds a gated tool call waits for an operator decision before returning pending. -
setApprovalWaitSeconds
public void setApprovalWaitSeconds(int seconds) -
getApprovalTtlSeconds
public int getApprovalTtlSeconds()Seconds an undecided approval stays queued for a retry before expiring. -
setApprovalTtlSeconds
public void setApprovalTtlSeconds(int seconds) -
isApprovalPopupEnabled
public boolean isApprovalPopupEnabled()Whether new approval requests pop a dialog in addition to the Approvals tab. -
setApprovalPopupEnabled
public void setApprovalPopupEnabled(boolean enabled) -
isAuthEnabled
public boolean isAuthEnabled() -
getAuthToken
-
setAuthEnabled
public void setAuthEnabled(boolean enabled) -
setAuthToken
-
generateToken
Generate a cryptographically random 32-character hex API token. -
isTlsEnabled
public boolean isTlsEnabled() -
getTlsMode
"self_signed" or "custom" -
getTlsKeystorePath
-
getTlsKeystorePassword
-
setTlsEnabled
public void setTlsEnabled(boolean enabled) -
setTlsMode
-
setTlsKeystorePath
-
setTlsKeystorePassword
-
isSocketEnabled
public boolean isSocketEnabled() -
getSocketPath
Explicit socket path, or "" for automatic per-project path.BURP_MCP_SOCKET_PATHenv var wins over stored prefs. -
setSocketEnabled
public void setSocketEnabled(boolean enabled) -
setSocketPath
-
defaultSocketPath
Automatic socket path for a project tag (project id or similar). Short hashed name keeps well under OS socket-path limits. -
resolveSocketPath
Resolve the effective socket path: an explicit config wins, otherwise a socket next to the current project file, otherwise a stable temporary per-project path. -
setActiveSocketPath
-
getActiveSocketPath
-
setApprovalManager
-
getApprovalManager
-
getRequestCache
-
setRequestCache
-
validate
Validate all configuration values. Returns a list of error messages. Empty list means valid.
-