Skip to content

feat: page-building tools enabled, nr-llm 0.31.0, DeepWiki as a public MCP server - #221

Merged
CybotTM merged 2 commits into
mainfrom
feat/mcp-demo-server-and-page-draft
Aug 20, 2026
Merged

feat: page-building tools enabled, nr-llm 0.31.0, DeepWiki as a public MCP server#221
CybotTM merged 2 commits into
mainfrom
feat/mcp-demo-server-and-page-draft

Conversation

@CybotTM

@CybotTM CybotTM commented Aug 20, 2026

Copy link
Copy Markdown
Member

Follow-up to NEXT-153: the backend assistant is meant to build demo pages, and the MCP Servers module had nothing to show.

What

  • nr-llm 0.31.0, aliased v0.31.0 as v0.30.99 — the same bridge 64e63a7 removed once the 0.29 consumers had caught up: six installed extensions (nr-ai-search, nr-landingpage, nr-llm-compat, nr-mcp-agent, nr-repurpose, t3-cowriter) still require ^0.30. Drop the alias when they widen. 0.31.0 carries create_page_draft (ADR-180).
  • Seed: enables create_page_draft and create_content_element_draft in tx_nrllm_tool_state (section 8b, same defence as update_page_metadata), and adds DeepWiki (https://mcp.deepwiki.com/mcp) as a tx_nrllm_mcp_server row (section 8c): public, read-only, no credential, publicContent, requires_approval = 0 with the reasoning written next to it. Two new SEED-PROBLEM guards.
  • The DeepWiki connection needs the transport fix nr-llm #835, which merged after 0.31.0 was cut — until the next nr-llm release its connection test answers 406 (the seed comment says so). The catalogue import stays a one-time click in the MCP Servers module until nr-llm #836.

Verified

The seed statements and guards ran twice against a throwaway MariaDB 11 with the real nr-llm DDL: idempotent, guards silent with the rows present and firing (both lines) with the rows removed. composer validate --check-lock passes; lock resolved in the composer:2 image.

After deploy

  1. MCP Servers → DeepWiki → Import catalogue (once nr-llm with #835 is installed; before that, expect 406 on Test connection).
  2. Chat test under page 10011 "MBS Demo (fiktiv)": ask for a subpage with a text element → two approval cards → hidden page + hidden element.

Assisted by claude-code:claude-fable-5 — Session

The backend assistant is meant to build demo pages (NEXT-153). Two
tools do that in nr-llm: create_page_draft (0.31, ADR-180) and
create_content_element_draft (0.29, ADR-146), both hidden-only, both
approval-gated. Both ship disabled; the seed enables them the way it
enables update_page_metadata, with the same defence written next to
it. A state row for a tool the installed nr-llm does not know yet is
never read, so the rows are safe ahead of the bump.

The MCP Servers module had nothing to show. The seed adds DeepWiki
(https://mcp.deepwiki.com/mcp): public, read-only, no credential,
data class publicContent, requires_approval switched off by the seed
as the operator of this instance — nr-llm's own documentation says to
do that per server once its tools are known, and DeepWiki's three
read public documentation. Needs nr-llm >= 0.31 (ADR-181) to connect;
the catalogue import stays a one-time click in the module until
netresearch/t3x-nr-llm#836 lands.

Guards at the end of the seed report both rows missing.

Assisted-by: claude-code:claude-fable-5
Agent-Session: https://claude.ai/code/session_0124WZK5UoAM9oYQoSYF1Y8z
Agent-Host: 32116e
Signed-off-by: Sebastian Mendel <github@sebastianmendel.de>
0.31.0 carries create_page_draft (ADR-180), the tool the seed now
enables so the backend assistant can build the NEXT-153 demo pages.
Six installed extensions still require nr-llm ^0.30 (nr-ai-search,
nr-landingpage, nr-llm-compat, nr-mcp-agent, nr-repurpose,
t3-cowriter), so the same inline alias that bridged 0.30 over the
0.29 consumers (64e63a7 removed it once they had caught up) bridges
0.31 now: "v0.31.0 as v0.30.99". Drop the alias when the consumers
widen their constraint.

The DeepWiki MCP row waits for the transport fix (nr-llm #835) in
the next nr-llm release; until then its connection test answers 406,
which the seed comment says.

Assisted-by: claude-code:claude-fable-5
Agent-Session: https://claude.ai/code/session_0124WZK5UoAM9oYQoSYF1Y8z
Agent-Host: 32116e
Signed-off-by: Sebastian Mendel <github@sebastianmendel.de>
Copilot AI lite review requested due to automatic review settings August 20, 2026 12:18
@sonarqubecloud

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown
Contributor

Dependency Review

The following issues were found:
  • ✅ 0 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ⚠️ 1 package(s) with unknown licenses.
See the Details below.

License Issues

composer.lock

PackageVersionLicenseIssue Type
netresearch/nr-llm0.31.0NullUnknown License

OpenSSF Scorecard

PackageVersionScoreDetails
composer/netresearch/nr-llm 0.31.0 UnknownUnknown

Scanned Files

  • composer.lock

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@CybotTM

CybotTM commented Aug 20, 2026

Copy link
Copy Markdown
Member Author

Self-review: b020bf4

The review this pull request demands is unsatisfiable (Copilot quota wall or repeated bot failures on this head). Per the documented fallback, the diff on this head was reviewed by the PR author; this comment is the on-the-record attestation the merge gate reads back. It stops matching on the next push.

@CybotTM
CybotTM added this pull request to the merge queue Aug 20, 2026
Merged via the queue into main with commit dde3d6a Aug 20, 2026
20 of 21 checks passed
@CybotTM
CybotTM deleted the feat/mcp-demo-server-and-page-draft branch August 20, 2026 12:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants