opencode_native_tools
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| EXA_API_KEY | No | API key for Exa web search provider. At least one of EXA_API_KEY or PARALLEL_API_KEY is required for websearch functionality. | |
| OPENCODE_CONFIG | No | Path to an OpenCode-compatible configuration file. | |
| PARALLEL_API_KEY | No | API key for Parallel web search provider. At least one of EXA_API_KEY or PARALLEL_API_KEY is required for websearch functionality. | |
| OPENCODE_CONFIG_DIR | No | Directory containing OpenCode-compatible configuration files. | |
| OPENCODE_TOOLS_ROOT | No | The project root directory for file operations. Defaults to the working directory of the MCP client process. | |
| OPENCODE_TOOLS_SHELL | No | Explicitly selects the shell to use (e.g., pwsh, powershell, git bash, cmd, bash). Overrides the default shell priority. | |
| OPENCODE_GIT_BASH_PATH | No | Path to the Git Bash executable, used when shell is Git Bash. | |
| OPENCODE_TOOLS_RG_PATH | No | Path to a ripgrep binary. If not set, the service downloads ripgrep to its own cache. | |
| OPENCODE_CONFIG_CONTENT | No | Inline content of an OpenCode-compatible configuration. | |
| OPENCODE_TOOLS_CACHE_DIR | No | Custom cache directory for ripgrep, formatters, URL skills, and shell output. | |
| OPENCODE_TOOLS_MODEL_NAME | No | Provides a model name for Parallel web search (adaptation of OpenCode internal model session context). | |
| OPENCODE_WEBSEARCH_PROVIDER | No | Overrides the web search provider (e.g., 'exa' or 'parallel'). | |
| OPENCODE_TOOLS_NPM_CACHE_DIR | No | Custom npm cache directory for downloading formatter tools. | |
| OPENCODE_DISABLE_PROJECT_CONFIG | No | If set, disables reading project-level OpenCode configuration. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| readA | Read a file or directory from the local filesystem. The filePath should be absolute. By default, returns up to 2000 lines starting at line 1. Use offset (1-indexed) and limit to read later sections. Lines are returned as : ; directories list entries with a trailing / for subdirectories. Lines longer than 2000 characters are truncated. Images and PDFs are returned as attachments. |
| globA | Fast file pattern matching for codebases of any size. Supports patterns such as /*.js and src//*.ts. Returns matching file paths. Use it to find files by name pattern. |
| grepA | Fast regular-expression content search for codebases of any size. The optional include parameter filters searched files, for example *.js or *.{ts,tsx}. Returns matching paths, line numbers, and matching lines. |
| writeA | Write a text file to the local filesystem. An existing file is overwritten. Prefer edit for an existing file when a targeted replacement is sufficient. |
| editA | Replace text in a file using OpenCode matching semantics. Preserve the exact indentation from read output, excluding its line-number prefix. The operation fails when oldString cannot be identified unambiguously; supply more context or use replaceAll to replace every occurrence. |
| apply_patchA | Apply an OpenCode patch document. Wrap one or more file operations in *** Begin Patch and *** End Patch. Use *** Add File, *** Delete File, or *** Update File headers. New lines in an added file must begin with +. Updates may include a *** Move to: path directive. |
| bashA | Execute a shell command. Set workdir instead of changing directories inside the command when possible. timeout is in milliseconds. Output is capped; complete truncated output is saved to a file. |
| webfetchA | Fetch content from a fully formed HTTP or HTTPS URL. format controls whether text, Markdown, or HTML is returned; Markdown is the default. This tool is read-only. |
| websearchA | Search the web through the configured Exa or Parallel provider. Query is required; numResults, livecrawl, type, and contextMaxCharacters are optional provider controls. |
| todowriteB | Create and maintain the structured task list for the current MCP session. Each item has content, status, and priority. |
| skillA | Load a discovered specialized skill. The output contains the skill instructions and references to files in the skill directory. The name must match a discovered skill. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ShiYioo/opencode_native_tools'
If you have feedback or need assistance with the MCP directory API, please join our Discord server