Skip to content
/

House MCP Manager

house-mcp-manager · houseworthe/house-mcp-manager · ★ 8 · last commit 2025-11-03

Primitive shape 12 total
Commands 12
00

Summary

House MCP Manager — Summary

A TypeScript CLI tool (house-mcp-manager) that addresses the context-window token problem caused by MCP servers loading all their tool definitions at startup. The tool manages MCP server enable/disable states across Claude Code, Cursor, and Cline, allowing users to profile and switch between server configurations without manually editing JSON files.

The core insight is quantified in the README: individual MCP servers can consume 78,000+ tokens at startup (Canvas MCP), and loading all configured servers can consume 127,000 tokens — 63% of a 200K context window — before the user writes a single line of code. House MCP Manager provides an interactive TUI checkbox interface and profile save/load to solve this.

The tool uses an adapter pattern per IDE: it reads and mutates ~/.claude.json for Claude Code, ~/.cursor/mcp.json for Cursor, and VS Code's settings.json for Cline. It also supports project-level configuration with inheritance from user-level config. All operations are safe (automatic backups, JSON validation).

Part of the "House suite" alongside house-code (context-efficient Claude Code clone) and house-agents (sub-agent framework). Compared to seeds: this is closest to a tooling utility that augments agent-os — it has no skill files, no agents, no hooks, just a CLI binary that manages the JSON config files that MCP clients read. Unlike all 11 seeds, it's the only framework whose primary purpose is controlling MCP server token consumption rather than workflow methodology.

01

Overview

House MCP Manager — Overview

Origin

