- Move dotenv_values import to top level with load_dotenv
- Fix logging sequence issue by deferring ZEN_MCP_FORCE_ENV_OVERRIDE logs until after logger configuration
- Apply Black formatting to ensure consistent code style
Add ZEN_MCP_FORCE_ENV_OVERRIDE configuration to control whether .env file values
override system environment variables. This prevents conflicts when multiple AI
tools pass different cached environment variables to the MCP server.
- Use dotenv_values() to read configuration from .env file only
- Apply conditional override based on configuration setting
- Add appropriate logging for transparency
- Update .env.example with detailed configuration documentation
- Maintains backward compatibility with default behavior (false)
- Fix ModelContext constructor call in consensus tool (remove invalid parameters)
- Refactor temperature pattern matching for better readability per code review
- All tests now passing (799/799 passed)
- Fix consensus tool hardcoded temperature=0.2 bypassing model capabilities
- Add intelligent temperature inference for unknown custom models
- Support multi-model collaboration (O3, Gemini, Claude, Mistral, DeepSeek)
- Only OpenAI O-series and DeepSeek reasoner models reject temperature
- Most reasoning models (Gemini Pro, Claude, Mistral) DO support temperature
- Comprehensive logging for temperature decisions and user guidance
Resolves: https://github.com/BeehiveInnovations/zen-mcp-server/issues/245
Disabled secondary tools by default (for new installations), updated README.md with instructions on how to enable these in .env
run-server.sh now displays disabled / enabled tools (when DISABLED_TOOLS is set)
Adding max token for consistency per review comment
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
fix: Minor tweaks to prompts
fix: Improved support for smaller models that struggle with strict structured JSON output
Rearranged reasons to use the MCP above quick start (collapsed)
- Set version to 5.8.6 in pyproject.toml to match config.py
- Add automatic version sync script for GitHub Actions
- Configure semantic-release for proper version tracking
- Ensure __updated__ field auto-updates with each release
This commit updates all references to Claude Opus 4 and Sonnet 4 to their newer 4.1 versions throughout the codebase.
The changes include:
- Updating model names in `conf/custom_models.json` and `providers/dial.py`.
- Updating aliases and descriptions to match the new model versions.
- Updating `.env.example` to reflect the new model names.
- Updating all relevant test suites to use the new model names and ensure all tests pass.
The PR template was outdated and misaligned with the actual workflow behavior
introduced in PR #217. Key fixes:
- **Semantic Release**: Now matches pyproject.toml configuration
- feat → MINOR, fix/perf → PATCH (not refactor)
- Added missing 'build' type from allowed_tags
- Fixed breaking change syntax (feat\!, BREAKING CHANGE: in body)
- Removed incorrect 'breaking:' prefix format
- **Docker Builds**: Clarified independence from versioning
- Builds trigger on file changes (Python, Docker files)
- Manual triggering via 'docker-build' label
- Removed misleading 'trigger Docker build + version bump' claims
- **Conventional Commits**: Added link to official specification
The template now accurately reflects the semantic-release config and
docker-pr.yml workflow implementation, preventing contributor confusion.