Skip to content

Conversation

@BYK
Copy link
Member

@BYK BYK commented Sep 17, 2025

No description provided.

@vercel
Copy link

vercel bot commented Sep 17, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
spotlightjs Ready Ready Preview Comment Sep 17, 2025 8:55pm

Copy link
Member

@betegon betegon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good! thought this was going to take more time, BYK delivering

Some notes on trying the mcp locally:

  • i was trying to use the spotlight package at first instead of sidecar. shouldn't we expose the --stdio-mcp argument by adding it to packages/spotlight/bin/run.js and passing it to setupSidecar.
  • We should do dynamically change the sidecar port. If it's already running and you run another server, it says that sidecar is already running. this would cause trouble if you want to connect to the mcp and alread have the electron app running. same happened to me when I was trying it on the mcp inspector and then went to cursor (without closing the inspector connection).


export function createMcpInstance() {
export function createMCPInstance() {
const mcp = new McpServer({
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

shouldn't we track this with our instrumentation?
WrapMcpServerWithSentry?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes @MathurAditya724 shouldn't we track our stuff? 😀

@BYK
Copy link
Member Author

BYK commented Sep 17, 2025

i was trying to use the spotlight package at first instead of sidecar. shouldn't we expose the --stdio-mcp argument by adding it to packages/spotlight/bin/run.js and passing it to setupSidecar.

Yes, that was actually my next step once we validated that this thing works. Will add it to this patch.

We should do dynamically change the sidecar port. If it's already running and you run another server, it says that sidecar is already running. this would cause trouble if you want to connect to the mcp and alread have the electron app running. same happened to me when I was trying it on the mcp inspector and then went to cursor (without closing the inspector connection).

This is a great point, thanks for sharing! We cannot create multiple sidecar instances listening on random ports tho as we need to tell the SDKs which sidecar to talk to. Instead, when we detect an existing instance, I'll make the new one a proxy for the other one. Since this is gonna be a bit tricky, I'll do that in a follow up PR tho.

Copy link
Member

@betegon betegon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thought it looked good from afar, far better up close. reference

@BYK BYK merged commit cec5457 into main Sep 18, 2025
18 checks passed
@BYK BYK deleted the byk/feat/stdio-mcp branch September 18, 2025 12:20
betegon pushed a commit that referenced this pull request Sep 20, 2025
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and publish to npm
yourself or [setup this action to publish
automatically](https://github.com/changesets/action#with-publishing). If
you're not ready to do a release yet, that's fine, whenever you add more
changesets to main, this PR will be updated.


# Releases
## @spotlightjs/overlay@4.0.0

### Major Changes

- Remove integrations architecture in favour of fixed telemetry features
and remove the ability to use the package as an overlay on top of apps.
([#917](#917))

- Remove all vite-plugins as they are deprecated
([#937](#937))

### Minor Changes

- - Implement URL-based routing in overlay with BrowserRouter for web
apps and HashRouter for Electron
([#921](#921))
- Remove sentry-integration.ts and simplify telemetry implementation
- Moved telemetry logic from App.tsx to dedicated Telemetry component

### Patch Changes

- Remove local resource handling and vite plugin as overlay feature is
not supported ([#924](#924))

- Refactor to remove object destructuring from hooks returning only one
value ([#930](#930))

## @spotlightjs/sidecar@2.0.0

### Major Changes

- Make `setupSidecar` async as it should be
([#936](#936))

- Remove all vite-plugins as they are deprecated
([#937](#937))

### Minor Changes

- Add support for multiple stdio MCP servers to run, as a proxy for the
existing main sidecar
([#935](#935))

- Adds stdio based MCP server via a `--stdio-mcp` CLI argument. Also
removes the context-based message buffers to be able to achieve this as
there's no context-id for the stdio transport. This feature was not used
anyway. ([#933](#933))

Moves all log messages to stderr as they should have been to avoid
clobbering the MCP stdio transport.

### Patch Changes

- - To check all items in an envelope for errors.
([#880](#880))

- restructured the sidecar server and minor improvements
([#918](#918))

- To add a soft reset buffer when its cleared.
([#895](#895))

## @spotlightjs/spotlight@4.0.0

### Major Changes

- Make `setupSidecar` async as it should be
([#936](#936))

- Remove all vite-plugins as they are deprecated
([#937](#937))

### Minor Changes

- Add support for multiple stdio MCP servers to run, as a proxy for the
existing main sidecar
([#935](#935))

- Adds stdio based MCP server via a `--stdio-mcp` CLI argument. Also
removes the context-based message buffers to be able to achieve this as
there's no context-id for the stdio transport. This feature was not used
anyway. ([#933](#933))

Moves all log messages to stderr as they should have been to avoid
clobbering the MCP stdio transport.

### Patch Changes

- Remove local resource handling and vite plugin as overlay feature is
not supported ([#924](#924))

- Updated dependencies
\[[`2fe54bb`](2fe54bb),
[`20783d0`](20783d0),
[`48c6753`](48c6753),
[`65f4e9f`](65f4e9f),
[`bb85759`](bb85759),
[`1f2096e`](1f2096e),
[`cec5457`](cec5457),
[`5670dd4`](5670dd4),
[`605b1e1`](605b1e1),
[`69bfd17`](69bfd17),
[`3d56a55`](3d56a55)]:
    -   @spotlightjs/sidecar@2.0.0
    -   @spotlightjs/overlay@4.0.0

## @spotlightjs/electron@1.8.0

### Minor Changes

- Run electron app in background and add a menu tray
([#929](#929))

- Make app window draggable
([#931](#931))

- Added Auto Updater
([#922](#922))

### Patch Changes

- - Implement URL-based routing in overlay with BrowserRouter for web
apps and HashRouter for Electron
([#921](#921))
- Remove sentry-integration.ts and simplify telemetry implementation
- Moved telemetry logic from App.tsx to dedicated Telemetry component
- Updated dependencies
\[[`2fe54bb`](2fe54bb),
[`20783d0`](20783d0),
[`48c6753`](48c6753),
[`65f4e9f`](65f4e9f),
[`bb85759`](bb85759),
[`1f2096e`](1f2096e),
[`cec5457`](cec5457),
[`5670dd4`](5670dd4),
[`605b1e1`](605b1e1),
[`69bfd17`](69bfd17),
[`3d56a55`](3d56a55)]:
    -   @spotlightjs/sidecar@2.0.0
    -   @spotlightjs/overlay@4.0.0

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
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.

3 participants