Skip to content

Fix built-in MCP startup failures and remove deprecated Puppeteer server - #28

Merged
enowdev merged 1 commit into
enowdev:mainfrom
elliottophellia:mcp-unavailable
Aug 13, 2026
Merged

Fix built-in MCP startup failures and remove deprecated Puppeteer server#28
enowdev merged 1 commit into
enowdev:mainfrom
elliottophellia:mcp-unavailable

Conversation

@elliottophellia

Copy link
Copy Markdown
Collaborator

Summary

Fix built-in MCP servers failing during initialization with errors such as:

initialize: mcp error 0: EOF

The EOF hid the actual problem: several MCP child processes exited before replying because their package or MCP SDK versions were incompatible.

Why Puppeteer was removed

The built-in Puppeteer entry used @modelcontextprotocol/server-puppeteer, which npm marks as deprecated and no longer supported.

During end-to-end testing, the server also failed to complete the MCP initialization handshake before the client timeout, even after installing its required browser artifacts. Keeping it in the built-in catalog would advertise a server that is unsupported and does not reliably start.

Antares already provides two maintained alternatives:

  • Its native browser tool for normal browser automation.
  • The Playwright MCP server for users who specifically need an external browser MCP.

Removing Puppeteer avoids presenting a known-broken, deprecated option while preserving equivalent browser automation capabilities.

Changes

  • Pin compatible package and MCP SDK versions for built-in servers.
  • Expand ${HOME}, environment variables, and ~/ in stdio arguments.
  • Report child-process exit status and stderr instead of generic EOF errors.
  • Automatically migrate unchanged legacy built-in configurations to pinned definitions.
  • Update Linear and Sentry to their current Streamable HTTP endpoints.
  • Remove the deprecated and non-starting Puppeteer MCP entry.
  • Preserve custom MCP commands and arguments.
  • Add regression tests for startup diagnostics, argument expansion, and legacy configuration migration.

Verification

All remaining local built-in MCP servers completed initialization and tool discovery:

  • Filesystem
  • Fetch
  • Git
  • PostgreSQL
  • SQLite
  • Memory
  • Sequential Thinking
  • Time
  • Slack
  • Brave Search
  • Notion
  • Playwright
  • Everything

Checks passed:

go test ./internal/mcp ./internal/hub ./internal/server -count=1
go vet ./internal/mcp ./internal/hub
go build ./cmd/antares

Credential-backed servers were initialized with placeholder credentials to verify startup and tool discovery. Authenticated API operations were not exercised.

@enowdev
enowdev merged commit f310382 into enowdev:main Aug 13, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants