You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+62-12Lines changed: 62 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,6 +20,7 @@ Using the server, you benefit from faster creation of pipelines or indexes and s
20
20
-[2.2 Manage Tools](#manage-tools)
21
21
-[2.3 Reduce Tool Count](#reduce-tool-count)
22
22
-[2.4 Prompts](#prompts)
23
+
-[2.5 Providing a Remote MCP Server](#providing-a-remote-mcp-server)
23
24
-[3. Use Cases](#use-cases)
24
25
-[3.1. Creating Pipelines](#creating-pipelines)
25
26
-[3.2. Debugging Pipelines](#debugging-pipelines)
@@ -216,7 +217,6 @@ For example:
216
217
"env": {
217
218
"DEEPSET_API_KEY":"<DEEPSET_API_KEY>"
218
219
}
219
-
220
220
}
221
221
}
222
222
}
@@ -320,15 +320,63 @@ All tools exposed through the MCP server have minimal prompts. Any Agent interac
320
320
321
321
View the **recommended prompt**[here](src/deepset_mcp/prompts/deepset_debugging_agent.md).
322
322
323
-
This prompt is also exposed as the `deepset_recommended_prompt` on the MCP server.
324
-
325
323
In Cursor, add the prompt to `.cursorrules`.
326
324
327
325
In Claude Desktop, create a "Project" and add the prompt as system instructions.
328
326
329
327
You may find that customizing the prompt for your specific needs yields best results.
330
328
331
329
330
+
### Providing a Remote MCP Server
331
+
332
+
The `deepset-mcp` package can be configured to run as a remote MCP server, allowing you to provide deepset platform access to multiple users through a centralized service. This is particularly useful for organizations that want to deploy the MCP server as a shared service or integrate it into existing infrastructure.
333
+
334
+
**Prerequisites**
335
+
336
+
- Python 3.9 or higher
337
+
-`uv` package manager installed
338
+
- Knowledge of FastAPI or similar web framework
339
+
- OAuth authentication system (recommended)
340
+
- SSL/TLS certificate for production deployment
341
+
342
+
**Key Requirements**
343
+
344
+
When running as a remote MCP server, you must configure the following:
345
+
346
+
1.**Transport Protocol**: Use `streamable-http` instead of the default `stdio` transport
347
+
2.**Authentication**: Implement OAuth or similar authentication flow to securely handle user credentials
348
+
3.**Authorization Headers**: Ensure client requests include proper `Authorization` headers with Bearer tokens
349
+
4.**Dynamic Workspace Mode**: Use `workspace_mode='dynamic'` to support multiple users with different workspaces
350
+
5.**API Key Management**: Enable `get_api_key_from_auth_header` to extract deepset API keys from request headers
351
+
352
+
**Implementation Example**
353
+
354
+
Here's a complete example of how to set up a remote MCP server:
355
+
356
+
```python
357
+
from mcp.server.fastmcp import FastMCP
358
+
from deepset_mcp import configure_mcp_server, WorkspaceMode, ALL_DEEPSET_TOOLS, DEEPSET_DOCS_DEFAULT_SHARE_URL
| --api-key | -k | The deepset API key to use. Can also be set it via the "DEEPSET_API_KEY" environment variable. |
390
-
| --workspace | -w | The deepset workspace to use. Can also be set via the "DEEPSET_WORKSPACE" environment variable. |
391
-
| --workspace-mode | -m | If you want to allow an Agent to access multiple workspaces (Options: static, dynamic; default: static) |
392
-
| --list-tools | -l | List all available tools (does not start the server). |
393
-
| --tools | -t | Pass a space separated list of tool names that you want the server to register. |
394
-
| --docs-share-url | -d | Pass a [shared prototype](https://docs.cloud.deepset.ai/docs/share-a-pipeline-prototype) URL to customize which pipeline the Agent uses for documentation search (default: official deepset documentation) |
| --api-key | The deepset API key to use. Can also be set it via the "DEEPSET_API_KEY" environment variable. |
438
+
| --workspace | The deepset workspace to use. Can also be set via the "DEEPSET_WORKSPACE" environment variable. |
439
+
| --workspace-mode | If you want to allow an Agent to access multiple workspaces (Options: static, dynamic; default: static) |
440
+
| --list-tools | List all available tools (does not start the server). |
441
+
| --tools | Pass a space separated list of tool names that you want the server to register. |
442
+
| --docs-share-url | Pass a [shared prototype](https://docs.cloud.deepset.ai/docs/share-a-pipeline-prototype) URL to customize which pipeline the Agent uses for documentation search (default: official deepset documentation) |
443
+
| --api-key-from-auth-header | Get the deepset API key from the request's authorization header instead of using a static key. |
444
+
| --transport | The type of transport to use for running the MCP server (Options: stdio, streamable-http; default: stdio) |
0 commit comments