This is an automated email from the ASF dual-hosted git repository.
epugh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/solr-mcp.git
The following commit(s) were added to refs/heads/main by this push:
new 00d2a216 docs: state SolrCloud-only support, drop standalone
references (#239)
00d2a216 is described below
commit 00d2a216d56fda6e441a625b451d2c7704fc5084
Author: Aditya Parikh <[email protected]>
AuthorDate: Tue Oct 6 14:18:54 2026 -0400
docs: state SolrCloud-only support, drop standalone references (#239)
The server only uses the SolrCloud Collections API, but a few comments
and docs implied standalone Solr support: the create-collection Javadoc
claimed it auto-detects the deployment and creates cores, the
numShards/replicationFactor tool parameters were labelled "SolrCloud
only", and SMOKE_TEST.md read as if standalone Solr 10 worked.
Signed-off-by: Aditya Parikh <[email protected]>
Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>
---
dev-docs/SMOKE_TEST.md | 2 +-
.../solr/mcp/server/collection/CollectionService.java | 13 +++++--------
.../apache/solr/mcp/server/config/JsonResponseParser.java | 6 +++---
.../server/config/JsonResponseParserContentTypesTest.java | 7 +++----
4 files changed, 12 insertions(+), 16 deletions(-)
diff --git a/dev-docs/SMOKE_TEST.md b/dev-docs/SMOKE_TEST.md
index 266a646b..748bc4b4 100644
--- a/dev-docs/SMOKE_TEST.md
+++ b/dev-docs/SMOKE_TEST.md
@@ -11,7 +11,7 @@ Every client needs the same three things: `command: java`,
`args: -jar /path/to/
bin/solr start -e techproducts
```
-You can start any modern version of Solr, but if it's before Solr 10 make sure
you start in Cloud mode.
+The server requires SolrCloud; standalone (user-managed) Solr is not
supported. Solr 10 starts in SolrCloud mode by default; on earlier versions add
`-c` (`bin/solr start -c -e techproducts`).
## Step 2 — Register the server (pick your client)
diff --git
a/src/main/java/org/apache/solr/mcp/server/collection/CollectionService.java
b/src/main/java/org/apache/solr/mcp/server/collection/CollectionService.java
index 1a572003..92a2af41 100644
--- a/src/main/java/org/apache/solr/mcp/server/collection/CollectionService.java
+++ b/src/main/java/org/apache/solr/mcp/server/collection/CollectionService.java
@@ -1093,14 +1093,11 @@ public class CollectionService {
}
/**
- * Creates a new Solr collection (SolrCloud) or core (standalone Solr).
+ * Creates a new Solr collection in the SolrCloud cluster.
*
* <p>
- * Automatically detects the deployment type and uses the appropriate
API:
- *
- * <p>
- * Uses the Collections API, which works with any SolrClient pointing
to a
- * SolrCloud deployment.
+ * Uses the SolrCloud Collections API. Standalone Solr instances are not
+ * supported.
*
* <p>
* Optional parameters default to sensible values when not provided by
the MCP
@@ -1136,10 +1133,10 @@ public class CollectionService {
description = "Configset name. Defaults
to _default.",
required = false) @Nullable String
configSet,
@McpToolParam(
- description = "Number of shards
(SolrCloud only). Defaults to 1.",
+ description = "Number of shards.
Defaults to 1.",
required = false) @Nullable Integer
numShards,
@McpToolParam(
- description = "Replication factor
(SolrCloud only). Defaults to 1.",
+ description = "Replication factor.
Defaults to 1.",
required = false) @Nullable Integer
replicationFactor)
throws SolrServerException, IOException {
diff --git
a/src/main/java/org/apache/solr/mcp/server/config/JsonResponseParser.java
b/src/main/java/org/apache/solr/mcp/server/config/JsonResponseParser.java
index 8e50490c..dec1dcab 100644
--- a/src/main/java/org/apache/solr/mcp/server/config/JsonResponseParser.java
+++ b/src/main/java/org/apache/solr/mcp/server/config/JsonResponseParser.java
@@ -82,9 +82,9 @@ class JsonResponseParser extends ResponseParser {
@Override
public Collection<String> getContentTypes() {
- // Some Solr endpoints (notably /admin/ping and some
standalone-mode handlers)
- // return JSON-encoded bodies with Content-Type: text/plain.
Accept it so SolrJ
- // does not reject otherwise-valid responses.
+ // Some Solr endpoints (notably /admin/ping) return
JSON-encoded bodies with
+ // Content-Type: text/plain. Accept it so SolrJ does not reject
otherwise-valid
+ // responses.
return List.of(MediaType.APPLICATION_JSON_VALUE,
MediaType.TEXT_PLAIN_VALUE);
}
diff --git
a/src/test/java/org/apache/solr/mcp/server/config/JsonResponseParserContentTypesTest.java
b/src/test/java/org/apache/solr/mcp/server/config/JsonResponseParserContentTypesTest.java
index 81181d37..625befa2 100644
---
a/src/test/java/org/apache/solr/mcp/server/config/JsonResponseParserContentTypesTest.java
+++
b/src/test/java/org/apache/solr/mcp/server/config/JsonResponseParserContentTypesTest.java
@@ -28,10 +28,9 @@ import org.springframework.http.MediaType;
* {@link JsonResponseParser}.
*
* <p>
- * Some Solr request handlers (notably {@code /admin/ping} and certain
- * standalone-mode paths) return JSON-encoded bodies with Content-Type
- * {@code text/plain} rather than {@code application/json}. SolrJ rejects the
- * response unless the configured
+ * Some Solr request handlers (notably {@code /admin/ping}) return JSON-encoded
+ * bodies with Content-Type {@code text/plain} rather than
+ * {@code application/json}. SolrJ rejects the response unless the configured
* {@link org.apache.solr.client.solrj.response.ResponseParser} advertises that
* Content-Type, so the parser must tolerate both.
*/