Adds linux-mcp-server to the goose registry#6979
Conversation
Signed-off-by: Eliane Pereira <[email protected]> Signed-off-by: Rodolfo Olivieri <[email protected]>
2ca6c60 to
bb91979
Compare
documentation/static/servers.json
Outdated
| { | ||
| "name": "LINUX_MCP_USER", | ||
| "description": "Default username for SSH connections", | ||
| "required": false, |
There was a problem hiding this comment.
Please remove all the trailing commas after these "required": false lines, otherwise they'll break the Extensions page.
But I'd suggest keeping only the 2-3 most commonly used env vars in this file (like LINUX_MCP_USER, LINUX_MCP_SSH_KEY_PATH, and LINUX_MCP_VERIFY_HOST_KEYS) and removing the rest. Instead, you can link directly to https://rhel-lightspeed.github.io/linux-mcp-server/clients/#environment-variables from the linux-mcp.md tutorial for the full and always up-to-date list.
There was a problem hiding this comment.
Thanks for the feedback. I will remove the comma after "required": false lines.
@r0x0d please, do you agree to keep only the 2-3 most commonly used env vars in this file and add a link directly to https://rhel-lightspeed.github.io/linux-mcp-server/clients/#environment-variables from the linux-mcp.md tutorial for the full and always up-to-date list?
Thank you.
There was a problem hiding this comment.
Hi! Yeah, I think it makes sense. We can go with LINUX_MCP_USER, LINUX_MCP_SSH_KEY_PATH and LINUX_MCP_VERIFY_HOST_KEYS as suggested.
documentation/docs/mcp/linux-mcp.md
Outdated
| @@ -0,0 +1,88 @@ | |||
| --- | |||
| title: Linux MCP server Extension | |||
There was a problem hiding this comment.
Nit - Please upper cap "Server" or even remove it "Linux MCP Extension"
documentation/docs/mcp/linux-mcp.md
Outdated
| import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; | ||
| import GooseBuiltinInstaller from '@site/src/components/GooseBuiltinInstaller'; | ||
|
|
||
| <YouTubeShortEmbed videoUrl="https://www.youtube.com/embed/VIDEO_ID" /> |
There was a problem hiding this comment.
Please remove this unless you have a video link to add
documentation/docs/mcp/linux-mcp.md
Outdated
| :::tip TLDR | ||
| <Tabs groupId="interface"> | ||
| <TabItem value="ui" label="goose Desktop" default> | ||
| [Install Linux MCP server](https://rhel-lightspeed.github.io/linux-mcp-server/install/) |
There was a problem hiding this comment.
Should be something like this (I copied the autogenerated link in the Desktop tab):
Launch the installer
documentation/docs/mcp/linux-mcp.md
Outdated
|
|
||
| - *Python 3.10* or later. | ||
| - *goose* installed and configured. | ||
| - *Sudo privileges (for certain diagnostic tools used by the server)*. | ||
|
|
There was a problem hiding this comment.
Note that you'll need uv installed on your system to run this command, as it uses uvx. Some diagnostic tools may require sudo privileges on the target Linux system.
There was a problem hiding this comment.
goose suggested this instead to align with our template for uvx extensions and said that uv handles Python dependencies automatically, so no need to mention Python 3.10.
documentation/static/servers.json
Outdated
| "description": "Tools to allow LLM clients to interact with Linux systems remotely", | ||
| "command": "uvx linux-mcp-server", | ||
| "link": "https://github.com/rhel-lightspeed/linux-mcp-server", | ||
| "installation_notes": "Install using uvx package manager. Note: This is a read-only mcp server to discovering and interacting with remote/local systems.", |
There was a problem hiding this comment.
Nit - "for discovering"?
|
Thanks for contributing @elianerpereira ! This looks like a good one. One more change request:
If you want, try out the Add MCP Server recipe that should be able help with this and other changes. |
documentation/docs/mcp/linux-mcp.md
Outdated
|
|
||
| - *Python 3.10* or later. | ||
| - *goose* installed and configured. | ||
| - *Sudo privileges (for certain diagnostic tools used by the server)*. |
There was a problem hiding this comment.
Currently the tools don't use sudo so you can remove this line.
- Upper cap "Server" - Removes link to YouTube - Updates TLDR section - Updates prerequisite section - Changes tutorial name: docs/mcp/linux-mcp.md → docs/mcp/linux-mcp-server-mcp.md Signed-off-by: Eliane Pereira <[email protected]>
- Removes all the trailing commas after these "required": false lines - Keeps only the most commonly used env vars in the file, such as LINUX_MCP_USER, LINUX_MCP_SSH_KEY_PATH, and LINUX_MCP_VERIFY_HOST_KEYS, and adds link #environment-variables for the full and always up-to-date list. Signed-off-by: Eliane Pereira <[email protected]>
af49e90 to
b31d20e
Compare
…deps * origin/main: (34 commits) fix: reduce server log verbosity — skip session in instrument, defaul… (#7729) fix: provider test infrastructure (#7738) fix: sanitize streamable HTTP extension names derived from URLs (#7740) refactor: derive GooseMode string conversions with strum (#7706) docs: Add Spraay Batch Payments MCP Extension Tutorial (#7525) fix: flake.nix (#7224) delete goose web (#7696) Add @angiejones as CODEOWNER for documentation (#7711) Add MLflow integration guide (#7563) docs: LM Studio availability (#7698) feat: add Avian as an LLM provider (#7561) Adds `linux-mcp-server` to the goose registry (#6979) fix: add #[serde(default)] to description field on 4 ExtensionConfig variants (#7708) feat: combine TUI UX from alexhancock/tui-goodness with publishing config from jackamadeo/package-tui (#7683) chore: cleanup old sandbox (#7700) Correct windows artifact (#7699) gh fall back (#7695) fix: restore smart-approve mode (#7690) fix: make TLS configurable in goosed agent via GOOSE_TLS env var (#7686) Update to rmcp 1.1.0 (#7619) ... # Conflicts: # Cargo.lock
* origin/main: (21 commits) fix(ui-desktop): unify path resolution around GOOSE_PATH_ROOT (#7335) fix: pass OAuth scopes to DCR and extract granted_scopes from token response (#7571) fix: write to real file if config.yaml is symlink (#7669) fix: preserve pairings when stopping gateway (#7733) fix: reduce server log verbosity — skip session in instrument, defaul… (#7729) fix: provider test infrastructure (#7738) fix: sanitize streamable HTTP extension names derived from URLs (#7740) refactor: derive GooseMode string conversions with strum (#7706) docs: Add Spraay Batch Payments MCP Extension Tutorial (#7525) fix: flake.nix (#7224) delete goose web (#7696) Add @angiejones as CODEOWNER for documentation (#7711) Add MLflow integration guide (#7563) docs: LM Studio availability (#7698) feat: add Avian as an LLM provider (#7561) Adds `linux-mcp-server` to the goose registry (#6979) fix: add #[serde(default)] to description field on 4 ExtensionConfig variants (#7708) feat: combine TUI UX from alexhancock/tui-goodness with publishing config from jackamadeo/package-tui (#7683) chore: cleanup old sandbox (#7700) Correct windows artifact (#7699) ...
* origin/main: (21 commits) fix(ui-desktop): unify path resolution around GOOSE_PATH_ROOT (#7335) fix: pass OAuth scopes to DCR and extract granted_scopes from token response (#7571) fix: write to real file if config.yaml is symlink (#7669) fix: preserve pairings when stopping gateway (#7733) fix: reduce server log verbosity — skip session in instrument, defaul… (#7729) fix: provider test infrastructure (#7738) fix: sanitize streamable HTTP extension names derived from URLs (#7740) refactor: derive GooseMode string conversions with strum (#7706) docs: Add Spraay Batch Payments MCP Extension Tutorial (#7525) fix: flake.nix (#7224) delete goose web (#7696) Add @angiejones as CODEOWNER for documentation (#7711) Add MLflow integration guide (#7563) docs: LM Studio availability (#7698) feat: add Avian as an LLM provider (#7561) Adds `linux-mcp-server` to the goose registry (#6979) fix: add #[serde(default)] to description field on 4 ExtensionConfig variants (#7708) feat: combine TUI UX from alexhancock/tui-goodness with publishing config from jackamadeo/package-tui (#7683) chore: cleanup old sandbox (#7700) Correct windows artifact (#7699) ...
…e-issue * origin/main: fix(ui-desktop): unify path resolution around GOOSE_PATH_ROOT (#7335) fix: pass OAuth scopes to DCR and extract granted_scopes from token response (#7571) fix: write to real file if config.yaml is symlink (#7669) fix: preserve pairings when stopping gateway (#7733) fix: reduce server log verbosity — skip session in instrument, defaul… (#7729) fix: provider test infrastructure (#7738) fix: sanitize streamable HTTP extension names derived from URLs (#7740) refactor: derive GooseMode string conversions with strum (#7706) docs: Add Spraay Batch Payments MCP Extension Tutorial (#7525) fix: flake.nix (#7224) delete goose web (#7696) Add @angiejones as CODEOWNER for documentation (#7711) Add MLflow integration guide (#7563) docs: LM Studio availability (#7698) feat: add Avian as an LLM provider (#7561) Adds `linux-mcp-server` to the goose registry (#6979) fix: add #[serde(default)] to description field on 4 ExtensionConfig variants (#7708)
Summary
This PR adds the linux-mcp-server to the goose registry.
Type of Change
AI Assistance
Testing
Related Issues
Relates to #ISSUE_ID
Discussion: LINK (if any)
Screenshots/Demos (for UX changes)
Before:
After: