Class McpSnmpMessageBER
java.lang.Object
org.snmp4j.mcp.tool.snmp.ber.McpSnmpMessageBER
- All Implemented Interfaces:
McpTool
MCP tool that parses a raw SNMP message from a hex string and returns its
BER structure as a text tree or JSON object tree.
Supports SNMPv1, SNMPv2c, and SNMPv3, including decryption of AUTH_PRIV
ScopedPDUs when matching SNMPv3 target credentials (with an
authoritativeEngineID) are present in the server configuration.
- Since:
- 0.1.0
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionMcpSnmpMessageBER(Supplier<List<SnmpMcpServer.ServerConfiguration.SnmpTargetConfig>> targetsSupplier) Creates a new BER parser tool. -
Method Summary
Modifier and TypeMethodDescriptionExecutes the tool with the provided parameters.io.modelcontextprotocol.spec.McpSchema.ToolAnnotationsGets the tool annotations.static StringReturns the JSON schema string describing the BER node output format.Gets the description for this tool.getId()Gets the unique identifier for this tool.getName()Gets the display name for this tool.Gets the supported parameters for this tool.Gets the contexts that this tool requires.getTitle()Gets the title associated with this tool.Gets the version of this tool.booleanChecks if the tool is available in the current environment.
-
Field Details
-
TOOL_ID
Tool ID registered with the MCP server ("snmp_message_ber").- See Also:
-
BER_RESULT_SCHEMA_RESOURCE_URI
MCP resource URI for the BER result JSON schema.- See Also:
-
-
Constructor Details
-
McpSnmpMessageBER
public McpSnmpMessageBER(Supplier<List<SnmpMcpServer.ServerConfiguration.SnmpTargetConfig>> targetsSupplier) Creates a new BER parser tool.- Parameters:
targetsSupplier- supplies the list of configured SNMPv3 targets whose credentials are used for deferred key localization when decrypting AUTH_PRIV PDUs
-
-
Method Details
-
getId
-
getName
-
getVersion
Description copied from interface:McpToolGets the version of this tool.- Specified by:
getVersionin interfaceMcpTool- Returns:
- the tool version
-
getTitle
-
getAnnotation
public io.modelcontextprotocol.spec.McpSchema.ToolAnnotations getAnnotation()Description copied from interface:McpToolGets the tool annotations. By default, readOnly, hidden, idempotent, openWorld are true while destructive and returnDirect are false.- Specified by:
getAnnotationin interfaceMcpTool- Returns:
McpSchema.ToolAnnotations
-
getDescription
Description copied from interface:McpToolGets the description for this tool.- Specified by:
getDescriptionin interfaceMcpTool- Returns:
- the tool description
-
isAvailable
public boolean isAvailable()Description copied from interface:McpToolChecks if the tool is available in the current environment.- Specified by:
isAvailablein interfaceMcpTool- Returns:
- true if the tool is available, false otherwise
-
getRequiredContexts
Description copied from interface:McpToolGets the contexts that this tool requires.- Specified by:
getRequiredContextsin interfaceMcpTool- Returns:
- a list of required context IDs
-
getParameters
Description copied from interface:McpToolGets the supported parameters for this tool.- Specified by:
getParametersin interfaceMcpTool- Returns:
- a list of parameter descriptions
-
execute
Description copied from interface:McpToolExecutes the tool with the provided parameters.- Specified by:
executein interfaceMcpTool- Parameters:
params- the parameters to use- Returns:
- the result of the execution
- Throws:
McpToolException- if the tool execution fails
-
getBerResultSchemaJson
Returns the JSON schema string describing the BER node output format.- Returns:
- JSON Schema (Draft 2020-12) string for
BER_RESULT_SCHEMA_RESOURCE_URI
-