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
- enableMcp is enabled (see Configuration).
- mcpAllowedRedirectUris and mcpAllowedOrigins are not required. localhost, 127.0.0.1, and [::1] are always accepted regardless of these settings.
- Set mcpAllowHttp to 1 only if your TYPO3 URL uses plain HTTP. In production, the value remains 0.
- The backend group has enable_mcp_access and the required feature permissions (see Permissions & Scopes).
- Node.js version 18 or newer is installed. You do not need to install the Inspector itself; npx fetches it when needed.
- curl -sS [typo3-url]/aisuite-mcp/health returns 200 from this machine.
By default, the Inspector uses localhost:6274 for the interface and localhost:6277 for its internal proxy.
Start MCP Inspector
npx @modelcontextprotocol/inspector
Configure Connection
On the first start, the package is downloaded (approximately 30 MB). The output then displays the URL of the interface, usually localhost:6274, and opens it in the default browser.
2. Configure the connection. In the left panel, select Transport Type Streamable HTTP, enter [typo3-url]/aisuite-mcp as the URL, and set the authentication method to OAuth 2.1. The exact label depends on the Inspector version.
3. Complete OAuth. After Connect, the Inspector registers itself at [typo3-url]/aisuite-mcp/oauth/register and opens the authorization page in a new tab. There, complete the TYPO3 backend login and grant consent to the scopes. The browser redirects back to localhost:6274/oauth/callback, the Inspector exchanges the code for an access token, and stores it in the browser's localStorage. The connection indicator changes to Connected, and the Tools, Resources, and Prompts tabs become available.
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 Connect, and nothing appears in the TYPO3 log. The server cannot be reached from your computer, or DNS or TLS is failing 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 trusted by 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 in which npx @modelcontextprotocol/inspector is running displays requests and responses at debug level; the browser console adds client-side errors. The OAuth credentials and tokens are stored in the localStorage of the localhost:6274 origin. Closing a tab does not make them disappear; deleting the site data does. Further client-independent cases are collected under Connect clients.