Local Provider
Provider name: local
What It Does #
The local provider writes uploaded files on the Discord MCP host and returns a public URL for them.
This is useful when you want generated files to stay under your own control instead of being pushed to a third-party upload service.
Typical Use Case #
Use local when you want the Discord MCP to:
- generate an image
- save the final file locally
- return a URL under your own domain or under the built-in
/uploads/...route
How Integrators Should Think About It #
local is an operator-managed uploader.
If the operator enables it for your app, util_generate_image may return URLs
served directly by the Discord MCP service. If it is not enabled, there is
nothing extra you need to do.
In practice, you may see it selected when:
- the app uses
image_uploader=local - the app uses
uploader=local - the current request overrides the uploader with
X-Image-UploaderorX-Upload-Provider
Filename Behavior #
When X-Current-Message is provided, this provider names files after the
message snowflake:
- format:
{message_id}-{count}.{ext} countstarts at1and increments until an unused name is found
Otherwise, it uses a short random name with an unambiguous character set.
Important Notes #
- the built-in
/uploads/...route only serves files that actually exist - invalid paths and traversal attempts are rejected
- the operator controls where files are written and which public URL they map to