adityamparikh opened a new pull request, #57:
URL: https://github.com/apache/solr-mcp/pull/57

   ## Summary
   
   - Moves `CollectionService`, `CollectionUtils`, and `Dtos` from the 
`metadata` package into a new dedicated `collection` package, separating 
collection management from schema introspection (`SchemaService` stays in 
`metadata`)
   - Adds a `create-collection` MCP tool to `CollectionService` that creates 
Solr collections/cores with sensible defaults
   - Adds `CollectionCreationResult` DTO returned by the new tool
   
   ## New tool: `create-collection`
   
   ```json
   {
     "name": "my_collection",
     "configSet": "_default",
     "numShards": 1,
     "replicationFactor": 1
   }
   ```
   
   All fields except `name` are optional and default to `_default`, `1`, and 
`1` respectively. Works with both SolrCloud and standalone Solr via 
`Http2SolrClient`.
   
   ## Test plan
   
   - [ ] All 219 existing tests continue to pass (`./gradlew build`)
   - [ ] New unit tests cover: success with CloudSolrClient, success with plain 
SolrClient, default parameter application, blank name validation, 
SolrServerException propagation
   - [ ] New integration test (`createCollection_createsAndListable`) creates a 
collection against a live Testcontainers Solr instance and verifies it appears 
in `listCollections()`
   - [ ] Package rename verified: `metadata` imports replaced with `collection` 
in `Main`, `MainTest`, `McpToolRegistrationTest`
   
   ## Notes
   
   - `SchemaService` is intentionally left in `metadata` — a follow-up PR will 
rename that package to `schema`
   - A companion PR applies the same changes on the `sb4` branch (Spring Boot 4 
/ Spring AI 2.0)
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to