From 85debcbcd42652ca3d685680f67f507311c05786 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christopher=20M=C3=BChl?= Date: Sat, 28 Feb 2026 01:25:53 +0100 Subject: [PATCH] feat: enable MCP servers and add happy-coder - Enables official MCP servers (fetch, playwright, stackexchange, arxiv) - Adds Charlie MCP servers (memory, comunica) - Adds claudezilla MCP server - Adds happy-coder mobile client from nixpkgs master - Adds nodejs_22 for MCP server runtime Co-Authored-By: Claude Sonnet 4.5 --- home/by-host/endurance/config/dev.nix | 73 +++++++++++++++++---------- overlays/unstable.nix | 2 +- 2 files changed, 47 insertions(+), 28 deletions(-) diff --git a/home/by-host/endurance/config/dev.nix b/home/by-host/endurance/config/dev.nix index 8e4f253..9479f67 100644 --- a/home/by-host/endurance/config/dev.nix +++ b/home/by-host/endurance/config/dev.nix @@ -24,6 +24,9 @@ nodePackages.typescript-language-server nil # nix lsp + # Node.js for MCP servers + nodejs_22 + # trurl # Parsing and manipulating URLs via CLI pandoc # Document converter ripgrep # Grep file search @@ -39,6 +42,7 @@ gitui tea harbor.agent-deck # Terminal session manager for AI coding agents + happy-coder # Claude Code mobile client (happy.engineering) harbor.oryx # TUI for sniffing network traffic using eBPF # BMAD @@ -83,33 +87,48 @@ enable = true; # package = inputs.unstable.${system}.claude-code; - # mcpServers = { - # fetch = { - # args = ["-y" "@modelcontextprotocol/server-fetch"]; - # command = "npx"; - # type = "stdio"; - # }; - # playwright = { - # args = ["-y" "@modelcontextprotocol/server-playwright"]; - # command = "npx"; - # type = "stdio"; - # }; - # stackexchange = { - # args = ["-y" "mcp-server-stackexchange"]; - # command = "npx"; - # type = "stdio"; - # }; - # arxiv = { - # args = ["-y" "mcp-server-arxiv"]; - # command = "npx"; - # type = "stdio"; - # }; - # claudezilla = { - # command = "bun"; - # args = ["/home/toph/code/vendor/claudezilla/mcp/server.js"]; - # type = "stdio"; - # }; - # }; + mcpServers = { + # Official MCP servers (require Node.js) + fetch = { + command = "npx"; + args = ["-y" "@modelcontextprotocol/server-fetch"]; + type = "stdio"; + }; + playwright = { + command = "npx"; + args = ["-y" "@modelcontextprotocol/server-playwright"]; + type = "stdio"; + }; + stackexchange = { + command = "npx"; + args = ["-y" "mcp-server-stackexchange"]; + type = "stdio"; + }; + arxiv = { + command = "npx"; + args = ["-y" "mcp-server-arxiv"]; + type = "stdio"; + }; + + # Custom MCP servers + claudezilla = { + command = "bun"; + args = ["/home/toph/code/vendor/claudezilla/mcp/server.js"]; + type = "stdio"; + }; + + # Charlie MCP servers (local) + charlie-memory = { + command = "bun"; + args = ["/home/toph/agent/mcp/memory/index.js"]; + type = "stdio"; + }; + charlie-comunica = { + command = "bun"; + args = ["/home/toph/agent/mcp/comunica/index.js"]; + type = "stdio"; + }; + }; }; }; } diff --git a/overlays/unstable.nix b/overlays/unstable.nix index e72e7a2..0a2799d 100644 --- a/overlays/unstable.nix +++ b/overlays/unstable.nix @@ -17,5 +17,5 @@ # open-webui ; - inherit (channels.master) install-nothing marimo; + inherit (channels.master) install-nothing marimo happy-coder; }