Skip to content

Conversation

arcaputo3
Copy link
Collaborator

Prepare for migration to TJC-LP

arcaputo3 and others added 30 commits April 8, 2025 20:56
- Enhanced resource template URI matching and parameter extraction
- Added support for ResourceArgument to properly describe template params
- Fixed MCP Resource vs ResourceTemplate conversion in Java SDK
- Improved annotation definitions with more documentation
- Added mime type support for resources
- Removed redundant ResourceDefinition from Types.scala

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- `$defs` may cause issues depending on the client (i.e. Claude Desktop with enums)
- Not fully supported by `java-sdk` yet
- Properly handle None values for optional parameters without converting to "null" string
- Update Option matching with better pattern matching to handle both None and Some cases
- Update tests to expect correct behavior for None values

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Switch from McpSyncServer to McpAsyncServer for reactive handling
- Convert ZIO effects to Project Reactor Mono instances
- Implement zioToMono helper for effect conversion
- Update handler interfaces to return Mono responses
- Improve import organization and use Scala 3 alias import style

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Refactor MacroUtils to handle annotation parameters more consistently
- Add specific helper for parsing Option[String] literals from annotations
- Update JsonSchemaMacro to better handle enum types with direct stringification
- Restructure code organization with logical grouping of functions
- Remove now-unused JacksonUtils dependency for enum conversions

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Remove unnecessary taptr.generic.auto import which is now part of the macro
- Reorder code to improve readability with enums defined before use
- Clean up enum codec definitions for more consistent patterns
- Fix indentation and improve code organization
- Move case class definitions to the end of their respective companion objects

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Update imports to remove unnecessary dependencies
- Improve code organization with cleaner formatting
- Remove commented code and unnecessary debug statements
- Simplify function definitions with more idiomatic Scala 3 style
- Ensure consistent approach across all processor macros

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit adds tests to verify that Option types are correctly marked as non-required in JSON schemas. It also demonstrates how to use Option types with default values (Some(...)) to create optional parameters with defaults.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This guide explains how to use Option types with FastMCP Scala for optional parameters in functions and case classes. The guide covers:
- Using Option[T] for optional parameters
- Setting default values with Some(...)
- How Option types are automatically detected in schema generation
- Best practices for working with Option types

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Remove explicit Schema instances as they are now derived automatically
- Update AnnotatedServer example to return stringified JSON for better testing
- Simplify resource URIs in example server
- Add ParamAnnotationTest to verify tapir annotations are properly included in generated schemas

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- ZD-1: Consolidate versions in build.sbt with dedicated Versions object
- ZD-2: Add Scalafmt and Scalafix configuration for code formatting
- ZD-3: Add compiler guard rails (-Wunused, -Wvalue-discard, etc.)
- ZD-4: Implement error mapping skeleton for better error handling

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Extract RefResolver to fastmcp.runtime for improved reuse
- Replace reflection with MethodHandle for faster function invocation
- Split JsonSchemaMacro into smaller helper modules
- Update build.sbt with more reasonable inlining limits
- Document macro tuning in guide.md

Compile time is now significantly improved and should be under 60s.
- Added McpContext parameter injection using 'ctx' parameter detection
- Created JacksonConverter instance for McpContext
- Modified JsonSchemaMacro to exclude ctx parameter from generated schema
- Added contextualTool API for explicit context-aware tools
- Added ContextEchoServer example showing context usage
- Added tests validating context propagation and schema exclusion

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Rename base package from  to .
- Rename core server class  to .
- Rename  to  and move to own file.
- Rename core annotation  to  for clarity.
- Rename  to .
- Update all imports and references across the codebase to reflect renames.

- Add and configure , ,  plugins.
- Generate comprehensive GitHub Actions workflows (, ) for:
    - Build matrix testing (multiple JDKs)
    - Caching
    - Quality gates (scalafmt, scalafix, test coverage)
    - Codecov integration
    - Artifact management (upload/download between jobs)
    - Automated snapshot/release publishing via
    - Workflow drift checking ()
    - Automatic cleanup of old build artifacts
- Add MIT license file.
- Configure  with Sonatype publishing details, developer information, and license settings.

- Update Tapir and related JSON schema dependencies.
- Enable SemanticDB generation for the Test scope ().
- Update  syntax for rule configuration.
- Update README quickstart and examples to use new class/annotation names.
- Remove unused  example file.
@arcaputo3 arcaputo3 merged commit 10dfe02 into main Apr 19, 2025
5 checks passed
@arcaputo3 arcaputo3 deleted the zero-day-feature-pack branch April 19, 2025 22:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant