- Home
- MCP servers
- Flemcee
Flemcee
- python
0
GitHub Stars
python
Language
4 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"tylerjharden-flemcee": {
"command": "python",
"args": [
"-m",
"flemcee"
],
"env": {
"FLEMCEE_HOST": "127.0.0.1",
"FLEMCEE_PORT": "8000",
"FLEMCEE_REQ_PORT": "Flapi Request",
"FLEMCEE_RES_PORT": "Flapi Response",
"FLEMCEE_SSE_PATH": "<FLEMCEE_SSE_PATH>",
"FLEMCEE_LOG_LEVEL": "INFO",
"FLEMCEE_TRANSPORT": "stdio",
"FLEMCEE_MOUNT_PATH": "/mcp",
"FLEMCEE_CURATED_TOOLS": "true",
"FLEMCEE_GENERATE_TOOLS": "true",
"FLEMCEE_CONNECT_ON_START": "true",
"FLEMCEE_STREAMABLE_HTTP_PATH": "<FLEMCEE_STREAMABLE_HTTP_PATH>"
}
}
}
}You run Flemcee as an MCP server that lets FL Studio be controlled remotely through the Flapi Python client. It exposes FL Studio controls by executing Python inside FL Studio via Flapi, enabling you to automate playback, transport, tempo, patterns, and more from an MCP client.
How to use
To use Flemcee with an MCP client, run Flemcee in the stdio transport mode or the default streamable HTTP mode, then connect your MCP client to the appropriate transport channel. The stdio mode runs the Flemcee process locally and communicates via standard input/output, while the default mode exposes an HTTP transport that your MCP client can reach over the network.
How to install
Prerequisites prepare your environment before installing Flemcee.
-
- Ensure FL Studio is running with the Flapi server loaded.
Then install Flemcee from source using Python’s virtual environment tooling.
python -m venv .venv
source .venv/bin/activate
pip install -U pip
pip install -e .
Notes on usage and configuration
The server can run with two transports. The default is streamable HTTP. For an inline, local execution model, you can force stdio transport by setting an environment variable before starting Flemcee.
To use stdio transport, start Flemcee like this:
FLEMCEE_TRANSPORT=stdio python -m flemcee
Examples
You might automate common studio tasks by combining Flemcee with your MCP client. For instance, you can start playback, set tempo, or navigate patterns programmatically using the curated tools exposed at startup.
Available tools
fl_connect
Connects to the FL Studio environment so commands can be issued.
fl_disconnect
Disconnects from FL Studio.
fl_status
Retrieves the current status of FL Studio or a subset of its components.
fl_exec
Executes Python code inside FL Studio’s Python environment.
fl_eval
Evaluates a Python expression inside FL Studio’s Python environment.
fl_call
Calls a specific FL Studio API target with arguments.
fl_catalog
Looks up functions/modules in the FL Studio API catalog and can include docs.
fl_symbol_lookup
Looks up a symbol in the FL Studio API catalog.
fl_symbol_resolve
Resolves a target symbol to its concrete implementation.
fl_session_summary
Returns a summary of the current FL Studio session (curated tool).
fl_transport_play
Starts playback in FL Studio (curated tool).
fl_transport_stop
Stops playback in FL Studio (curated tool).
fl_transport_record_toggle
Toggles record mode for transport (curated tool).
fl_transport_set_loop_mode
Sets the loop mode for playback (curated tool).
fl_transport_set_song_pos
Sets the current song position (curated tool).
fl_project_set_tempo
Sets the project tempo in BPM (curated tool).
fl_channel_list
Lists channels, with optional global indexing (curated tool).
fl_channel_set
Configures a channel's properties such as name, color, volume, and pan (curated tool).
fl_channel_select
Selects a channel (curated tool).
fl_pattern_list
Lists patterns in the project (curated tool).
fl_pattern_select
Selects a pattern (curated tool).
fl_pattern_rename
Renames a pattern (curated tool).
fl_sequencer_set_steps
Sets steps in the sequencer grid (curated tool).
fl_sequencer_clear_steps
Clears steps in the sequencer grid (curated tool).
fl_mixer_list_tracks
Lists tracks in the mixer (curated tool).
fl_mixer_set_track
Sets track properties like volume, pan, mute, solo, and arm (curated tool).
fl_mixer_route
Creates or updates the routing between tracks or effects (curated tool).
fl_plugin_list_params
Lists plugin parameters (curated tool).
fl_plugin_set_param
Sets a plugin parameter value (curated tool).
fl_plugin_next_preset
Cycles plugin presets (curated tool).
fl_beat_make_hiphop
Generates a hip hop beat using specified drum channels (curated tool).
fl_mix_balance_peaks
Adjusts mix balance to target peak levels (curated tool).