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 10b3bdb4 docs(clients): add ChatGPT setup guide (#243)
10b3bdb4 is described below

commit 10b3bdb4a894eba336a4ff5327f22c582e0e2a25
Author: Aditya Parikh <[email protected]>
AuthorDate: Tue Oct 6 14:17:24 2026 -0400

    docs(clients): add ChatGPT setup guide (#243)
    
    ChatGPT connects to remote MCP servers over streamable HTTP in developer
    mode. Document the HTTP-only flow, the public-HTTPS/tunnel requirement and
    why secured mode is not yet usable (OAuth 2.1 only, no static bearer).
    
    Signed-off-by: Aditya Parikh <[email protected]>
    Co-authored-by: Claude Sonnet 5.5 <[email protected]>
---
 README.md               |  5 +++--
 docs/clients/README.md  |  1 +
 docs/clients/chatgpt.md | 55 +++++++++++++++++++++++++++++++++++++++++++++++++
 docs/tutorial.md        |  2 +-
 4 files changed, 60 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md
index 086215a7..54069bdd 100644
--- a/README.md
+++ b/README.md
@@ -14,7 +14,7 @@ Just ask your AI assistant:
 
 > *"Find sci-fi movies with 'star wars' in the title released after 2000, show 
 > me the genre breakdown, and sort by relevance."*
 
-This Spring AI [Model Context Protocol 
(MCP)](https://modelcontextprotocol.io/) server exposes Solr operations as 
tools that any MCP-compatible AI client (Claude Desktop, Claude Code, VS 
Code/Copilot, Cursor, JetBrains) can invoke.
+This Spring AI [Model Context Protocol 
(MCP)](https://modelcontextprotocol.io/) server exposes Solr operations as 
tools that any MCP-compatible AI client (Claude Desktop, Claude Code, ChatGPT, 
VS Code/Copilot, Cursor, JetBrains) can invoke.
 
 ## Quick start
 
@@ -61,6 +61,7 @@ Add the server to your MCP client. For **Claude Desktop**, 
edit
 Using a different client, or want STDIO/HTTP/Docker options? See the 
per-client guides:
 **[Claude Desktop](docs/clients/claude-desktop.md)** ·
 **[Claude Code](docs/clients/claude-code.md)** ·
+**[ChatGPT](docs/clients/chatgpt.md)** (HTTP only) ·
 **[VS Code / Copilot](docs/clients/vs-code.md)** ·
 **[Cursor](docs/clients/cursor.md)** ·
 **[JetBrains](docs/clients/jetbrains.md)** ·
@@ -153,7 +154,7 @@ Running in **HTTP mode** — OAuth2, CORS, and the 
`HTTP_SECURITY_ENABLED` toggl
 ## Documentation
 
 **Using it**
-- [Quick start](#quick-start) · [Client setup](docs/clients/) — Claude 
Desktop, Claude Code, VS Code, Cursor, JetBrains, MCP Inspector
+- [Quick start](#quick-start) · [Client setup](docs/clients/) — Claude 
Desktop, Claude Code, ChatGPT, VS Code, Cursor, JetBrains, MCP Inspector
 - [Tutorial: your first collection](docs/tutorial.md) — index a dataset twice, 
schemaless then with a designed schema, and see why field types matter
 - [Observability](docs/observability.md) — OpenTelemetry traces, metrics, logs
 - Security: [Deployment model 
(single-tenant)](docs/security/deployment-model.md) · [STDIO 
model](docs/security/stdio.md) · [HTTP model](docs/security/http.md) · OAuth2 
setup: [Auth0](docs/security/auth0.md) · [Keycloak](docs/security/keycloak.md)
diff --git a/docs/clients/README.md b/docs/clients/README.md
index c2c92144..e89ae033 100644
--- a/docs/clients/README.md
+++ b/docs/clients/README.md
@@ -9,6 +9,7 @@ server's streamable HTTP endpoint at 
`http://localhost:8080/mcp`).
 |--------|-------|
 | Claude Desktop | [claude-desktop.md](claude-desktop.md) |
 | Claude Code | [claude-code.md](claude-code.md) |
+| ChatGPT (HTTP only) | [chatgpt.md](chatgpt.md) |
 | VS Code / GitHub Copilot | [vs-code.md](vs-code.md) |
 | Cursor | [cursor.md](cursor.md) |
 | JetBrains IDEs | [jetbrains.md](jetbrains.md) |
diff --git a/docs/clients/chatgpt.md b/docs/clients/chatgpt.md
new file mode 100644
index 00000000..b8dc6f83
--- /dev/null
+++ b/docs/clients/chatgpt.md
@@ -0,0 +1,55 @@
+# ChatGPT
+
+[ChatGPT](https://chatgpt.com/) can use MCP servers through **developer mode** 
(see OpenAI's [developer mode 
guide](https://developers.openai.com/api/docs/guides/developer-mode) and 
[connecting a 
server](https://developers.openai.com/plugins/deploy/connect-chatgpt)). It 
differs from the other clients in this folder in three ways:
+
+- **HTTP only.** ChatGPT connects to a remote MCP server over streamable HTTP. 
It cannot launch a local process, so there is no STDIO setup and no `java -jar` 
/ `docker run -i` configuration to give it.
+- **The server must be reachable from OpenAI.** `http://localhost:8080/mcp` 
does not work. Use a public HTTPS endpoint, a Secure MCP Tunnel, or a 
development tunnel such as ngrok or `cloudflared`.
+- **Authentication is OAuth 2.1 or none.** ChatGPT does not support static 
bearer tokens or custom headers, so the `Authorization: Bearer …` approach used 
for [Claude Code](claude-code.md) is not available.
+
+Developer mode is available on the web for Pro, Plus, Business, Enterprise and 
Education plans, and workspace admins may need to enable it.
+
+***
+
+## Run the server
+
+Start Solr MCP in HTTP mode, from the JAR or the Docker image. Either way the 
endpoint is `http://localhost:8080/mcp`.
+
+```bash
+# JAR
+PROFILES=http HTTP_SECURITY_ENABLED=false SOLR_URL=http://localhost:8983/solr/ 
\
+    java -jar /absolute/path/to/solr-mcp-1.0.0-SNAPSHOT.jar
+
+# Docker (local image — build first with ./gradlew jibDockerBuild)
+docker run -p 8080:8080 --rm \
+    -e PROFILES=http -e HTTP_SECURITY_ENABLED=false \
+    -e SOLR_URL=http://host.docker.internal:8983/solr/ \
+    solr-mcp:latest
+```
+
+> **Warning — read before exposing this.** `HTTP_SECURITY_ENABLED=false` makes 
every MCP tool anonymous, including the ones that index documents and modify 
schemas. Putting that behind a public tunnel lets anyone who learns the URL 
read and change your Solr data. Use it only for a short demo against a 
throwaway Solr, and stop the tunnel afterwards. See the [HTTP security 
model](../security/http.md).
+
+## Expose it over HTTPS
+
+Any HTTPS forwarder works. For example, with ngrok:
+
+```bash
+ngrok http 8080
+```
+
+Use the `https://…` address it prints, with `/mcp` appended.
+
+## Add it in ChatGPT
+
+1. **Settings → Security and login**: turn on **Developer mode**.
+2. Open **ChatGPT Plugins**, select the **+** button and create a 
developer-mode app.
+3. Enter a name and description, and under **Connection** give the public 
endpoint, ending in `/mcp`, for example `https://<your-tunnel>/mcp`. For a 
private server, choose **Tunnel** instead and select an available Secure MCP 
Tunnel.
+4. Choose **No authentication**, create the connection and review the 
discovered tools. There should be twelve.
+5. Start a chat, enable the app, and ask *"What Solr collections are 
available?"*.
+
+ChatGPT asks for confirmation before tool calls it treats as writes. Tools 
without a `readOnlyHint` annotation are treated as writes, so expect prompts 
for most Solr MCP tools. After restarting the server, use **Refresh** on the 
app so ChatGPT re-reads its tools.
+
+## Secured HTTP (OAuth2)
+
+Not supported yet. ChatGPT's OAuth 2.1 flow expects the MCP server to publish 
protected-resource metadata and to challenge anonymous requests, then registers 
itself with the authorization server through CIMD or dynamic client 
registration. Solr MCP's secured mode is built around a pre-issued JWT bearer 
token and does not answer an anonymous `/mcp` request with `401` (see the [HTTP 
security model](../security/http.md)), so ChatGPT has nothing to start a login 
from. Until that is addressed [...]
+
+If you need ChatGPT against a shared Solr, put the server behind your own 
OAuth-capable gateway rather than exposing it directly.
diff --git a/docs/tutorial.md b/docs/tutorial.md
index 9cad4553..d2bb8544 100644
--- a/docs/tutorial.md
+++ b/docs/tutorial.md
@@ -282,7 +282,7 @@ names via your client's tool inspector before assuming the 
data is wrong.
 
 ## Where to go next
 
-- **[Client setup guides](clients/)** — Claude Desktop, Claude Code, VS Code /
+- **[Client setup guides](clients/)** — Claude Desktop, Claude Code, ChatGPT, 
VS Code /
   Copilot, Cursor, JetBrains, MCP Inspector
 - **[Security](security/)** — the deployment model, the HTTP transport, and 
OAuth2
   setup with Auth0 or Keycloak

Reply via email to