Docs MCP Server — Search These Docs from Your AI Tools
This is an MCP (Model Context Protocol) server that lets AI tools find and read the PlantPulse documentation directly. Add one URL to any MCP-capable tool — Claude Code, Claude Desktop, Cursor, VS Code — and during a conversation it can search the docs, read whole pages, and answer with links to its sources.
Anyone can use it. No sign-up and no API key are required. It is read-only: it cannot change the documentation or reach any other system.
Connection Details
| Item | Value |
|---|---|
| URL | https://docs.plantpulse.io/mcp |
| Transport | Streamable HTTP (stateless — no sessions) |
| Authentication | None |
| Languages | en (default) · ko · ja · zh · de |
| Coverage | Everything currently published on this site — Platform · Edge · AI · Studio · Resources |
When the documentation is updated and the site is redeployed, the MCP server's content changes with it. There is no separate index to wait for.
Connecting
Claude Code
claude mcp add --transport http plantpulse-docs https://docs.plantpulse.io/mcp
After adding it, claude mcp list should show plantpulse-docs as ✓ Connected. To share it with everyone working on a project, add --scope project (it is written to .mcp.json).
Claude Desktop
Under Settings → Connectors → Add custom connector, enter the URL https://docs.plantpulse.io/mcp. Leave the authentication fields empty.
To configure it in the settings file (claude_desktop_config.json) instead, use mcp-remote, which bridges to remote servers (requires Node.js).
{
"mcpServers": {
"plantpulse-docs": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://docs.plantpulse.io/mcp"]
}
}
}
Cursor
Add it to ~/.cursor/mcp.json (all projects) or to the project's .cursor/mcp.json.
{
"mcpServers": {
"plantpulse-docs": {
"url": "https://docs.plantpulse.io/mcp"
}
}
}
VS Code (GitHub Copilot agent mode)
Add it to .vscode/mcp.json in the workspace.
{
"servers": {
"plantpulse-docs": {
"type": "http",
"url": "https://docs.plantpulse.io/mcp"
}
}
}
ChatGPT
In ChatGPT, connect it as a custom connector (custom MCP server).
- Open the screen for adding a custom MCP server. Currently this is Plugins (
chatgpt.com/plugins) + → Add custom MCP server; depending on the ChatGPT version it may instead be Settings → Connectors (Apps & Connectors) → Advanced settings, where you turn on Developer mode and then choose Create. - Enter a name (for example
PlantPulse Docs) and a description, and enterhttps://docs.plantpulse.io/mcpas the URL. - For authentication, choose None (No authentication).
- Read the risk notice, accept it and create the connector. You are done when the tool list reported by the server shows
search·fetch.
Whether this menu is available depends on your ChatGPT plan and workspace settings (whether an admin allows custom connectors), and the menu names change between ChatGPT versions. ChatGPT connectors and deep research look for tools named exactly search · fetch, so this server provides those two tools separately (see Tools below).
Other MCP Clients
Most clients that support Streamable HTTP accept the following shape.
{
"mcpServers": {
"plantpulse-docs": {
"type": "http",
"url": "https://docs.plantpulse.io/mcp"
}
}
}
Tools
All five are read-only.
| Tool | Arguments | Returns |
|---|---|---|
search_docs | query (required, up to 300 characters) · product · locale · limit (1–20, default 8) | The best-matching sections — title · section heading · product · URL · excerpt |
get_page | path (required) · locale | One page's title · URL · section list · full body (up to 60,000 characters) |
list_pages | product · locale · cursor · limit (1–200, default 100) | A list of pages — path · title · product. Fetch the next batch with cursor |
search | query (required) · locale · product · limit (1–20, default 8) | For ChatGPT. {"results":[{id, title, url, text}]} — one result per page |
fetch | id (required) — an id returned by search, or a docs URL | For ChatGPT. {id, title, text, url, metadata} — the full body of one page |
productis one ofplatform·edge·ai·studio·resources. Several products have pages with the same title, such as “Changing passwords and API keys”, so set it when the question is about a specific product.- Without
locale, searches run in English (en). For questions in Korean,koworks best. - The
pathofget_pageaccepts a site path such as/platform/frontline/user-guide, a path with a language prefix such as/ko/..., or a fullhttps://docs.plantpulse.io/...URL. For unknown paths it suggests similar pages. search·fetchreturn the same index in the names and shape ChatGPT expects. Withoutlocale,searchpicks the language from the characters of the query (Hangul →ko, kana →ja, other CJK →zh, German →de, otherwiseen). An id is a page path with its language prefix, such as/ko/edge/user-guide/plc-profiling-testkit.- Search uses the same index and method as this site's docs chat (keyword BM25, including handling of Korean particles).
The server also tells the AI tool to “cite the returned URLs when answering”. When an answer carries links, you can open those pages to check the original text.
Usage Limits
Because the server is public, a few limits keep any one user from monopolizing it.
| Item | Limit | When exceeded |
|---|---|---|
| Request rate | About 30 per minute per IP (bursts of up to 20 allowed) | 429 — retry after a minute |
| Request size | 64 KB | 413 |
| Query length | 300 characters | Tool error |
| Search results | 20 per call, excerpts of about 700 characters | Truncated |
| Page body | 60,000 characters | Truncated, with the source URL appended |
An AI tool typically uses three or four requests to connect (initialization · tool list) and a few more searches and page reads per question. Normal use stays well within the limits.
The server keeps only the same web server access log as the docs site (client IP · time · URL). Search queries and tool arguments are not stored. Do not put confidential company text into queries — this is a public server.
Trying It Yourself
You can see it working with curl, without any client. The Accept header must list both formats.
curl -s https://docs.plantpulse.io/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_docs","arguments":{"query":"PLC profiling","locale":"en","limit":3}}}'
Server status (version · page counts) is at https://docs.plantpulse.io/mcp/healthz.
Troubleshooting
| Symptom | Cause and fix |
|---|---|
Connection fails · 406 | The client does not support Streamable HTTP, or the Accept header is missing. Clients that only support the older SSE transport can connect through mcp-remote, as with Claude Desktop. |
405 | The request used GET. This server is stateless and accepts only POST. |
429 | Too many requests. Retry after about a minute. |
503 | The site was just redeployed and the server is loading its index. Retry in a few seconds. |
| Results only in English | No locale was given. Ask the AI tool to “search the Korean docs” and it will call with ko. |