Requirements
This integration uses Goose’s deeplink protocol to register your server as a STDIO extension running viauvx. You must have Goose installed on your system for the deeplink to open automatically.
For remote deployments, configure your FastMCP server with HTTP transport and add it to Goose directly using goose configure or the config file.
Create a Server
The examples in this guide will use the following simple dice-rolling server, saved asserver.py.
server.py
Install the Server
FastMCP CLI
New in version3.0.0
The easiest way to install a FastMCP server in Goose is using the fastmcp install goose command. This generates a goose:// deeplink and opens it, prompting Goose to install the server.
file.py:object notation as the run command. If no object is specified, it will automatically look for a FastMCP server object named mcp, server, or app in your file:
uvx to run your server in an isolated environment. Goose requires uvx rather than uv run, so the install produces a command like:
Dependencies
Use the--with flag to specify additional packages your server needs:
fastmcp.json configuration file (recommended):
fastmcp.json
Python Version
Use--python to specify which Python version your server should use:
The Goose install uses
uvx, which does not support --project, --with-requirements, or --with-editable. If you need these options, use fastmcp install mcp-json to generate a full configuration and add it to Goose manually.Environment Variables
Goose’s deeplink protocol does not support environment variables. If your server needs them (like API keys), you have two options:- Configure after install: Run
goose configureand add environment variables to the extension. - Manual config: Use
fastmcp install mcp-jsonto generate the full configuration, then add it to~/.config/goose/config.yamlwith theenvsfield.
Manual Configuration
For more control, you can manually edit Goose’s configuration file at~/.config/goose/config.yaml:
Dependencies
When manually configuring, add packages using--with flags in the args:
Environment Variables
Environment variables can be specified in theenvs field:
goose configure to add extensions interactively, which prompts for environment variables.
Using the Server
Once your server is installed, you can start using your FastMCP server with Goose. Try asking Goose something like:“Roll some dice for me”Goose will automatically detect your
roll_dice tool and use it to fulfill your request, returning something like:
🎲 Here are your dice rolls: 4, 6, 4 You rolled 3 dice with a total of 14!Goose can now access all the tools, resources, and prompts you’ve defined in your FastMCP server.

