As an example, say you are working on solving a new GitHub Issue. You type ‘@Issue’ and select the one you are working on. Continue can now see the issue title and contents. You also know that the issue is related to the files ‘readme.md’ and ‘helloNested.py’, so you type ‘@readme’ and ‘@hello’ to find and select them. Now these 3 “Context Items” are displayed inline with the rest of your input. Context Items

How Do Context Blocks Work?

You can add context providers to assistants using context blocks. Explore available context blocks in the hub.

Built-in Context Providers

You can add any built-in context-providers in your config file as shown below:

@File Context Provider – Reference Files in Your Workspace

Reference any file in your current workspace.
  • YAML
  • JSON
config.yaml
context:  - provider: file
config.json
{ "contextProviders": [{ "name": "file" }] }

@Code Context Provider – Reference Functions and Classes

Reference specific functions or classes from throughout your project.
  • YAML
  • JSON
config.yaml
context:  - provider: code
config.json
{ "contextProviders": [{ "name": "code" }] }

@Git Diff Context Provider – Reference Branch Changes

Reference all of the changes you’ve made to your current branch. This is useful if you want to summarize what you’ve done or ask for a general review of your work before committing.
  • YAML
  • JSON
config.yaml
context:  - provider: diff
config.json
{ "contextProviders": [{ "name": "diff" }] }

@Current File Context Provider – Reference the Active File

Reference the currently open file.
  • YAML
  • JSON
config.yaml
context:  - provider: currentFile
config.json
{ "contextProviders": [{ "name": "currentFile" }] }

@Terminal Context Provider – Reference Last Terminal Command and Output

Reference the last command you ran in your IDE’s terminal and its output.
  • YAML
  • JSON
config.yaml
context:  - provider: terminal
config.json
{ "contextProviders": [{ "name": "terminal" }] }

@Docs Context Provider – Reference Documentation Site Content

Reference the contents from any documentation site.
  • YAML
  • JSON
config.yaml
context:  - provider: docs
config.json
{ "contextProviders": [{ "name": "docs" }] }
Note that this will only enable the @Docs context provider. To use it, you need to add a documentation site to your config file. See the docs page for more information.

@Open Context Provider – Reference All Open Files or Pinned Files

Reference the contents of all of your open files. Set onlyPinned to true to only reference pinned files.
  • YAML
  • JSON
config.yaml
context:
  - provider: open
    params:
      onlyPinned: true
config.json
{ "contextProviders": [{ "name": "open", "params": { "onlyPinned": true } }] }

@Web Context Provider – Reference Relevant Web Pages

Reference relevant pages from across the web, automatically determined from your input. Optionally, set n to limit the number of results returned (default 6).
  • YAML
  • JSON
config.yaml
context:
  - provider: web
    params:
      n: 5
config.json
{ "contextProviders": [{ "name": "web", "params": { "n": 5 } }] }

@Codebase Context Provider – Reference Relevant Codebase Snippets

Reference the most relevant snippets from your codebase.
  • YAML
  • JSON
config.yaml
context:
  - provider: codebase
config.json
{ "contextProviders": [{ "name": "codebase" }] }
Read more about indexing and retrieval here.

@Folder Context Provider – Reference Code from a Specific Folder

Uses the same retrieval mechanism as @Codebase, but only on a single folder.
  • YAML
  • JSON
config.yaml
context:  - provider: folder
config.json
{ "contextProviders": [{ "name": "folder" }] }

@Search Context Provider – Reference Code Search Results

Reference the results of codebase search, just like the results you would get from VS Code search.
  • YAML
  • JSON
config.yaml
context:
  - provider: search
    params:
      maxResults: 100 # optional, defaults to 200
config.json
{  "contextProviders": [    {      "name": "search",      "params": {        "maxResults": 100 // optional, defaults to 200      }    }  ]}
This context provider is powered by ripgrep.

@Url Context Provider – Reference Content from a URL

Reference the markdown converted contents of a given URL.
  • YAML
  • JSON
config.yaml
context:
  - provider: url
config.json
{ "contextProviders": [{ "name": "url" }] }

@Clipboard Context Provider – Reference Clipboard Items

Reference recent clipboard items
  • YAML
  • JSON
config.yaml
context:
  - provider: clipboard
config.json
{ "contextProviders": [{ "name": "clipboard" }] }

@Tree Context Provider – Reference Workspace File Structure

Reference the structure of your current workspace.
  • YAML
  • JSON
config.yaml
context:
  - provider: tree
config.json
{ "contextProviders": [{ "name": "tree" }] }

@Problems Context Provider – Reference Problems in the Current File

Get Problems from the current file.
  • YAML
  • JSON
config.yaml
context:
  - provider: problems
config.json
{ "contextProviders": [{ "name": "problems" }] }

@Debugger Context Provider – Reference Debugger Local Variables

Reference the contents of the local variables in the debugger. Currently only available in VS Code.
  • YAML
  • JSON
config.yaml
context:
  - provider: debugger
    params:
      stackDepth: 3
config.json
{ "contextProviders": [{ "name": "debugger", "params": { "stackDepth": 3 } }] }
Uses the top n levels (defaulting to 3) of the call stack for that thread.

@Repository Map Context Provider – Reference Codebase Outline and Signatures

Reference the outline of your codebase. By default, signatures are included along with file in the repo map. includeSignatures params can be set to false to exclude signatures. This could be necessary for large codebases and/or to reduce context size significantly. Signatures will not be included if indexing is disabled.
  • YAML
  • JSON
config.yaml
context:
  - provider: repo-map
    params:
      includeSignatures: false # default true
config.json
{  "contextProviders": [    {      "name": "repo-map",      "params": {        "includeSignatures": false // default true      }    }  ]}
Provides a list of files and the call signatures of top-level classes, functions, and methods in those files. This helps the model better understand how a particular piece of code relates to the rest of the codebase. In the submenu that appears, you can select either Entire codebase, or specify a subfolder to generate the repository map from. This context provider is inspired by Aider’s repository map.

@Operating System Context Provider – Reference System Architecture and Platform

Reference the architecture and platform of your current operating system.
  • YAML
  • JSON
config.yaml
context:
  - provider: os
config.json
{ "contextProviders": [{ "name": "os" }] }

Using the Model Context Protocol (MCP) in Continue

The Model Context Protocol is a standard proposed by Anthropic to unify prompts, context, and tool use. Continue supports any MCP server with the MCP context provider. Read their quickstart to learn how to set up a local server and then set up your configuration like this:
  • YAML
  • JSON
config.yaml
mcpServers:
  - name: My MCP Server
    command: uvx
    args:
      - mcp-server-sqlite
      - --db-path
      - /Users/NAME/test.db
config.json
{
  "experimental": {
    "modelContextProtocolServers": [
      {
        "transport": {
          "type": "stdio",
          "command": "uvx",
          "args": ["mcp-server-sqlite", "--db-path", "/Users/NAME/test.db"]
        }
      }
    ]
  }
}
You’ll then be able to type ”@” and see “MCP” in the context providers dropdown.

How to Request a New Context Provider in Continue

Not seeing what you want? Create an issue here to request a new Context Provider.