Fosowl/agenticSeek · warning · ValueError

No output to interpret.

Error message

No output to interpret.

What it means

McpFinder.interpreter_feedback is a formatting helper that turns raw MCP search output into a prompt block. It raises ValueError('No output to interpret.') when given an empty or falsy string, failing fast instead of emitting a meaningless 'The following MCPs were found:' block.

Source

Thrown at sources/tools/mcpFinder.py:109

                output += f"Usage name: {mcp_infos['qualifiedName']}\n"
                output += f"Tools: {mcp_infos['tools']}"
                output += "\n-------\n"
        return output.strip()

    def execution_failure_check(self, output: str) -> bool:
        output = output.strip().lower()
        if not output:
            return True
        if "error" in output or "not found" in output:
            return True
        return False

    def interpreter_feedback(self, output: str) -> str:
        """
        Not really needed for this tool (use return of execute() directly)
        """
        if not output:
            raise ValueError("No output to interpret.")
        return f"""
            The following MCPs were found:
            {output}
            """

if __name__ == "__main__":
    api_key = os.getenv("MCP_FINDER")
    tool = MCP_finder(api_key)
    result = tool.execute(["""
stock
"""], False)
    print(result)

View on GitHub (pinned to ae57a23577)

Solutions

  1. Check the search output before calling: only invoke interpreter_feedback with a non-empty string
  2. Handle the no-results case separately (user-facing 'no MCPs found' message)
  3. If results should exist, debug the upstream execute()/search call for network or query issues

Example fix

// before
result = finder.execute(query)
print(finder.interpreter_feedback(result))
// after
result = finder.execute(query)
if result:
    print(finder.interpreter_feedback(result))
else:
    print('No MCPs found for:', query)
Defensive patterns

Strategy: validation

Validate before calling

if not output or not isinstance(output, str):
    return 'No MCPs found for this query.'
formatted = finder.interpreter_feedback(output)

Type guard

def has_mcp_output(output) -> bool:
    return isinstance(output, str) and len(output.strip()) > 0

Try / catch

try:
    prompt = finder.interpreter_feedback(result)
except ValueError:
    prompt = 'No MCPs were found for the given query.'

Prevention

When it happens

Trigger: Calling finder.interpreter_feedback(output) with output='' or output=None — typically when the preceding search/execute step returned nothing (no MCPs matched the query) and its result is piped straight into this method.

Common situations: Query with no matching MCP servers in the registry; network/API hiccup making execute() return empty; scripting that ignores the empty case before calling interpreter_feedback.

Related errors


AI-assisted analysis of Fosowl/agenticSeek@ae57a23577 (2026-08-30). Data as JSON: /api/errors/79abe1a30380b426. Report an issue: GitHub.