diff --git a/pkgs/development/python-modules/django-mcp-server/default.nix b/pkgs/development/python-modules/django-mcp-server/default.nix new file mode 100644 index 000000000000..c97b4e37bb04 --- /dev/null +++ b/pkgs/development/python-modules/django-mcp-server/default.nix @@ -0,0 +1,55 @@ +{ + lib, + fetchFromGitHub, + buildPythonPackage, + django, + djangorestframework, + inflection, + mcp, + uritemplate, + poetry-core, + pytestCheckHook, + pytest, + httpx, + asgiref, + anyio, +}: + +buildPythonPackage rec { + pname = "django-mcp-server"; + version = "0.5.4"; + pyproject = true; + + src = fetchFromGitHub { + owner = "omarbenhamid"; + repo = "django-mcp-server"; + tag = "v${version}"; + hash = "sha256-MaJq+NCfYuNyvDhz5oZ3po5+XkJeE1qSOwcaqJfJl+o="; + }; + + build-system = [ poetry-core ]; + + dependencies = [ + django + djangorestframework + inflection + mcp + uritemplate + ]; + + postFixup = '' + export PYTHONPATH="$PWD/examples:$PYTHONPATH" + export DJANGO_SETTINGS_MODULE=mcpexample.mcpexample.settings + ''; + + pythonImportsCheck = "mcp_server"; + + doCheck = false; # Needs to run both test server and client simultaneously + + meta = { + description = "Django MCP Server implementation"; + homepage = "https://github.com/omarbenhamid/django-mcp-server"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ mrmebelman ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 95f3fe42791a..a067aa7bf69a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3871,6 +3871,8 @@ self: super: with self; { django-markup = callPackage ../development/python-modules/django-markup { }; + django-mcp-server = callPackage ../development/python-modules/django-mcp-server { }; + django-mdeditor = callPackage ../development/python-modules/django-mdeditor { }; django-mfa3 = callPackage ../development/python-modules/django-mfa3 { };