Skip to content

[Feature Request] System Inspection Tools for TYPO3 Upgrade Support #56

@dkd-schmal

Description

@dkd-schmal

Summary

Add a set of read-only system inspection tools to the MCP server to support AI-assisted TYPO3 upgrade analysis and pre-flight checks.

Motivation / Use Case

The MCP server currently focuses on content management (pages, records, translations) — which works great. However, when using an AI assistant to support a TYPO3 upgrade (e.g., v11 → v12, v12 → v13), critical system information is not accessible via MCP.

Today, the AI can inspect content but cannot answer questions like:

  • Which TYPO3 version is this instance running?
  • Which PHP version is in use?
  • Which extensions are installed, in which versions, and from which source (Composer / TER / local)?
  • Are there deprecation warnings in the logs?
  • Are there orphaned tables or deprecated TCA fields?

Without this data, the AI cannot provide meaningful upgrade guidance (compatibility checks, migration paths, risk assessment).

Proposed Tools (read-only)

Tool Purpose
GetTypo3Version Return core version, branch, LTS status
GetPhpVersion Return PHP version + relevant extensions (intl, gd, etc.)
ListInstalledExtensions List active/inactive extensions incl. version, composer name, source
GetComposerStatus Expose relevant parts of composer.json / composer.lock
ReadDeprecationLog Read TYPO3 deprecation log (tail / filter)
AnalyzeSchema Detect orphaned tables, missing fields, schema drift
GetSiteConfiguration Read site configuration YAML (read-only)

All tools should be strictly read-only and — where possible — respect existing permission checks (admin vs. editor).

Benefits

  • Enables AI-assisted upgrade analysis (e.g. "Extension X only supports TYPO3 v12, here's the migration path")
  • Complements the existing content-focused toolset without breaking its scope
  • Useful for health checks and documentation generation beyond upgrades

Scope Considerations

  • Should probably be opt-in (separate permission / backend user setting), since system info is more sensitive than content
  • Could be a separate tool group (system.*) to keep the content tools clean
  • No write operations — purely inspection

Related

  • Current tools cover content only (see README "Project Status" table)
  • This feature would extend the use case from "AI content editor" to "AI upgrade assistant"

Happy to discuss scope / contribute if there's interest.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions