diff --git a/CHANGELOG.md b/CHANGELOG.md index b762b6e..fbd3b00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -33,11 +33,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 header, blue grey/teal palette, Roboto font, and additional material feature flags. The lib and api templates are unchanged. - Docstrings and wiki brought to the GSDFC (Google-style) standard. +- The `dev` extra now includes the `mkdocs` and `mcp` extras so the + quality-gate environment can install and run the full test suite. ### Fixed - Loader-generated signatures render cleanly and unresolvable aliases are dropped from generated models. - Stub fixes for typed API surfaces. +- `import docforge` no longer requires the optional `mcp` dependency; the + MCP server imports `mcp` lazily, matching the MkDocs backend. [Unreleased]: https://git.aetoskia.com/aetos/doc-forge/compare/0.0.7...HEAD [0.0.7]: https://git.aetoskia.com/aetos/doc-forge/compare/0.0.6...0.0.7 diff --git a/docforge/servers/mcp_server.py b/docforge/servers/mcp_server.py index 1ee5688..0632328 100644 --- a/docforge/servers/mcp_server.py +++ b/docforge/servers/mcp_server.py @@ -23,8 +23,6 @@ import json from pathlib import Path from typing import Any, Literal -from mcp.server.fastmcp import FastMCP - class MCPServer: """ @@ -54,6 +52,8 @@ class MCPServer: name (str): Identifier used for the MCP server instance. """ + from mcp.server.fastmcp import FastMCP + self.mcp_root = mcp_root self.app = FastMCP(name) diff --git a/pyproject.toml b/pyproject.toml index 2699576..2cafe17 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -87,6 +87,7 @@ dev = [ "build>=1.0.0", "twine>=4.0.0", "pre-commit>=3.4.0", + "doc-forge[mkdocs,mcp]", ] docs = [ "doc-forge[mkdocs]",