Prerequisites
- VS Code or Cursor installed. The Python verification example also requires Python 3.
- An active Step Plan subscription with available quota and access to the selected model.
- An API key from the StepFun platform API keys page.
Install Kilo Code
Find Kilo Code in your editor’s extension marketplace and install it. The extension ID iskilocode.kilo-code. These steps use a version with Providers and Models settings pages.
Configure Step Plan
Connect the built-in provider
- Open Kilo Code settings, select
Providers, then chooseStepFun Step Plan (Global). - Enter your API key and click
Submit. Do not include aBearerprefix or leading or trailing spaces in the API Key field. - Under
Settings > Models > Default Model, select Step 5 Preview from that provider. Its model ID isstep-5-preview. - Save and start a new task. Keep the built-in provider’s model presets.
Use a custom provider
If the Step Plan preset or your target model is missing, openProviders > Custom provider and enter:
Click
Submit, then select the model under your custom provider. This configuration uses Chat Completions at /step_plan/v1/chat/completions.
Manually added models also need context and output capacity information. If these fields are missing, merge the following into kilo.json or kilo.jsonc, preserving the provider’s existing connection and authentication settings:
Connect StepSearch MCP
StepSearch providesweb_search and web_fetch through the Step Plan endpoint for web searches and page retrieval.
Set the authentication variable
Fully quit the editor, then set the key and start the editor from your project’s terminal. ReplaceYOUR_STEP_API_KEY with your key. For Cursor, replace code . with cursor ..
- macOS / Linux / WSL
- Windows PowerShell
STEP_API_KEY whenever you use this MCP server.
Add the MCP server
- Open
MCP Serversin Kilo Code settings. - Edit
kilo.jsonin the current project. If the project already useskilo.jsoncor one of these files under.kilo/, merge into that file instead, preserving other settings:
- Save and reconnect the server. Confirm that
step-searchis connected and listsweb_searchandweb_fetch. - Start a new task using either tool, approve the call when prompted, and inspect the returned result.
mcp key, type: "remote", and {env:STEP_API_KEY} for environment-variable substitution. Remote connections try Streamable HTTP first and fall back to SSE if needed. This example authenticates through a request header, not OAuth.
Verify the integration
Test a conversation
Start a new task and enterReply only with OK. Expected output: OK.
Test tool calls
- Create a separate test directory with a
README.mdcontainingKilo Code Step Plan test, then open it in the editor. - Start a new task and enter:
- Approve the required file operations and commands. Inspect the tool records, confirm that
hello.pyexists and printsHello, world!, and check thatREADME.mdis unchanged.
Check saved settings
Restart the editor, confirm that the provider and model selection are retained, and start another short conversation.Common questions
Q: What if the Step Plan provider or Step 5 Preview is missing?
Q: What if the Step Plan provider or Step 5 Preview is missing?
Update Kilo Code and check the provider list. Alternatively, open
Providers > Custom provider, select OpenAI Compatible, enter the Step Plan base URL, and add step-5-preview. Save and select the model under that custom provider.Q: What should I check after a Connection error or 401 response?
Q: What should I check after a Connection error or 401 response?
Inspect the full error, network connection, base URL, API key, and model permissions. Custom providers use
https://api.stepfun.ai/step_plan/v1. The key must be complete, valid, and associated with the account for this endpoint. Use the server response to distinguish authentication, model, and request-parameter failures.Q: Why is the response empty or truncated?
Q: Why is the response empty or truncated?
Check the stop reason and output budget. Reasoning may consume the budget before visible text is produced. Restore presets for a built-in model, or check capacity and request settings for a custom model, then adjust based on the actual error.
Q: Do I need the older Include max output tokens setting?
Q: Do I need the older Include max output tokens setting?
Include max output tokens and Max Output Tokens = -1 belong to an older interface, not the current built-in provider setup. Current custom models describe capacity with limit.context and limit.output. Use valid capacities for your model rather than copying -1 into limit.output.Q: How should I handle an older .kilocode/mcp.json configuration?
Q: How should I handle an older .kilocode/mcp.json configuration?
The current setup uses
mcp in kilo.json or kilo.jsonc. Migrate older mcpServers, streamable-http, and disabled fields to the current format, or keep a configuration matched to the older extension version. Do not mix the two schemas.Q: Why is step-search or its tool list missing?
Q: Why is step-search or its tool list missing?
Check that you edited the configuration file loaded by the current project, with
type: "remote" and enabled: true. Confirm that the editor process can read STEP_API_KEY and the header is Bearer {env:STEP_API_KEY}. Save, reconnect, and inspect the server log.Q: Why does the model reply without performing file or terminal operations?
Q: Why does the model reply without performing file or terminal operations?
Open the target project, select a mode that allows file changes, and check for pending tool approvals. Approve the required operations; enabling every auto-approval option is unnecessary.

