MCP Inspector
The MCP Inspector is the official debugging tool for MCP servers, a small browser-based interface that is started on demand via npx. It is the fastest way to manually test the MCP server without an intermediary language model. You call tools with self-built arguments and see the raw JSON-RPC traffic in both directions.
The inspector runs locally, the connection comes from your computer. Therefore, the MCP server does not need to be publicly accessible. localhost, *.ddev.site, internal DNS names, and self-signed certificates work as long as your operating system trusts the CA.
Requirements
enableMcpis enabled (see Configuration).mcpAllowedRedirectUrisandmcpAllowedOriginsare not required.localhost,127.0.0.1, and[:]are always accepted regardless of these settings.mcpAllowHttpshould only be set to1if your TYPO3 URL is pure HTTP. In production, the value remains0.- The backend group has
enable_mcp_accessand the required feature rights (see Permissions & Scopes). - Node.js version 18 or newer is installed. You do not need to install the inspector itself;
npxfetches it as needed. curl -sS [typo3-url]/aisuite-mcp/healthreturns200from this computer.
By default, the inspector occupies localhost for the interface and localhost for its internal proxy.
Start MCP Inspector
npx @modelcontextprotocol/inspector
Configure Connection
On the first start, the package is downloaded (about 30 MB). After that, the output names the URL of the interface, usually localhost, and opens it in the default browser.
2. Configure connection. In the left area, select Transport Type Streamable HTTP, enter the URL [typo3-url]/aisuite-mcp, and set authentication to OAuth 2.1. The exact designation depends on the inspector version.
3. Complete OAuth. After Connect, the inspector registers at [typo3-url]/aisuite-mcp/oauth/register and opens the authorization page in a new tab. There, follow the TYPO3 backend login and consent to the scopes. The browser redirects to localhost/oauth/callback, the inspector exchanges the code for an access token and stores it in the browser's localStorage. The connection display changes to Connected, and the tabs Tools, Resources, and Prompts become usable.
Manually Call Tools
The actual benefit of the inspector lies in calling tools directly with self-built JSON arguments, without a language model. The right area shows the raw JSON-RPC request and response for each call. This allows for quick identification of schema deviations and permission issues.
A good starting order is:
| Tool | Arguments | Expected Result |
|---|---|---|
readServerInfo | none | JSON with the versions of TYPO3, AI Suite, and MCP |
listTables | none | List of tables accessible to the backend user |
readPageTree | { "rootPageId": 0, "depth": 2 } | Nested JSON of the page tree |
If readServerInfo does not go through, the problem lies with the connection or permissions and not with the respective tool.
Troubleshooting
Nothing happens when clicking on Connect, and nothing is logged in TYPO3. The server is not reachable from your computer, or DNS or TLS fails locally. Check with curl [typo3-url]/aisuite-mcp/health from the same computer; for self-signed certificates, run mkcert -install.
The browser reports a certificate problem during the redirect. The CA of the TYPO3 host is not known to the browser. Trust the CA at the operating system level and restart the browser. A curl -k does not help here; browsers are stricter with OAuth redirects.
The terminal where npx @modelcontextprotocol/inspector runs outputs requests and responses at the debug level, while the browser console adds client-side errors. The OAuth credentials and tokens are stored in the localStorage of the origin localhost. Closing a tab does not lose them, but deleting the site data does. Other client-independent cases are collected under Connecting Clients.