{"record":{"id":"d46c1b8890231c08","repo":"xpipe-io/xpipe","slug":"no-connection-found-for-input-name","errorCode":null,"errorMessage":"No connection found for input \" + name","messagePattern":"No connection found for input \" \\+ name","errorType":"exception","errorClass":"BeaconClientException","httpStatus":400,"severity":"error","filePath":"app/src/main/java/io/xpipe/app/beacon/mcp/McpToolHandler.java","lineNumber":138,"sourceCode":"                throw new BeaconClientException(\"Invalid argument for key \" + key);\n            }\n\n            return b;\n        }\n\n        public FilePath getFilePath(ShellControl sc, String key) throws Exception {\n            var s = getStringArgument(key);\n            var path = FilePath.parse(s);\n            if (path == null) {\n                throw new BeaconClientException(\"Invalid argument for key \" + key);\n            }\n            return path.resolveTildeHome(sc.view().userHome());\n        }\n\n        public DataStoreEntryRef<?> getDataStoreRef(String name) throws BeaconClientException {\n            var found = DataStorageQuery.queryUserInput(name);\n            if (found.isEmpty()) {\n                throw new BeaconClientException(\"No connection found for input \" + name);\n            }\n\n            if (found.size() > 1) {\n                throw new BeaconClientException(\"Multiple connections found: \"\n                        + found.stream()\n                                .map(entry ->\n                                        DataStorage.get().getStorePath(entry).toString())\n                                .toList());\n            }\n\n            var e = found.getFirst();\n            return e.ref();\n        }\n\n        public DataStoreEntryRef<ShellStore> getShellStoreRef(String name, boolean mutation)\n                throws BeaconClientException {\n            var ref = getDataStoreRef(name);\n            var isShell = ref.getStore() instanceof ShellStore;","sourceCodeStart":120,"sourceCodeEnd":156,"githubUrl":"https://github.com/xpipe-io/xpipe/blob/d85ca821baa46092a320ebb13546d7240adb74f8/app/src/main/java/io/xpipe/app/beacon/mcp/McpToolHandler.java#L120-L156","documentation":"McpToolHandler.getDataStoreRef resolves a connection by user-supplied name via DataStorageQuery.queryUserInput and throws this BeaconClientException when the query returns no entries. The name did not match any stored connection in the XPipe data storage.","triggerScenarios":"Calling an MCP tool with a connection 'name'/'system' argument that matches zero connections: nonexistent connection, deleted connection, or a typo/different casing.","commonSituations":"Connection was renamed or removed after the tool call was authored; querying by display name when only a path fragment matches; working against a different data storage install (different machine/user profile) that lacks the connection.","solutions":["Check the exact connection name in the XPipe UI and use it verbatim in the tool call","List available connections first (e.g. via an MCP list/query tool) and pick a valid identifier","Recreate the connection if it was deleted, or point the call at an existing one","Catch BeaconClientException and prompt the user for a corrected connection name"],"exampleFix":"// before\nreq.getDataStoreRef(\"prod-db-1\") // connection does not exist\n// after\nreq.getDataStoreRef(\"Producers / prod-db\") // exact stored path","handlingStrategy":"validation","validationCode":"// validate before the tool call\nconst connections = await listConnections(); // e.g. via an MCP listing tool\nif (!connections.some(c => c.name === requestedName)) {\n  throw new Error(`connection '${requestedName}' not found; available: ${connections.map(c => c.name).join(', ')}`);\n}","typeGuard":null,"tryCatchPattern":"try { return tool.call({name}); } catch (BeaconClientException e) { if (e.message.startsWith('No connection found for input')) { /* re-list connections and retry with an exact name */ } throw e; }","preventionTips":["Resolve connection names from a live listing, not from memory or docs","Use the full store path shown in the XPipe UI for uniqueness","Re-verify names after renaming or deleting connections"],"tags":["mcp","connection-not-found","datastore"],"backgroundTag":"resource-not-found","analyzedSha":"d85ca821baa46092a320ebb13546d7240adb74f8","analyzedAt":"2026-09-06T14:30:08.251Z","contentChangedAt":"2026-09-06T14:30:08.251Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}