Serena MCP opens a browser tab at each startup: one line in the config

This is a symptom familiar to anyone who connected Serena to Claude Code in several projects: you start a session — a Serena dashboard tab opens. I restarted the MCP server — another one. By the end of the day there are a dozen and a half identical tabs in the browser, and you have to close them manually.

Fixable with one line.

Success:

Solution

mkdir -p ~/.serena

Next, in the file ~/.serena/serena_config.yml add:

web_dashboard_open_on_launch: false

That’s it. The dashboard will continue to work, it will just stop popping up in the browser by itself.

Why does this happen

It’s not a bug, but a default. In Serena’s configuration template, the parameter web_dashboard_open_on_launch is set to True — meaning at MCP server startup the dashboard opens automatically, and this is intended as a convenience.

The problem is that in combination with the MCP agent, the server starts much more often than such logic would anticipate: for every new project, for every client restart, for every reconnected session. One “handy” opening becomes a flood of tabs.

The dashboard itself is useful — it shows current status and configuration (active tools, languages, enabled modes and contexts), history and statistics of tool calls, live logs, and it allows changing settings on the fly, editing configs and project memory, and stopping the MCP server. Don’t lose it — just open it on demand.

Info:

How to access the dashboard when you need it

Default address is http://localhost:24282/dashboard/index.html. If the port is busy or several Serena instances are running, it will pick the next free port above. You can also simply ask the agent: “open Serena dashboard.”

Since the file is open: what else is in serena_config.yml

This config is something many people see once in a lifetime — just in this kind of situation. It’s useful to know what else is there, because about half the keys fix adjacent irritants.

Key Default value What it does
web_dashboard True the web dashboard itself; false disables it entirely
web_dashboard_open_on_launch True auto-open on launch — that notorious culprit
web_dashboard_interface not set how to display: browser, native window with tray icon, tray manager for multiple instances
web_dashboard_listen_address 127.0.0.1 address to listen on
gui_log_window False legacy log window; mainly Windows, occasionally Linux
log_level 20 log level (20 = INFO)
trace_lsp_communication False tracing language server communication
tool_timeout 240 maximum tool execution time, seconds
default_max_tool_answer_chars 150000 cap on tool answer size
symbol_info_budget 10 budget for symbol information — reduced on slow LSPs
ignored_paths [] ignore paths in gitignore syntax
excluded_tools / included_optional_tools [] disable extra tools or enable optional ones
read_only_memory_patterns [] which project memory files the agent cannot edit
project_serena_folder_location $projectDir/.serena where to put Serena project folder
base_modes [interactive, editing] base operating modes

Note that excluded_tools deserves special attention: Serena brings a sizable set of tools into the context, and if you don’t need some of them, removing them saves tokens on every request.

Warning:

~/.serena/serena_config.yml is a global file that applies to all projects at once. That’s exactly what you need for auto-opening the dashboard, but if you tweak excluded_tools or ignored_paths, remember that per-project settings live elsewhere — in .serena/project.yml inside the project itself.

If there’s no config yet

The current Serena installation looks like this:

uv tool install -p 3.13 serena-agent
serena init

serena init creates ~/.serena/serena_config.yml from a template — it’s easier to run initialization once than to write the file by hand. Connecting to Claude Code:

# globally, project is determined by the current directory
claude mcp add --scope user serena -- serena start-mcp-server --context claude-code --project-from-cwd

# or for a specific project
claude mcp add serena -- serena start-mcp-server --context claude-code --project "$(pwd)"
Note:

In the original Japanese note, an alternative is mentioned — pass a flag to disable the dashboard at MCP server startup. In Serena’s current documentation I didn’t find such a flag: dashboard management is described specifically through config keys. So the reliable path is the config; if your flag works, write in the comments and I’ll add it.

A one-line tweak, but one that saves ten annoying keystrokes per day. Such things are worth setting up right after installing any MCP server — together with a check of which tools it brings into the context.

Forum topic

Sources

Question:

What other MCP server defaults do you disable right after installation? I’m compiling a list of little things like auto-starting interfaces, excessive logging, tools that eat context and are never invoked. It’d be interesting to collect a common list — what do you modify first?