Skip to main content
Glama

Qdrant MCP Server

by andrewlwn77
Apache 2.0
1
test_settings.py2.75 kB
"""Tests for settings management.""" import pytest from unittest.mock import patch from qdrant_mcp.settings import Settings class TestSettings: """Test settings configuration.""" def test_default_settings(self): """Test default settings values.""" with patch.dict("os.environ", {"OPENAI_API_KEY": "test-key"}): settings = Settings() assert settings.qdrant_url == "http://localhost:6333" assert settings.collection_name == "mcp_memory" assert settings.embedding_provider == "openai" assert settings.embedding_model == "text-embedding-3-small" assert settings.default_limit == 10 def test_environment_variables(self): """Test loading settings from environment.""" env_vars = { "QDRANT_URL": "http://custom:6333", "COLLECTION_NAME": "custom_collection", "EMBEDDING_PROVIDER": "sentence-transformers", "EMBEDDING_MODEL": "all-MiniLM-L6-v2", "DEFAULT_LIMIT": "20", } with patch.dict("os.environ", env_vars): settings = Settings() assert settings.qdrant_url == "http://custom:6333" assert settings.collection_name == "custom_collection" assert settings.embedding_provider == "sentence-transformers" assert settings.embedding_model == "all-MiniLM-L6-v2" assert settings.default_limit == 20 def test_openai_api_key_validation(self): """Test OpenAI API key validation.""" # Should raise error when using OpenAI without API key with patch.dict("os.environ", {}, clear=True): with pytest.raises(ValueError, match="OpenAI API key is required"): Settings(embedding_provider="openai") # Should not raise error for sentence-transformers with patch.dict("os.environ", {}, clear=True): settings = Settings(embedding_provider="sentence-transformers") assert settings.openai_api_key is None def test_model_validation(self): """Test embedding model validation.""" with patch.dict("os.environ", {"OPENAI_API_KEY": "test-key"}): # Valid OpenAI model settings = Settings( embedding_provider="openai", embedding_model="text-embedding-3-large" ) assert settings.embedding_model == "text-embedding-3-large" # Invalid OpenAI model with pytest.raises(ValueError, match="Invalid OpenAI model"): Settings( embedding_provider="openai", embedding_model="invalid-model" )

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/andrewlwn77/qdrant-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server