Skip to content

Proposal: optional authenticated MCP web-evidence workflow (Baizhi) #685

Description

@ct-jaryn

Disclosure: this is a vendor-affiliated proposal for Baizhi Cloud. I would like to check whether a small, optional DevAll 2.0 workflow is within the project's contribution scope.

For users who already have a Baizhi account, the proposed workflow would collect public web evidence and produce a short, source-linked comparison or fact-check. The current deep_research_v1.yaml uses the in-repo web functions, whose search and page-reading implementations use Serper and Jina. This would be an alternative using the user's existing Baizhi credentials, rather than a replacement for that workflow or a new vendor-specific Python provider.

The proposed addition is yaml_instance/web_evidence_baizhi.yaml, with short English and Chinese setup instructions:

  • An evidence-collection agent actually binds remote MCP tools for search, page reading and structured extraction. It should retain source URLs, distinguish quoted page evidence from inference, and report unavailable information instead of inventing it.
  • A separate review agent checks the collected evidence and produces the final answer; it does not need another remote tool binding.
  • The YAML contains environment-variable references only. Selecting and launching this workflow is optional; existing workflows remain usable without a Baizhi key.

The connection fragment for the collection agent would reuse the existing implementation:

tooling:
  - type: mcp_remote
    prefix: baizhi
    config:
      server: https://agent-toolkit.app.baizhi.cloud/mcp
      headers:
        Authorization: Bearer ${BAIZHI_API_KEY}
      timeout: 30

The public integration documentation documents Streamable HTTP/Bearer authentication and websearch_search, web_scrape, and web_extract. Actual argument schemas would come from MCP discovery. A least-privilege key should be configured by the operator, outside the committed workflow. This is not a claim that prompts restrict server-side permissions.

A Baizhi account and the user's own key are required; calls may consume paid credits. Tool arguments go to the hosted service and returned evidence may go to the configured model. The public repository contains integration materials, not the hosted backend source. The proposed example is for public, non-sensitive research inputs.

I have statically traced the current main configuration interpolation, Streamable HTTP headers, tool discovery/call and result handling, and the workflow-list/Launch entry. I have not run a ChatDev host/GUI or live Baizhi/model test. Before any implementation PR, verification would need to cover the actual host with a synthetic MCP service, missing/invalid credentials, errors and cleanup, and inspect logs/artifacts for credential exposure. No compatibility or production-success claim is intended at this stage.

Would this optional, credential-specific workflow be useful and acceptable in yaml_instance/, or would you prefer another contribution location? I would also welcome guidance on the expected validation for such a workflow. I noted the functional naming guidance in #555, the requirement for real crawling/tool execution in #561, and the preference for reusing generic abstractions in #594; the proposal follows those boundaries.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions