Skip to content

Commit 188d199

Browse files
committed
docs(tools): add Quick Selection Guide and common scenarios
Adds decision tree and real-world examples to the existing Tools page: - ASCII decision tree for quick tool type selection - 6 common scenarios with conservative UI path guidance - Softer tone, consistent with existing docs - Integrated with existing taxonomy section Addresses user confusion while avoiding duplication. AI-assisted drafting; manually reviewed and validated. Signed-off-by: Hera and Hades
1 parent 500526a commit 188d199

1 file changed

Lines changed: 59 additions & 1 deletion

File tree

  • docs/features/extensibility/plugin/tools

docs/features/extensibility/plugin/tools/index.mdx

Lines changed: 59 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,65 @@ These are **Python scripts** that run directly within the Open WebUI environment
4747
- **MCPO (Proxy)**: Most community MCP servers use `stdio` (local command line). To use these in Open WebUI, you use the [**MCPO Proxy**](../../plugin/tools/openapi-servers/mcp.mdx) to bridge the connection.
4848

4949
### 4. OpenAPI / Function Calling Servers
50-
Generic web servers that provide an OpenAPI (`.json` or `.yaml`) specification. Open WebUI can ingest these specs and treat every endpoint as a tool.
50+
Generic web servers that provide an OpenAPI (`.json` or `.yaml`) specification.
51+
Open WebUI can ingest these specs and treat every endpoint as a tool.
52+
53+
---
54+
55+
## Quick Selection Guide
56+
57+
🎯 Not sure which extension type to use?
58+
Start here.
59+
60+
### Decision Tree
61+
62+
```text
63+
Do you need a built-in capability (e.g., Web Search or other native features)?
64+
├─ Yes → Use Native Features (built-in)
65+
│ → Enable via Admin Panel settings (feature-dependent),
66+
│ then toggle in-chat if available
67+
└─ No → Do you need to run custom Python on the Open WebUI server?
68+
├─ Yes →
69+
│ ├─ Is it a simple input/output transformation on messages?
70+
│ │ ├─ Yes → Use Functions (Filters / Pipes)
71+
│ │ └─ No → Use Workspace Tools
72+
│ └─ Do you need to offload heavy/long-running work?
73+
│ ├─ Yes → Use Pipelines (separate service/container)
74+
│ └─ No → Use Workspace Tools
75+
└─ No → Do you need to connect to external services via an API/spec?
76+
├─ Yes →
77+
│ ├─ Standard REST API with an OpenAPI spec → Use OpenAPI Servers
78+
│ └─ MCP-compatible service → Use MCP (native HTTP or via MCPO proxy)
79+
└─ No → You may not need tools—start with prompts and built-in features.
80+
```
81+
82+
### Common Scenarios
83+
84+
**"I want the model to search the web."**
85+
→ Use Native Web Search (no code).
86+
Enable it in the Admin Panel (Web Search settings),
87+
then toggle it in the chat UI if applicable.
88+
89+
**"I need a custom weather lookup (or other API call)."**
90+
→ Use Workspace Tools.
91+
Write Python to call the API and return structured results.
92+
93+
**"I want to transform messages (e.g., redact sensitive text) before sending to the model."**
94+
→ Use Functions (Filter).
95+
Keep the logic lightweight,
96+
and review any compliance/security requirements for your use case.
97+
98+
**"I need to run heavy ML workloads (classification, extraction, etc.) without slowing down the app."**
99+
→ Use Pipelines.
100+
Run the workload in a separate service/container.
101+
102+
**"I want to connect to my company's internal REST API."**
103+
→ Use an OpenAPI Server.
104+
Provide an OpenAPI spec so tools can be generated automatically.
105+
106+
**"I have an MCP server (e.g., from a desktop workflow) and want to use it in Open WebUI."**
107+
→ Use MCP via MCPO to bridge stdio-based MCP servers to HTTP,
108+
then connect it under Settings → Connections.
51109

52110
---
53111

0 commit comments

Comments
 (0)