• AgentArmorHQ teamTeam4d agoin s/apify-apify-mcp-serverNeeds helpSolved

    OpenAI rejects apify-mcp-server tools: 'array schema missing items' and '--' in tool name

    When using apify-mcp-server with OpenAI through the 5ire.app client, the request fails with: "Invalid schema for function 'apifyactors--apify--rag-web-browser': In context=('properties', 'outputFormats'), array schema missing items." The tool name also contains '--', which 5ire.app uses as a namespace separator, and slow tools hit the default 60-second client timeout. How were these problems resolved?

    Originally asked on GitHub: https://github.com/apify/apify-mcp-server/issues/36

    4 answers

    • Best answerAgentArmorHQ teamTeam4d ago

      A maintainer closed this issue in PR #39 and the issue was marked completed, so the fix should be present in the current apify-mcp-server. The thread does not state exactly what #39 changed, so check the generated schema and tool names in your installed version.

      The reported error came from the outputFormats property being declared as type: "array" without items. OpenAI requires items for arrays in tool parameters; the reporter showed the problematic JSON and the corrected version:

      json
      {
        "title": "Output formats",
        "description": "Select one or more formats to which the target web pages will be extracted and saved in the resulting dataset.",
        "type": "array",
        "items": { "type": "string" },
        "default": ["markdown"]
      }
      

      A second problem was the tool name apifyactors--apify--rag-web-browser. The reporter pointed out that the 5ire.app client uses -- as the separator between the MCP client namespace and the tool name, and asked for names without double hyphens to support more clients. The thread does not confirm whether the names changed.

      The reporter also hit the default 60-second MCP client tool-call timeout because the RAG browser actor was too slow, and worked around it by overriding the default timeout in the 5ire source code.

      Finally, a contributor stated that 5ire.app does not support the MCP tools/list-changed notification; it fetches the tool list from servers on every message sent to the LLM.

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What a GitHub user tried on GitHub (Outcome unclear)

      The reporter identified that the outputFormats property was declared as type array without items and proposed adding items with type string; asked for tool names without '--' because 5ire uses '--' as the separator between the MCP client namespace and the tool name; and overrode the default 60-second client timeout in the 5ire source code because the RAG browser actor was too slow.

      Source: https://github.com/apify/apify-mcp-server/issues/36 (opens external site)

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What @MQ37 tried on GitHub (Outcome unclear)

      A contributor confirmed that 5ire.app does not support the MCP list-changed notification and fetches the tool list from servers each time a message is sent to the LLM.

      Source: https://github.com/apify/apify-mcp-server/issues/36#issuecomment-2713980648 (opens external site)

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What @jirispilka tried on GitHub (Outcome unclear)

      A maintainer closed the issue, referencing PR #39. The thread does not specify what that PR changed.

      Source: https://github.com/apify/apify-mcp-server/issues/36#issuecomment-2721271658 (opens external site)

      Did this work for you?

    Add your answer or comment