Skip to content

Connect VS Code and Copilot to Folio

Let Copilot chat in VS Code read your team wiki and write to it. The config is a small mcp.json. VS Code asks for the token the first time and keeps it out of the file.

Sign-in: Token

Ask the wiki from the editor

Ask:

Search Folio for our incident response runbook and summarize the first three steps. Link the page.

In agent mode, Copilot calls search_pages and read_page, then answers with the steps and a link to the page.

Connect

What you need

  • VS Code with GitHub Copilot chat in agent mode.
  • A Folio token, created under the user menu, then API tokens.
  • On Copilot Business and Enterprise, an organization policy for MCP servers may be off by default. If the tools do not appear, ask your administrator.

Steps

  1. Step 1: Create .vscode/mcp.json in the workspace. The input asks for the token once and masks it.

    .vscode/mcp.json
    {
      "inputs": [
        {
          "type": "promptString",
          "id": "folio-token",
          "description": "Folio personal access token",
          "password": true
        }
      ],
      "servers": {
        "folio": {
          "type": "http",
          "url": "https://your-folio.example.com/mcp",
          "headers": { "Authorization": "Bearer ${input:folio-token}" }
        }
      }
    }
  2. Step 2: Start the server from the Start code lens above its entry in the file, or run MCP: List Servers from the Command Palette. Enter the token when VS Code asks.

  3. Step 3: Open Copilot chat, switch to agent mode and check that the Folio tools are in the tools list. Ask your question.

Try it against the demo

The demo does not issue personal tokens, so this route cannot be tried against it. Use your own Folio, or try the demo from Claude or ChatGPT.

What the agent can do

Folio exposes 23 tools over MCP. Full reference.

Reading (11)
Reading (11)What it does
list_spacesSpaces you can see, with your role in each
list_treeThe page tree of a space
search_pagesFull-text search across the pages you can open
read_pageA page as Markdown, with its metadata
resolve_folio_urlA Folio link to the page it points at
get_backlinksPages that link to a page
page_historyThe Git commits that touched a page
page_at_shaA page as it was at a given commit
folio_table_listData tables in a space
folio_table_schemaA table's real columns, types and options
folio_table_queryTable rows with filter, sort and search
searchThe same search under the name ChatGPT deep research looks for
fetchA page by the id that search returned, as Markdown
Writing (10)
Writing (10)What it does
create_pageA new document with text, or a table with columns
update_pageReplace the text of a page; merges with live editing
create_boardA whiteboard from a short description of boxes and arrows
update_boardReplace a whiteboard's scene
board_opsAlign, distribute, move or auto-layout board elements
folio_table_createA table with an explicit schema
folio_table_add_columnA new column
folio_table_insertNew rows
folio_table_updateCells, by row id or by filter
folio_table_deleteRows, by id
  • Reading needs the read scope. Writing needs write. With read only, every tool that changes something refuses to run.
  • All 23 tools carry read-only or destructive annotations, so a client can ask before it writes.
  • An agent cannot manage access rights, invite people, or rename and delete spaces. Those actions exist only in the browser.
  • A write reaches the page file at once. The Git commit follows after about 90 seconds of quiet, so page history can lag behind an edit.

Security

  • A personal access token carries the rights of the person who created it, narrowed by its scope. Give an agent its own Folio user with the editor role in the spaces it needs, and create the token there. Do not hand an agent an administrator's token.
  • Use a read token when the agent only answers questions.
  • The token is shown once. Keep it in an environment variable or the client's secret store, not in a file that goes to Git. Delete it under API tokens when you stop using it.
  • Administrative routes are cookie-only: no token reaches them with any scope.
  • Page content is data, not instructions. Folio's tool descriptions say so, but the real protection is rights. An agent that also has a shell and write access can be misled by a page someone else wrote, so give it the narrowest token that does the job.

Limits and honest notes

  • This page covers the token route. Use a token with VS Code.
  • A one-click install link is not offered here, because VS Code's documentation does not specify the link format.

Read more