Skip to content

chroma-mcp fails with Python 3.14: pydantic v1 incompatibility #1206

Description

@bkbThirteen

Bug Report

Version: 10.3.1
Platform: macOS (darwin, aarch64)

Problem

chroma-mcp fails to start when launched via uvx on systems where Python 3.14 is the default. The MCP search tool returns MCP error -32000: Connection closed on every call.

Root cause

chromadb depends on pydantic v1 (pydantic.v1.BaseSettings), which is incompatible with Python 3.14:

```
chromadb/config.py:20: UserWarning: Core Pydantic V1 functionality isn't compatible with Python 3.14 or greater.
from pydantic.v1 import BaseSettings
Traceback (most recent call last):
...
File "chromadb/config.py", line 120, in
class Settings(BaseSettings):
...
File "pydantic/v1/main.py", line 221, in new
inferred = ModelField.infer(
```

Fix

In ChromaMcpManager.buildCommandArgs(), prepend --python 3.12 to the uvx args so chroma-mcp runs under a compatible Python version:

```ts
// Before
return [
'chroma-mcp',
'--client-type', 'persistent',
'--data-dir', DEFAULT_CHROMA_DATA_DIR
];

// After
return [
'--python', '3.12',
'chroma-mcp',
'--client-type', 'persistent',
'--data-dir', DEFAULT_CHROMA_DATA_DIR
];
```

The same fix likely applies to the remote mode args as well.

Workaround

Manually patch plugin/scripts/worker-service.cjs to add "--python","3.12" before "chroma-mcp" in the persistent client args, then restart the worker with bun plugin/scripts/worker-service.cjs restart.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions