Skip to main content
Roo Code is a coding agent for editors such as VS Code and Cursor, with file editing, terminal commands, and multi-step tool use. Its OpenAI Compatible provider connects to Step Plan through the Chat Completions API.

Prerequisites

Install Roo Code

Find Roo Code in your editor’s extension marketplace and check that its extension ID is RooVeterinaryInc.roo-cline. These settings apply to Roo Code 3.54.0. The upstream repository is archived, so check compatibility with your editor version.

Configure Step Plan

Configure the connection

  1. Open the Roo Code panel and select Providers in settings.
  2. Select OpenAI Compatible under API Provider and enter:
Roo Code appends /chat/completions, producing /step_plan/v1/chat/completions. Keep the base URL ending at /step_plan/v1 rather than using the standard pay-as-you-go API address. Roo Code 3.54.0 requires OpenAI-native tool calling and has no XML fallback. Select a model that supports function calling, such as Step 5 Preview, used below.

Check model settings

Expand Model Configuration and set the capabilities for Step 5 Preview: Version 3.54.0 sends max_completion_tokens when Include max output tokens is enabled. Disable that option for this configuration rather than changing the token value alone. If you set an output limit, leave enough room for reasoning and visible text. Match the context window and input capabilities to the selected model when switching. Save the settings and start a new task.

Connect StepSearch MCP

StepSearch provides web_search and web_fetch through the Step Plan endpoint. Add it when you need web searches or page retrieval.
  1. Open MCP Servers in the Roo Code panel and choose to edit the global MCP configuration.
  2. Merge the following entry, preserving other servers. Replace YOUR_STEP_API_KEY with your key:
  1. Save and reconnect the server. Confirm that step-search is connected and lists web_search and web_fetch.
  2. Start a task using either tool, approve the call when prompted, and inspect the returned result.
Roo Code requires an explicit type for URL-based MCP configurations. Use streamable-http, not Cline’s streamableHttp. With alwaysAllow: [], approve each tool call when prompted. The MCP configuration stores the API key in plain text. Do not commit or share a file containing a real key.

Verify the integration

Test a conversation

Start a new task and enter Reply only with OK. Expected output: OK.

Test a repair

  1. Create a separate test directory with the two files below. The addition function in calc.py intentionally contains a bug.
calc.py:
test_calc.py:
  1. Open the directory in your editor, select Code mode to allow file changes, and send Roo Code this task:
  1. Approve the required file operations and commands. Confirm that calc.py now adds correctly, the test reports OK, and test_calc.py is unchanged.
Manual approval is sufficient; enabling every auto-approval option is unnecessary.

Check saved settings

Restart the editor, confirm that the provider and model selection are retained, and start another short conversation.

Common questions

Check the extension-host log for Could not find ripgrep binary. In VS Code, run Developer: Open Logs Folder from the command palette and open the current window’s exthost/exthost.log. Use the ripgrep workaround below only when that error is present. Otherwise, inspect the actual network, authentication, or request error.
Version 3.54.0 does not search the ripgrep-universal layout used by some newer VS Code versions. Changing the workspace or user configuration directory does not change the editor installation path that Roo searches.For VS Code on macOS, the following temporary workaround adds a symbolic link inside the application installation. It detects Apple Silicon or Intel and refuses to overwrite an existing target. If the source binary is missing or the installation directory is not writable, stop rather than rerunning with elevated privileges.
Run Developer: Reload Window afterward and start the task again. This command targets the stated VS Code installation on macOS; check the actual installation paths for Cursor or other systems. Editor updates may remove the link, so check again if the same log error returns.
Check the network connection, base URL, API key, and model permissions. Use https://api.stepfun.ai/step_plan/v1 and a complete, valid key from the account for that endpoint. The model connection’s API Key field takes the raw key, while the MCP Authorization header requires a Bearer prefix.
Reasoning may produce no visible text until it completes. If the request finishes without text, inspect the stop reason, errors, and output settings. Confirm that Include max output tokens is disabled. If you set a budget deliberately, a small value may be exhausted by reasoning before visible output begins.
Select a mode such as Code that allows task execution, open the target directory, and approve the required operations. The model must support OpenAI-native tool calling. Check the model ID and full error after a tool failure, and use tool records to verify execution rather than relying on the model’s description.
Check that the entry is under mcpServers, type is streamable-http, disabled is false, and the authorization header contains the complete key with a Bearer prefix. Save, reconnect, and inspect the network and server logs. Distinguish authentication, connectivity, and transport failures before attributing a timeout to the client version.