MCP Scaleway Functions

io.github.cyclimsePublished by GitHub account cyclimsev0.3.4Updated Oct 24, 2026

Unofficial MCP Server for Scaleway Serverless Functions

VerifiedSTDIODesktop onlyCloud & InfrastructureDeveloper Tools

Overview

AI-generated overview

Unofficial MCP server that lets an assistant manage and deploy Scaleway Serverless Functions: namespaces, functions, code, runtimes and logs.

What you can do
  • Create, list and delete function namespaces
  • Create, deploy, update and delete functions, and list available runtimes
  • Download a function's code and fetch its logs
  • Add dependencies to a local function, including ones needing Docker
When to use it
Useful when you want an assistant to handle Scaleway Serverless Functions end to end from your editor or coding agent: scaffolding a namespace, deploying or updating code, pulling an existing function down to work on it, or checking logs.
Requirements
Runs locally as a binary or container; the README describes SSE on localhost:8080 by default or stdio via a flag. Needs Scaleway credentials, read by default from the standard Scaleway config file, with further settings such as SCW_DEFAULT_REGION via Scaleway environment variables. Docker is needed for dependencies that rely on native code.
Before you install
Unofficial and not affiliated with Scaleway. It can create, update and delete namespaces and functions, and the README says its safety measures against destructive actions are not foolproof. It uses your Scaleway credentials, and debug logging records all requests and responses to and from the Scaleway API.

Installation

In SourceWeft

  1. Open MCP Scaleway Functions in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

MCP Scaleway Functions

Model Context Protocol (MCP) server to manage and deploy Scaleway Serverless Functions using the Model Context Protocol standard.

[!CAUTION] This project is unofficial and not affiliated with or endorsed by Scaleway. Some small safety measures are in place to prevent the LLM from doing destructive actions, but they're not foolproof. Use at your own risk.

Getting Started

Download the latest release from the releases page or build it from source using Go.

Run the MCP server:

bash
./mcp-scaleway-functions

By default, the MCP server runs with the SSE transport on http://localhost:8080, but you can also change it to use Standard I/O (stdio) transport via the --transport stdio flag.

Then, configure your IDE or tool of choice to connect to the MCP server. Here are some examples:

VSCode (sse example)

Add a new server configuration in your .vscode/mcp.json file:

json
{	"servers": {		"mcp-scaleway-functions": {			"url": "http://localhost:8080",			"type": "http",		}	},}

Crush (stdio example)

Crush is an open-source coding agent that supports MCP. You can find more information about in the Crush repository.

Add a new server configuration in your ~/.config/crush/crush.json file:

json
{  "$schema": "https://charm.land/crush.json",  "mcp": {    "scaleway-functions": {      "type": "stdio",      "command": "mcp-scaleway-functions",      "args": ["--transport", "stdio"],      "timeout": 600,      "disabled": false    }  }}

You can even use Crush with Scaleway Generative APIs by adding a new provider in the same ~/.config/crush/crush.json file:

jsonc
{  "mcp": {	// ... see above ...  },  "providers": {    "scaleway": {      "name": "Scaleway",      "base_url": "https://api.scaleway.ai/v1/",      "type": "openai",	  // To fetch from environment variables, use the `$VAR_NAME` syntax.	  // Note: this key requires the "GenerativeApisModelAccess" permission.      "api_key": "$SCW_SECRET_KEY",      "models": [        {          "name": "Qwen coder",          "id": "qwen3-coder-30b-a3b-instruct",          "context_window": 128000,          "default_max_tokens": 8000        }      ]    }  }}

That's it 🎉! Have fun vibecoding and vibedevoopsing as you please.

Configuration

By default, the MCP server reads from the standard Scaleway configuration file located at ~/.config/scw/config.yaml.

Further configuration can be done via the Scaleway environment variables to configure the MCP server.

For instance, you can set a region to work in via the SCW_DEFAULT_REGION environment variable.

bash
SCW_DEFAULT_REGION=nl-ams ./mcp-scaleway-functions

Available Tools

ToolDescription
create_and_deploy_function_namespaceCreate and deploy a new function namespace.
list_function_namespacesList all function namespaces.
delete_function_namespaceDelete a function namespace.
list_functionsList all functions in a namespace.
list_function_runtimesList all available function runtimes.
create_and_deploy_functionCreate and deploy a new function.
update_functionUpdate the code or the configuration of an existing function.
delete_functionDelete a function.
download_functionDownload the code of a function. This is useful to work on an existing function.
fetch_function_logsFetch the logs of a function.
add_dependencyAdd a dependency to a local function. Useful for dependencies that rely on native code and therefore need Docker to be installed.

Debugging

You can enable debug logging by using the --debug flag when starting the MCP server. This will log all requests and responses to/from the Scaleway API.

To configure the log level, use the --log-level flag (default is info). Available log levels are: debug, info, warn, error.

Logs are stored in the $XDG_STATE_HOME/mcp-scaleway-functions directory (usually ~/.local/state/mcp-scaleway-functions).

Development

Running tests:

bash
go tool gotestsum --format testdox

Generating mocks:

bash
go tool mockery

Source: README.md at commit c68860d

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.3.4LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts