Skip to content

feat: Add mempalace-mcp entry point for standalone MCP server - #313

Closed
bmaltais wants to merge 2 commits into
MemPalace:mainfrom
bmaltais:add-mempalace-mcp-entry-point
Closed

feat: Add mempalace-mcp entry point for standalone MCP server#313
bmaltais wants to merge 2 commits into
MemPalace:mainfrom
bmaltais:add-mempalace-mcp-entry-point

Conversation

@bmaltais

@bmaltais bmaltais commented Apr 8, 2026

Copy link
Copy Markdown

Add [project.scripts] entry point for mempalace-mcp so the MCP server can be run directly after installation instead of requiring 'python -m mempalace.mcp_server'.

This enables:

  • Cleaner MCP server configuration with just mempalace-mcp as the command
  • System-wide CLI availability without python -m mempalace.mcp_server dependencies
  • Consistent with other Python package conventions for CLI tools

What does this PR do?

How to test

Checklist

  • Tests pass (python -m pytest tests/ -v)
  • No hardcoded paths
  • Linter passes (ruff check .)

Copilot AI review requested due to automatic review settings April 8, 2026 23:44

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds a new installable CLI entry point for running the MemPalace MCP server directly (instead of python -m mempalace.mcp_server), and updates the UV lockfile metadata accordingly.

Changes:

  • Add mempalace-mcp console script pointing at mempalace.mcp_server:main.
  • Update uv.lock metadata to include the spellcheck extra (autocorrect) and reflect current dependency constraints (including chromadb range).

Reviewed changes

Copilot reviewed 1 out of 2 changed files in this pull request and generated 1 comment.

File Description
pyproject.toml Adds the mempalace-mcp entry point for standalone MCP server execution.
uv.lock Locks autocorrect / spellcheck extra and updates packaged metadata/dependency constraints.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread pyproject.toml

@web3guru888 web3guru888 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Thank you for this PR! Adding mempalace-mcp as an entry script is an excellent QoL improvement for both standalone usage and configuring Claude Code.

I've reviewed the changes, and the documentation updates as well as the project.scripts setup mapping mempalace-mcp to mempalace.mcp_server:main look completely correct.

However, I noticed that the PR includes some unrelated package/dependency modifications in pyproject.toml and uv.lock:

  1. Adding an autocorrect dependency and a new spellcheck extra.
  2. Narrowing the chromadb version bounds from >=0.4.0,<1 to >=0.5.0,<0.7. This could introduce runtime conflicts for other integration setups (we are actually tracking a ChromaDB version gap in issue #257).

Given our current strong focus on base stability, we need to keep changes scoped tightly. Could you please revert the dependency changes (autocorrect, spellcheck, and the chromadb bounds) in both pyproject.toml and uv.lock?

If the spellcheck feature or the ChromaDB version bump is needed for other functionality you are working on, those would be best proposed in a separate PR so we can evaluate them independently.

Once the dependency changes are reverted to match main, I will be happy to approve and merge this!

@web3guru888 web3guru888 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Thank you for this PR! Adding mempalace-mcp as an entry script is an excellent QoL improvement for both standalone usage and configuring Claude Code.

I've reviewed the changes, and the documentation updates as well as the project.scripts setup mapping mempalace-mcp to mempalace.mcp_server:main look completely correct.

However, I noticed that the PR includes some unrelated package/dependency modifications in pyproject.toml and uv.lock:

  1. Adding an autocorrect dependency and a new spellcheck extra.
  2. Narrowing the chromadb version bounds from >=0.4.0,<1 to >=0.5.0,<0.7. This could introduce runtime conflicts for other integration setups (we are actually tracking a ChromaDB version gap in issue #257).

Given our current strong focus on base stability, we need to keep changes scoped tightly. Could you please revert the dependency changes (autocorrect, spellcheck, and the chromadb bounds) in both pyproject.toml and uv.lock?

If the spellcheck feature or the ChromaDB version bump is needed for other functionality you are working on, those would be best proposed in a separate PR so we can evaluate them independently.

Once the dependency changes are reverted to match main, I will be happy to approve and merge this!

@bmaltais
bmaltais force-pushed the add-mempalace-mcp-entry-point branch from bf61485 to 7a01954 Compare April 9, 2026 15:28
@bmaltais bmaltais changed the title Add mempalace-mcp entry point for standalone MCP server feat: Add mempalace-mcp entry point for standalone MCP server Apr 9, 2026
@bmaltais
bmaltais force-pushed the add-mempalace-mcp-entry-point branch 2 times, most recently from 6044348 to a3f1793 Compare April 9, 2026 15:40
bmaltais added 2 commits April 9, 2026 11:40
Add [project.scripts] entry point for mempalace-mcp so the MCP server
can be run directly after installation instead of requiring
'python -m mempalace.mcp_server'.

This enables:
- Cleaner MCP server configuration with just 'mempalace-mcp' as the command
- System-wide CLI availability without venv path dependencies
- Consistent with other Python package conventions for CLI tools
@milla-jovovich

Copy link
Copy Markdown
Collaborator

Hey @bmaltais — I've taken a look and ran it through CLI. Thanks for the fix! There are two open PRs addressing #296 and going with #315 because it adds mempalace mcp as an argparse subcommand (matching the exact command users are already trying when they hit the error) and includes a regression test in tests/test_cli.py.

Your mempalace-mcp entry-point approach is clean too — just landing the other one because it matches the error-message ergonomics better. Really appreciate the contribution. 💜

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.

4 participants