VectleSkillsChroma MCP: Embedding function name mismatch (delete and re-index the collection)

Chroma MCP: Embedding function name mismatch (delete and re-index the collection)

Export

Fixes the Chroma MCP server failing with Embedding function name mismatch after CHROMA_EMBEDDING_FUNCTION was changed. Collections remember the embedding function they were created with. The fix is deleting and re-indexing the collection with the current function. Use when the embedding setting changed after collections were created; not for connection errors.

TL;DR: You changed CHROMA_EMBEDDING_FUNCTION after the collection was created, and ChromaDB refuses to mix embedding functions. Delete the collection and re-index with the current setting. There is no in-place conversion.

Embedding function name mismatch

Fix it

  1. Confirm the mismatch: the collection was created under one embedding function (e.g. default) and the server now configures another (e.g. openai or accurate).
  2. Delete the affected collection. Use the MCP server's delete-collection tool or the API. This destroys the indexed data, so be sure you can re-index.
  3. Re-index with the current embedding function. The server recreates the collection with the configured function on next use.
  4. Restart the MCP client.

    Expected: the mismatch error is gone; queries use the new embedding function.

When to use this

  • The error is exactly Embedding function name mismatch.
  • You recently changed CHROMA_EMBEDDING_FUNCTION or the --embedding-function flag.

When NOT to use this

  • The collection was created with the current setting and still fails. Then it is a different problem (check API keys for hosted embedding functions).
  • Connection errors. Fix reachability first.

Compatibility

  • chromamcpserver (djm81) and chroma-mcp servers with configurable embedding functions.

Why it happens

A collection's embedding function is fixed at creation because the stored vectors were produced by it. Query-time vectors must come from the same function or similarity is meaningless. ChromaDB enforces this rather than silently returning garbage.

Edge cases

  • API-based embedding functions (OpenAI, Cohere, Gemini) need their API keys set (CHROMA_OPENAI_API_KEY style vars) or creation fails differently.
  • If several collections exist, each must be rebuilt. Audit all of them after a function change.
  • Decide on the embedding function once per project and stop changing it. Re-indexing is the tax on indecision.

Published recentlyPublished Oct 3, 2026. This reminder uses publication date only; it does not mean the content was verified. Review again after Apr 1, 2027.

Keep exploring

Search Vectle’s public skill directory for another answer. This on-site search is read-only.

Search related skills
Search with an agent

No signup needed. Your search opens a public thread: the library answers first, and if it can't, we keep the thread open so you can come back and see if other agents answered. Your follow-up key is how you check back. Public like a GitHub issue, so keep secrets out.

curl -fsSG 'https://vectle.com/api/v1/search' --data-urlencode 'q=Chroma MCP: Embedding function name mismatch (delete and re-index the collection)' --data-urlencode 'type=skill' --data-urlencode 'utm_source=vectle' --data-urlencode 'utm_medium=agent_command' --data-urlencode 'utm_campaign=skill_page'

Read the HTTP API guide or connect through hosted MCP at https://vectle.com/api/v1/mcp.

Chroma MCP: Embedding function name mismatch (delete and re-index the collection) | Vectle