Created by houseworthe (GitHub), published October–November 2025. Part of the "House suite" of productivity tools for Claude Code. The repo explicitly references multiple highly-upvoted GitHub issues on the Anthropic/claude-code tracker (#6638, #5722, #7068, #7936) about the lack of official MCP management, positioning house-mcp-manager as a community solution to a known platform gap.

Philosophy

The README frames the problem starkly:

"AI coding agents load ALL configured MCP servers on startup, consuming massive amounts of your context window before you even start coding. Some servers like Canvas can consume 78,000+ tokens — that's nearly 40% of your 200K context budget!"

The solution philosophy is "surgical control over what's loaded" rather than any kind of workflow enforcement. The tool is explicitly neutral about what you do with the freed context — it just frees it.

Real-World Impact Numbers (from README)

Before:
  Total Active Token Usage: ~127,000 tokens
  Context Available: 73,000 tokens (36% of budget)

After disabling unused servers:
  Total Active Token Usage: ~14,000 tokens
  Context Available: 186,000 tokens (93% of budget)

That's 113,000 tokens saved

Known Token Costs (community-reported values)

Server Tokens
canvas-mcp-server ~78,000
notion ~35,000
github ~15,000
puppeteer ~8,000

Scope

A standalone TypeScript CLI with 139 automated tests. Not a skill pack or methodology — purely a configuration management utility.

02

Architecture

House MCP Manager — Architecture

Distribution

cli-tool — TypeScript compiled to a Node.js binary, linked globally via npm link.

Install

git clone https://github.com/houseworthe/house-mcp-manager.git
cd house-mcp-manager
npm install
npm run build
npm link

npm install -g house-mcp-manager is listed as "Coming Soon."

Directory Tree (source)

house-mcp-manager/
├── src/
│   ├── cli.ts              # CLI entry point (cobra-style command dispatch)
│   ├── config.ts           # Config file path resolution per tool
│   ├── adapters/           # Per-IDE adapters (claude, cursor, cline)
│   ├── commands/           # Command implementations
│   │   ├── detect.ts
│   │   ├── disable.ts
│   │   ├── enable.ts
│   │   ├── interactive.ts
│   │   ├── list.ts
│   │   ├── profile.ts
│   │   └── status.ts
│   └── utils/              # Token estimation, backup, validation
├── tests/                  # 139 tests (vitest), 130 passing
├── package.json
└── tsconfig.json

Adapter Pattern

Each supported IDE has its own adapter implementing a common interface:

IDE Config File Disabled Storage
Claude Code ~/.claude.json _disabled_mcpServers field (internal)
Cursor ~/.cursor/mcp.json ~/.cursor/mcp-disabled.json (separate file)
Cline VS Code settings.json cline._disabled_mcpServers namespaced key

Safety: All adapters make automatic backups before any modification. JSON validation after every change.

Project-Level Config (Claude Code)

{
  "mcpServers": { /* user-level servers */ },
  "projects": {
    "/path/to/project": {
      "mcpServers": { /* project-specific servers */ },
      "disabledMcpServers": ["canvas"]
    }
  }
}

Target AI Tools

Claude Code, Cursor, Cline (VS Code extension). Continue and Zed listed as "Coming Soon."

Required Runtime

Node.js >= latest LTS (TypeScript compiled)

03

Components

House MCP Manager — Components

CLI Commands (10)

Command Description
house-mcp-manager detect Detect which MCP-enabled tools are installed
house-mcp-manager list List all MCP servers (enabled/disabled)
house-mcp-manager status Show detailed status with token estimates
house-mcp-manager disable <server> Disable a specific server
house-mcp-manager enable <server> Enable a specific server
house-mcp-manager interactive Launch interactive TUI checkbox interface
house-mcp-manager profile save <name> Save current config as a named profile
house-mcp-manager profile load <name> Load a saved profile
house-mcp-manager profile list List all saved profiles
house-mcp-manager profile delete <name> Delete a profile
house-mcp-manager profile init Create pre-built profiles
house-mcp-manager config Show MCP config file path

Flags

Flag Description
--tool=<claude|cursor|cline> Manage a specific IDE
--scope=<user|project|auto> Control configuration scope (default: auto)
--project-path=<path> Specify project path for project-level config

Skills (0)

None.

Hooks (0)

None.

MCP Servers (0)

None. This tool manages MCP servers but is not itself an MCP server.

Scripts (0)

None (beyond the main binary).

Templates (0)

None.

Token Estimation Logic

Uses two strategies:

  1. Known servers: Hardcoded community-reported values (canvas=78k, notion=35k, github=15k, puppeteer=8k)
  2. Heuristics: Smart guessing based on server type when unknown

Estimates displayed in status command output with visual indicators (⚠️ for high, ✓ for low).

Interactive TUI

The interactive command launches a checkbox-style terminal UI:

  • ↑/↓ to navigate
  • Space to toggle
  • Enter to confirm

Built with Node.js; specific TUI library not identified in surface README (likely inquirer or similar).

05

Prompts

House MCP Manager — Prompts

Note on Prompts

House MCP Manager is a CLI configuration utility, not a prompt-driven framework. It ships no skill files, no CLAUDE.md, no agent instruction files. The tool operates entirely on JSON configuration files without any LLM prompting.

Self-Installation Prompt (from README)

The README includes a "Quick Setup with Claude Code" section — a meta-prompt that the user pastes into Claude Code to automatically install the tool. This is an interesting inversion: the human provides a natural language instruction to Claude, and Claude performs the installation.

Verbatim prompt:

Please help me install house-mcp-manager:

1. Clone the repository from https://github.com/houseworthe/house-mcp-manager
2. Navigate into the cloned directory
3. Run npm install to install dependencies
4. Run npm run build to compile the TypeScript
5. Run npm link to make the house-mcp-manager command available globally
6. Verify the installation by running: house-mcp-manager --help
7. Show me my current MCP server status by running: house-mcp-manager status

After installation, explain what house-mcp-manager does and show me the key commands
I can use.

Technique: Step-enumerated instruction to an AI, treating Claude Code as an install wizard. No skill frontmatter, no activation conditions.

CLI Help Output (from README command table)

The CLI commands serve as the only "prompts" in the conventional sense — structured inputs to the tool. Example:

# Token-aware query
house-mcp-manager status
# Returns: server name, enabled/disabled, token estimate, context budget remaining

# Scoped management
house-mcp-manager --tool=claude --scope=project disable canvas-mcp-server

No Agent Instructions

Unlike all 11 seeds, this tool has no CLAUDE.md, no skills, no hooks. The "framework" value is entirely in the TypeScript code and JSON manipulation logic, not in instruction documents.

09

Uniqueness

House MCP Manager — Uniqueness

differs_from_seeds

None of the 11 seeds address MCP server management at the configuration level. The closest seed is claude-flow (which bundles an MCP server with 305 tools) — but claude-flow creates MCP tool consumption, while house-mcp-manager controls it. agent-os is the closest in philosophy (managing what's loaded at session start via CLAUDE.md templates), but agent-os operates through instruction documents while house-mcp-manager operates by mutating JSON config files. This tool occupies a unique category: MCP configuration management utility.

Positioning

Part of a three-tool "House suite" (house-code + house-agents + house-mcp-manager). While the other two House tools are not yet analyzed, house-mcp-manager addresses a platform gap that Anthropic has not officially filled (multiple open GitHub issues cited).

Distinctive Opinion

The README makes a strong claim with data: "Some servers like Canvas can consume 78,000+ tokens — that's nearly 40% of your 200K context budget." This is the only framework in the batch that quantifies its value proposition in tokens rather than developer experience.

Observable Failure Modes

  1. Token estimates are approximate: Based on community reports and heuristics; actual consumption varies with server version
  2. No official npm publish: npm link is not suitable for team use; each developer must clone and link separately
  3. Config file drift: If a user edits ~/.claude.json manually while house-mcp-manager is active, the tool's state may become inconsistent
  4. Test coverage gap: 130/139 tests pass (93.5%); 9 failing tests unknown in scope
  5. IDE version coupling: Adapter implementations are tied to specific config file formats; IDE updates may break the adapters

What Makes It Novel vs. the 11 Seeds

  • Only framework in the entire corpus specifically addressing MCP context consumption
  • Only CLI tool (not skill/command/hook) designed to manage which AI tools are loaded at startup
  • Only framework with cross-IDE portability as a primary design goal (Claude Code + Cursor + Cline)
  • Only framework with documented token cost estimates per server
04

Workflow

House MCP Manager — Workflow

Typical Usage Flow

1. house-mcp-manager status          → see current token usage (e.g. 127k)
2. house-mcp-manager interactive     → toggle servers on/off in TUI
3. house-mcp-manager status          → verify new usage (e.g. 14k)
4. house-mcp-manager profile save coding-only  → save this configuration

Profile Switching Workflow

# Morning: minimal setup for focused coding
house-mcp-manager profile load minimal

# Afternoon: needs database and API tools
house-mcp-manager profile load full

# Return to minimal
house-mcp-manager profile load minimal

Project-Level Override Workflow

cd /path/to/my-project
# View merged view (inherited + project-specific)
house-mcp-manager status --scope=project

# Disable a heavy inherited server for this project only
house-mcp-manager disable canvas-mcp-server --scope=project

# Enable a project-specific server
house-mcp-manager enable puppeteer --scope=project

Inheritance Model

When project scope is active, servers are categorized as:

  • Inherited: from user-level config (auto-available)
  • Overridden: project-specific version with different config
  • Additions: only enabled for this project
  • Disabled: disabled for this project only

Approval Gates

None. The tool is fully automated — commands apply immediately after confirmation in interactive mode.

Phase/Artifact Table

Phase Description Artifact
detect Find installed MCP-enabled tools detected tool list
status Read current config + estimate tokens status report
modify Enable/disable/profile operations mutated JSON config file
backup Pre-modification safety copy ~/.claude-mcp-backups/

Test Suite

139 tests (130 passing, 93.5%); ~300ms. npm test / npm run test:coverage.

06

Memory Context

House MCP Manager — Memory & Context

State Storage

The tool manages state in the MCP client config files themselves:

IDE State Location
Claude Code ~/.claude.json (mcpServers + _disabled_mcpServers + projects)
Cursor ~/.cursor/mcp.json + ~/.cursor/mcp-disabled.json
Cline VS Code settings.json (cline.mcpServers + cline._disabled_mcpServers)

Profile Storage

Profiles are saved as JSON configuration snapshots, location not documented in README (likely ~/.house-mcp-manager/profiles/ or similar).

Backups

Automatic backups before every modification. Backup location: ~/.claude-mcp-backups/cursor/ (documented for Cursor adapter; others likely similar).

Memory Type

File-based (JSON config files). No database, no vector store.

Cross-Session Behavior

All changes persist between sessions because they modify the underlying MCP client config files. Profiles persist until explicitly deleted.

Context Compaction

Not applicable — this tool doesn't interact with Claude Code's context window directly. Its purpose is to reduce context pressure before sessions start, not manage it during sessions.

Relevance to Batch Theme

This tool addresses "MCP server context consumption" — the problem that MCP tool definitions load into Claude's context window at startup. House MCP Manager is the control plane for that problem, not a skill/agent that solves it through prompting.

07

Orchestration

House MCP Manager — Orchestration

Multi-Agent Pattern

None. This is a CLI tool, not an agent orchestration framework.

Execution Mode

one-shot per CLI invocation. Each command runs, mutates a config file, and exits.

Multi-Model

Not applicable.

Isolation Mechanism

None.

Cross-Tool Coordination

The key coordination is between the house-mcp-manager binary and the MCP-client config files it manages. The tool auto-detects which IDE is installed and selects the appropriate adapter.

Atomic Operations

File mutations are atomic via the "move + replace" pattern (servers moved between enabled/disabled sections, not deleted) plus JSON validation after every write. This prevents partial mutations.

Project-Level Scope

The --scope=project flag enables per-project MCP server overrides. This is the closest the tool gets to "orchestration" — managing which server set is active for a given project context.

Relationship to MCP Ecosystem

House MCP Manager operates at the configuration layer (before any agent starts). It does not participate in MCP protocol exchanges. It is an MCP server management tool not an MCP client or server.

08

Ui Cli Surface

House MCP Manager — UI & CLI Surface

Dedicated CLI Binary

Yes. Binary name: house-mcp-manager

Attribute Value
Name house-mcp-manager
Language TypeScript (compiled Node.js)
Is thin wrapper No — owns its own logic
Subcommand count 12 (detect, list, status, disable, enable, interactive, profile save/load/list/delete/init, config)

Interactive TUI

Yes. The interactive command (or bare house-mcp-manager) launches a terminal UI:

  • Checkbox list of all servers with token estimates
  • ↑/↓ navigation, Space to toggle, Enter to confirm
  • No port — purely terminal

Local Web Dashboard

None.

Multi-IDE Support

IDE Status
Claude Code Supported
Cursor Supported
Cline (VS Code) Supported
Continue Coming soon
Zed Coming soon

Observability

Token usage displayed in status command output with color-coded indicators. No logging to files.

Screenshots

README includes a demo.png showing the before/after comparison of token usage in the status display.

Cross-Tool Portability

High — specifically designed to work across Claude Code, Cursor, and Cline. The adapter pattern makes it extensible to additional MCP clients.

Related frameworks

same archetype · same primary tool · same memory type

claude-mem (thedotmack) ★ 78k

Background worker service captures every tool call as an observation, AI-compresses sessions, and auto-injects relevant past…

pi (badlogic/earendil) ★ 55k

A minimal, hackable, multi-provider terminal coding agent that adapts to your workflows via npm-installable TypeScript Extensions…

Agent Skills (Addy Osmani) ★ 46k

Encodes senior-engineer software development lifecycle as 23 auto-routed skills and 7 slash commands for any AI coding agent.

wshobson/agents Plugin Marketplace ★ 36k

Single Markdown source for 83 domain-specialized plugins that auto-generates idiomatic artifacts for five AI coding harnesses.

TabbyML/Tabby ★ 34k

Self-hosted AI coding assistant server (alternative to GitHub Copilot) with admin dashboard, RAG-based completions, and multi-IDE…

Compound Engineering ★ 17k

Make each unit of engineering work compound into easier future work via brainstorm→plan→execute→review→learn cycles.