Summary
mempalace 3.1.0 pins chromadb>=0.5.0,<0.7, but chromadb 0.6.x uses Pydantic V1 internally, which is incompatible with Python 3.14. This causes the MCP server to crash on startup.
Environment
- Python 3.14.3 (Windows 11)
- mempalace 3.1.0
- Upgraded from mempalace 3.0.0 (which had been working with chromadb 1.5.6)
Steps to Reproduce
- Install mempalace 3.1.0 on Python 3.14
- pip resolves chromadb to 0.6.3 (satisfies
>=0.5.0,<0.7)
- Start MCP server:
python -m mempalace.mcp_server
Error
File "...\chromadb\config.py", line 21, in
from pydantic.v1 import BaseSettings
...
File "...\chromadb\config.py", line 101, in
class Settings(BaseSettings):
...
File "...\pydantic\v1\main.py", line 221, in new
inferred = ModelField.infer(...)
The root cause is chromadb 0.6.x depending on pydantic.v1, which is not compatible with Python 3.14+.
Workaround
Force-install chromadb 1.5.6, which works on Python 3.14:
pip install chromadb==1.5.6
pip warns about the version conflict (mempalace wants <0.7, you have 1.5.6), but the server starts and runs correctly.
Suggested Fix
Either:
Widen the chromadb pin to allow >=0.5.0 (dropping the <0.7 ceiling), or
Add a Python 3.14+ conditional that requires chromadb>=1.0, or
Document the incompatibility and pin guidance for Python 3.14 users
Summary
mempalace 3.1.0pinschromadb>=0.5.0,<0.7, but chromadb 0.6.x uses Pydantic V1 internally, which is incompatible with Python 3.14. This causes the MCP server to crash on startup.Environment
Steps to Reproduce
>=0.5.0,<0.7)python -m mempalace.mcp_serverError
File "...\chromadb\config.py", line 21, in
from pydantic.v1 import BaseSettings
...
File "...\chromadb\config.py", line 101, in
class Settings(BaseSettings):
...
File "...\pydantic\v1\main.py", line 221, in new
inferred = ModelField.infer(...)
The root cause is
chromadb 0.6.xdepending onpydantic.v1, which is not compatible with Python 3.14+.Workaround
Force-install chromadb 1.5.6, which works on Python 3.14: