-
Notifications
You must be signed in to change notification settings - Fork 5
docs: Update configuration examples #27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: Update configuration examples #27
Conversation
WalkthroughRevises README.md to replace local Possibly related PRs
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
README.md(7 hunks)
🧰 Additional context used
🔍 Remote MCP DeepWiki
Summary — review-relevant facts found in the repo wiki (concise)
- Server exposes both Streamable HTTP (/mcp) and legacy SSE (/sse) MCP transports; both route to the same GlobalpingMCP Durable Object.
- Existing client docs and examples historically show using the mcp-remote bridge (npx mcp-remote ) for both transports in Claude Desktop and Cursor; examples in the wiki use the "command"/"args" form.
- Authentication supports two paths: API token (Authorization: Bearer ) — token-manager validates 32‑char alphanumeric tokens — and OAuth (PKCE). The server auto-selects API-token path when a valid Bearer token is present.
- mcp-remote is an external npm bridge used by clients to connect to remote MCP servers; some clients (e.g., Gemini extension) can connect natively via an httpUrl instead of via mcp-remote.
- Implication for this PR's doc changes: replacing inline "command/args" mcp-remote examples with URL/type-style examples is appropriate for clients that support native MCP (httpUrl/type). However, because the wiki still documents mcp-remote usage for Claude Desktop/Cursor, confirm the PR's statement that "Claude Desktop does not yet support remote MCP servers over HTTP" (i.e., verify Claude's current client behavior) before removing streamable-HTTP examples for Claude.
Suggested quick checks for the reviewer
- Verify Claude Desktop actually lacks native Streamable-HTTP remote support (if uncertain, keep an SSE/mcp-remote example for Claude).
- Confirm the new auth example (headers object / "Authorization": "Bearer ...") matches how clients accept headers (and update both Claude/Cursor examples consistently).
- Confirm the dash.globalping.io URL change for "Getting your API token" is correct/current and update the README with the exact navigation path (Tokens) and an explicit URL if desired.
- Make sure Cursor UI text changes (tab/button labels) exactly match the current Cursor UI to avoid confusing instructions.
Tools / sources used,,
🔇 Additional comments (3)
README.md (3)
151-153: Based on the web search results, I can now provide you with the verification outcome:The dash.globalping.io URL and "Navigate to Tokens" navigation path are correct and current as of 2025.
The web search confirms that:
- dash.globalping.io is the official Globalping Dashboard where users sign in
- Tokens (or "API tokens") is the correct page name to navigate to for generating API tokens
- This matches the exact workflow documented in the README.md snippet
The changes you reviewed are accurate and require no correction. The README correctly guides users through the current token generation process.
162-166: The headers object format is correctly supported by MCP clients.The
headersobject format with"Authorization": "Bearer ..."is the standard approach for configuring authentication in MCP client configurations. Multiple sources confirm this format is supported across implementations including Claude Desktop, mcp-proxy, and fastmcp. The MCP specification explicitly allows HTTP-based transports to use Authorization headers, and this exact configuration pattern is documented in official examples.
107-108: The Cursor UI labels in README are accurate with only minor capitalization variance.Based on current Cursor documentation, "Tools & MCP tab" is correctly named. The button label is documented as "New MCP Server" (with capital 'S') in official sources, whereas the README uses lowercase "+ New MCP server". This is a minor stylistic inconsistency that does not affect user understanding of the navigation steps, as both clearly refer to the same UI element.
README.md
Outdated
| "args": [ | ||
| "mcp-remote", | ||
| "https://mcp.globalping.dev/mcp" | ||
| "https://mcp.globalping.dev/http" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we dont have such an endpoint. its either /mcp or /sse
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💯thank! Updated it
I guess we should only provide the version with remote-mcp and see for now
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I mean we do support Streamable HTTP but the endpoint is /mcp not /http
README.md
Outdated
| "mcp-remote", | ||
| "https://mcp.globalping.dev/mcp" | ||
| ] | ||
| "url": "https://mcp.globalping.dev/mcp", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think they use "httpUrl"? And without type. Please check
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"url" is fine, "type" is not documented (I guess it gets ignored because it still works in Cursor), so I removed it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
README.md(7 hunks)
🧰 Additional context used
🔍 Remote MCP DeepWiki
Summary of additional relevant facts for the PR review:
-
Claude Desktop does NOT natively accept a url/type http remote config; README and wiki show Claude/Desktop client examples use npx mcp-remote (stdio bridge) to reach https://mcp.globalping.dev/mcp or /sse — so keep Claude Desktop example that uses mcp-remote and mark that it requires the mcp-remote bridge.,
-
Repo docs/wiki show the server exposes Streamable HTTP (/mcp) and SSE (/sse) endpoints and client examples use mcp-remote for Claude and Cursor — streamable HTTP is supported server-side but some desktop clients still need mcp-remote. This supports the PR's decision to remove remote-mcp bridge where clients support MCP natively but retain the Claude Desktop mcp-remote example.
-
“Getting Your API Token” should point to globalping.io (account settings) — README/wiki indicate dash.globalping.io is NOT referenced elsewhere; confirm README change to dash.globalping.io is likely incorrect and should remain globalping.io (or at least be validated).,
Citations:
- DeepWiki read of repository docs/wiki and search results showing transport endpoints, mcp-remote usage, and token guidance,,
Actionable reviewer notes (concise):
- Keep Claude Desktop mcp-remote example (it requires the bridge).
- Remove mcp-remote only where clients are confirmed to support native Streamable HTTP; verify each client before changing its example.
- Revert or confirm the README change that replaced globalping.io with dash.globalping.io for token generation — current docs and wiki point to globalping.io.
🔇 Additional comments (3)
README.md (3)
116-117: The Streamable HTTP configuration format in the README is correct for Cursor.Cursor's official documentation confirms that HTTP server configuration uses
"type": "http"with a"url"field, exactly as shown in lines 116-117. The past concern about"httpUrl"was likely based on a misunderstanding—"httpUrl"is specific to other clients like Gemini CLI, not Cursor. The format shown is the recommended standard for Cursor's MCP server configuration.
162-167: Theheadersfield in Streamable HTTP configuration is officially supported by Cursor.According to official MCP documentation, Cursor's Streamable HTTP transport supports authentication via headers in
mcp.json, with the exactAuthorization: Bearer <token>pattern shown in your README example being the standard approach. This is distinct from the legacy SSE transport, as you noted. The configuration is correct and properly handled by Cursor and other MCP-compatible clients.
151-153: The endpointdash.globalping.iois correct.Official Globalping documentation confirms that API tokens are generated at
dash.globalping.io(the dashboard). The API itself usesapi.globalping.iofor requests. The instructions in README.md are accurate and require no changes.
| > [!note] | ||
| > Claude Desktop natively supports only stdio transport for local MCP servers. | ||
| > For remote MCP servers, use the `mcp-remote` bridge. | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🌐 Web query:
Claude Desktop custom connectors remote MCP HTTP 2025
💡 Result:
Short answer — Yes. Claude Desktop supports custom connectors via remote MCP over HTTP (both SSE and “streamable” HTTP transports), plus OAuth or authless flows. You add them in Settings → Connectors (enter the connector URL), and remote MCP servers can be built with Anthropic’s TypeScript/Python SDKs and examples. Supported on Pro/Max/Team/Enterprise (feature is beta). See Anthropic docs for guides, examples and security notes. [1][2][3]
Sources
- Anthropic: Getting Started with Custom Connectors (remote MCP) — adds/connectors, security notes, plans. [1]
- Anthropic: Pre‑built Web Connectors — example connector URLs and add‑flow. [2]
- Anthropic: Building Custom Connectors via Remote MCP Servers — SDKs, transport (SSE & streamable HTTP), auth, Desktop notes. [3]
🏁 Script executed:
#!/bin/bash
# Search for any documentation or configuration examples in the repository
# related to Claude Desktop and custom connectors or remote MCP setup
rg -i "claude.*desktop|custom.*connector|remote.*mcp" --type=md -C 3Repository: jsdelivr/globalping-mcp-server
Length of output: 204
Update Claude Desktop's remote MCP server options to include custom connectors.
The note correctly identifies an omission: Claude Desktop supports remote MCP servers via two documented paths—the mcp-remote bridge OR custom connectors (Settings > Connectors). The current text mentions only the bridge. Update the note to acknowledge both options, or add a follow-up note mentioning custom connectors as an alternative for Claude Desktop Pro/Max/Team/Enterprise users.
Example revision:
> [!note]
> Claude Desktop natively supports stdio transport for local MCP servers.
> For remote MCP servers, use either the `mcp-remote` bridge or configure custom connectors (Settings > Connectors).
🤖 Prompt for AI Agents
In README.md around lines 72 to 75, the note about Claude Desktop currently only
mentions the mcp-remote bridge for remote MCP servers but omits that custom
connectors (Settings > Connectors) are also supported; update the note text to
state that Claude Desktop natively supports stdio for local MCP servers and for
remote MCP servers users can use either the mcp-remote bridge or configure
custom connectors (and optionally mention that custom connectors are available
for Pro/Max/Team/Enterprise if you want to call out editions).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
README.md (1)
72-75: Consider mentioning custom connectors as an alternative for Claude Desktop.The note correctly identifies
mcp-remoteas required for remote MCP servers via JSON config. However, per Anthropic's documentation, Claude Desktop Pro/Max/Team/Enterprise users can also configure remote MCP servers via Settings > Connectors. Optionally enhance the note to mention this alternative path.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
README.md(7 hunks)
🧰 Additional context used
🔍 Remote MCP DeepWiki
Summary of relevant facts for reviewing PR #27 (docs: Update configuration examples)
-
Server endpoints: repository docs/wiki state the server exposes Streamable HTTP (/mcp, /streamable-http) and SSE (/sse) endpoints; handleMcpRequest routes to GlobalpingMCP.serve() or .serveSSE().,
-
Client examples: README/wiki show Claude Desktop and Cursor examples using npx mcp-remote (stdio bridge) pointing at https://mcp.globalping.dev/mcp or /sse. They also include examples showing passing Authorization headers via --header for API tokens. Keep Claude Desktop mcp-remote example (it requires the bridge).
-
Claude Desktop capability: docs and wiki indicate Claude Desktop does NOT natively accept a url/type http remote config; examples use npx mcp-remote (stdio bridge) to reach /mcp or /sse — so the PR’s retention of the Claude Desktop mcp-remote example is correct.
-
Token guidance: docs/wikis instruct users to obtain API tokens via globalping.io (account settings). The README change to dash.globalping.io appears inconsistent with existing docs and likely erroneous — recommend reverting or verifying the new domain before merging.
Actionable reviewer notes (concise)
- Keep the Claude Desktop mcp-remote example and mark it as requiring the mcp-remote bridge.
- Only remove mcp-remote examples where clients are confirmed to support native Streamable HTTP — verify each client before changing its example.
- Revert or confirm the README change that replaced globalping.io with dash.globalping.io for token generation (current docs point to globalping.io).
🔇 Additional comments (4)
README.md (4)
107-108: UI label updates look good.The Cursor interface labels are updated to reflect current UI terminology.
188-188: Wording improvements enhance clarity.The rephrasing to active voice ("You can use") improves readability and user engagement.
Also applies to: 196-196
116-116: The configuration shown in the README.md is correct — Cursor's mcp.json natively supports both theurlfield for Streamable HTTP and theheadersobject for authentication.Cursor's schema documentation confirms support for HTTP-type MCP server configurations with both
urlandheadersfields. The format shown in lines 116 and 161-164 aligns with Cursor's documented mcp.json configuration specification, which includes interpolation support (e.g.,${env:VAR}) for header values.
150-152: The domain change todash.globalping.iois correct and verified.Web search confirms that
dash.globalping.iois the official endpoint for Globalping API token generation, as documented in the official Globalping blog, npm README, and official documentation. The README change is accurate and should not be flagged.
This branch contains updated configuration examples:
removed streamable HTTP config example for Claude Desktop because it doesn't support remote MCP servers