mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-07 11:28:35 -05:00
[GH-ISSUE #14655] issue: [Tools] API calls ignore prefix when using Claude-compatible config, leading to 404 #55992
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @djimonta on GitHub (Jun 4, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/14655
Check Existing Issues
Installation Method
Docker
Open WebUI Version
v0.6.13
Ollama Version (if applicable)
No response
Operating System
Ubuntu 22.04
Browser (if applicable)
No response
Confirmation
README.md.Expected Behavior
Hi team👋
I'm integrating mcpo into OpenWebUI using the claude-compatible configuration method. My tool exposes an endpoint at
/test/do_somethingas defined in my server, and I reference it correctly in the Claude config file.Since my
mcposerver is inside a docker container, I'm calling the tool inside OpenWebUI using http://mcpo:8000/test/openapi.json, where mcpo is the name of the docker service.However, when the LLM tries to call the tool, it makes a
POSTrequest to/do_somethinginstead of/test/do_something, resulting in a404 Not Found.When using Claude-compatible tool configuration, OpenWebUI should honor the full path defined in the tool config and not assume the tool is mounted at
/.Thanks a lot for the amazing project 🙏 Let me know if I can help with more debugging info!
Actual Behavior
OpenWebUI sends the request to
/do_something, omitting the/testprefix. This causes:Steps to Reproduce
/test/do_aomething@app.list_tools()in MCP or any Claude-compatible serverLogs & Screenshots
Starting MCP OpenAPI Proxy with config file: /app/config.json INFO: 172.0.0.1:59432 - "GET /docs HTTP/1.1" 200 OK INFO: 172.0.0.1:59432 - "GET /openapi.json HTTP/1.1" 200 OK INFO: 172.0.0.1:59432 - "GET /test/docs HTTP/1.1" 200 OK INFO: 172.0.0.1:59432 - "GET /test/openapi.json HTTP/1.1" 200 OK INFO: 172.0.0.3:59432 - "POST /do_something HTTP/1.1" 404 Not FoundAdditional Information
No response
@tjbck commented on GitHub (Jun 4, 2025):
/testshould be included as a base url, please refer to docs. https://docs.openwebui.com/openapi-servers/open-webui#-optional-using-a-config-file-with-mcpo@djimonta commented on GitHub (Jun 4, 2025):
Actually, I had already set
/testas the base URL.The mistake was assuming that
/testshould be added in the second input field (underneath), but in reality, it should be part of the first URL field at the top — even though the resultingbaseURLends up being the same and the connectivity test works.I'm including some screenshots for reference, in case someone else runs into the same issue.
❌ Wrong
✅ Correct