harness.tools adds built-in tools for one invocation. Its value is a comma-separated string of tool names, such as "web_search,web_fetch". It does not accept tool objects, function arguments, or Python import paths
Version and scope
This page describes AgentKit CLI 0.54.0 with its default VeADK 1.0.8 dependency. This version exposes 13 tools by name, listed below. Every entry is an individual tool, not a toolset containing multiple tools Request-leveltools is available on non-shared-OAuth Harness deployments through POST /harness/invoke and POST /run_sse requests carrying a harness configuration. Shared OAuth Harness deployments do not expose general request-level tool, model, or prompt overrides. These fields cannot add temporary tools to those deployments. The deployment’s TOOLS configuration defines its base tools. If it is unset or empty, none of the tools on this page are loaded by name
Supported names depend on the VeADK version installed on the server. For custom images or manually upgraded dependencies, check the actual runtime before using a name
Supported tools
A registered name does not mean its cloud service, credentials, or sandbox is ready. Configure the environment variables below on the Harness server, not inside the HTTP request’stools field
To read PDFs, include
pypdf in the Harness deployment dependencies and rebuild the image. Ordinary web-page extraction does not require this PDF parser
Search and sandbox credentials
Volcengine search prefersTOOL_WEB_SEARCH_ACCESS_KEY and TOOL_WEB_SEARCH_SECRET_KEY. It can also use VOLCENGINE_ACCESS_KEY and VOLCENGINE_SECRET_KEY, or the runtime’s execution-role credentials
For BytePlus search, set CLOUD_PROVIDER=byteplus and BYTEPLUS_WEB_SEARCH_API_KEY. In VeADK 1.0.8, web_search still requires resolvable AK/SK or execution-role credentials. Set BytePlus AK/SK through BYTEPLUS_ACCESS_KEY and BYTEPLUS_SECRET_KEY. Do not assume that parallel_web_search also supports BytePlus search
run_code and coding require permission to invoke the target sandbox. Use the runtime’s execution role or the appropriate cloud provider’s AK/SK. Configure the sandbox region with AGENTKIT_TOOL_REGION. With CLOUD_PROVIDER=byteplus, the default region is ap-southeast-1; the Volcengine default is cn-beijing
Images, video, and speech
When no dedicated API key is configured, image generation, image editing, and video generation reuseMODEL_AGENT_API_KEY or VeADK’s default model credentials. A valid tool name does not grant access to its generation model. The API URL, model name, and credentials must identify a compatible service. Uploading image results to TOS additionally requires DATABASE_TOS_BUCKET and valid TOS access credentials
Set the speech voice with TOOL_VESPEECH_SPEAKER, which defaults to zh_female_vv_uranus_bigtts. Set the audio output directory with TOOL_VESPEECH_AUDIO_OUTPUT_PATH; by default, it uses the server’s temporary directory. The returned file path is not a public download URL
Input and merge behavior
Request-level
tools adds tools; it does not replace or clear deployment tools, and it does not persistently change the deployment configuration. A missing Python dependency or credential required during initialization also causes that tool to be skipped with a warning. Tools that load successfully can still fail during execution because of credentials, permissions, or external services
tools selects the tools available to the agent. The agent supplies search queries, image tasks, code, and other tool arguments when calling a tool; these are not objects inside harness.tools. Making a tool available does not guarantee that the agent calls it on every request
The following request adds two tools that do not require cloud service credentials to one invocation of a non-shared-OAuth Harness. The service still needs a working reasoning-model configuration
MCP and skills
Names of MCP tools, skills, or arbitrary Python functions cannot be used directly in
tools. Skill references such as clawhub/owner/skill, ss-..., and ss-...:s-... belong in skills, not the built-in tool list
The VeADK 1.0.8 name list does not include video_task_query, ppt_generate, bash_toolset, or run_sandbox_agent. Availability through another VeADK interface does not make a capability loadable by the same name through this Harness field
Check the actual runtime
Run the following command inside the Python environment or container used by Harness to inspect its installed version and supported names. Running it in a different environment on your computer does not verify the deployed tool listlist_builtin_tools() lists names supported by the installed version. It does not validate cloud permissions, credentials, or sandbox availability. If an expected tool is missing, check the version, name, and server-side loading warnings, then verify the tool’s runtime requirements