Skip to content

fix(mcphub-nvim): preserve plugin spec fields - #1768

Merged
Uzaaft merged 2 commits into
AstroNvim:mainfrom
handlecusion:fix/mcphub-setup
Jun 12, 2026
Merged

fix(mcphub-nvim): preserve plugin spec fields#1768
Uzaaft merged 2 commits into
AstroNvim:mainfrom
handlecusion:fix/mcphub-setup

Conversation

@handlecusion

@handlecusion handlecusion commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

What

  • Nests the optional CopilotChat integration inside the specs table so lazy.nvim preserves the main mcphub.nvim spec fields.
  • Keeps setup driven by the opts table, matching the existing AstroCommunity pattern and review checklist.
  • Clarifies that the external mcp-hub binary must be installed or configured separately.

Why

Fixes #1767.

In a minimal lazy.nvim repro, the previous spec shape did not preserve fields such as opts, cmd, event, and dependencies on the main mcphub.nvim plugin spec. Running the mcphub healthcheck could then fail with:

attempt to concatenate local 'cmd' (a nil value)

After this change, the spec preserves those fields. lazy.nvim can use the existing opts = {} table for plugin setup, and mcphub.nvim reaches its normal dependency check. If mcp-hub is not installed, users get the expected missing dependency message instead of a nil cmd error.

Verification

  • Reproduced the pre-change healthcheck error:
    • attempt to concatenate local 'cmd' (a nil value)
  • Verified the parsed lazy spec after the change:
    • config nil
    • opts table
    • deps { "plenary.nvim" }
    • event "User AstroFile"
    • cmd "MCPHub"
  • Verified the post-change healthcheck path no longer raises the nil cmd error and instead reaches mcphub.nvim's expected missing dependency message when mcp-hub is not installed.
  • Ran Lua parse/dofile check: DOFILE_OK 1
  • Ran git diff --check

No PRs or branches were created by automation before this approved PR step.

@github-actions

github-actions Bot commented Jun 11, 2026

Copy link
Copy Markdown

Review Checklist

Does this PR follow the [Contribution Guidelines](development guidelines)? Following is a partial checklist:

Proper conventional commit scoping:

  • If you are adding a new plugin, the scope would be the name of the category it is being added into. ex. feat(utility): added noice.nvim plugin

  • If you are modifying a pre-existing plugin or pack, the scope would be the name of the plugin folder. ex. fix(noice-nvim): fix LSP handler error

  • Pull request title has the appropriate conventional commit type and scope where the scope is the name of the pre-existing directory in the project as described above

  • README is properly formatted and uses fenced in links with <url> unless they are inside a [title](url)

  • Entry returns a single plugin spec with the new plugin as the only top level spec (not applicable for recipes or packs).

  • Proper usage of opts table rather than setting things up with the config function.

  • Proper usage of specs table for all specs that are not dependencies of a given plugin (not applicable for recipes or packs).

@handlecusion handlecusion changed the title fix(mcphub-nvim): initialize setup explicitly fix(mcphub-nvim): preserve plugin spec fields Jun 11, 2026

@Uzaaft Uzaaft left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Looks good.

Comment thread lua/astrocommunity/editing-support/mcphub-nvim/README.md Outdated
@Uzaaft
Uzaaft merged commit 022df4a into AstroNvim:main Jun 12, 2026
16 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.

AstroCommunity mcphub.nvim spec: unclear dependency handling for mcp-hub binary

2 participants