Class McpDeveloperToolsConfig
Provides these tools, by group:
Report tools
The report tools take inline SQL or the id of a saved report, the run tools also the id of a personalized report, and they flag a failure as an MCP error.
validate-report— parse SQL template, extract parameters and output columnstest-report-output- execute with supplied parameter values (max 25 rows); with a file type, render that file and describe it insteadtest-full-report— smoke-test with auto-generated dummy valuescheck-report-sql- run the detail and summary SQL at zero rowsvalidate-sql— validate raw SQL against the application data model
SpEL expression tools
test-spel-expression— evaluate against a real entity instancetest-match-expression— score a deduplication match between two instancestest-merge-expression— evaluate a merge survivorship expressiontest-attribute-expression— test a boolean security expression, with optional user impersonation viaConfigTestService.testAttributeExpression(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
Function catalogue tools
Split by dialect because the reachable sets differ: SpEL resolves only the statics
ExpressionFunctions registered, while Groovy also reaches the published utilities and
any Spring bean by name. Three levels of detail, so a caller pays only for what it needs.
list-spel-classes/list-groovy-classes— callable classes, one summary eachlist-spel-functions/list-groovy-functions— functions, optionally scoped to one class, with a one-line summary eachdescribe-class— one class in full, including the prose the listings truncatedescribe-function— one function in full: description, usage examples, parameters, return value, deprecation, since
Descriptions come from the javadoc on the methods themselves, delivered by the build's
json-doclet pass, so they cannot drift from the code. A member with no javadoc is still
listed, with its signature and no description.
Groovy script tools
execute-groovy-script— run a Groovy script with optional bound variablesexecute-text-template— execute a named TextTemplate scripttest-entity-lifecycle-script— run with lifecycle-event-bound variablestest-process-script— run in the context of a running process instance
Debug logging tools
set-debug-logging— create a per-request debug token for specified packagesget-debug-logs— retrieve captured log lines for a debug token
Also registers three MCP prompts (report-development-guide,
spel-expression-guide, groovy-script-guide) and one resource
(file://spel-functions.json).
Active only when spring.ai.mcp.server.enabled=true.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classTool implementations for developer productivity. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionList<io.modelcontextprotocol.server.McpStatelessServerFeatures.SyncPromptSpecification> List<io.modelcontextprotocol.server.McpStatelessServerFeatures.SyncResourceSpecification> developerResources(com.fasterxml.jackson.databind.ObjectMapper mapper, com.ssgllc.fish.expr.doc.FunctionCatalogService functionCatalogService)
-
Constructor Details
-
McpDeveloperToolsConfig
public McpDeveloperToolsConfig()
-
-
Method Details
-
developerPrompts
@Bean public List<io.modelcontextprotocol.server.McpStatelessServerFeatures.SyncPromptSpecification> developerPrompts() -
developerResources
@Bean public List<io.modelcontextprotocol.server.McpStatelessServerFeatures.SyncResourceSpecification> developerResources(com.fasterxml.jackson.databind.ObjectMapper mapper, @Lazy com.ssgllc.fish.expr.doc.FunctionCatalogService functionCatalogService)
-