Skip to content
Gram

Using Roo Code with Gram-hosted MCP servers

Roo Code is a VS Code extension that embeds autonomous coding agents directly in your editor. Once installed, the extension has full read-write access to your open workspace, letting you chat with the agent, generate code, run tests, and refactor files within your editor.

When paired with Model Context Protocol (MCP) servers, you can connect Roo Code to your APIs, databases, and infrastructure services, granting it contextual access to your tools and data.

This guide will show you how to connect Roo Code to a Gram-hosted MCP server using the example Push Advisor API from the Gram concepts guide. You’ll learn how to set up the connection, test it, and use natural language to perform vibe checks before you vibe code.

Find the full code and OpenAPI document in the Push Advisor API repository.

You’ll need:

If you already have a Gram MCP server configured, you can skip to connecting Roo Code to your Gram-hosted MCP server. For an in-depth guide to how Gram works and more details on creating a Gram-hosted MCP server, check out the Gram concepts guide.

In the Gram dashboard, click New Project to start the guided setup flow for creating a toolset and MCP server.

Screenshot of the Gram dashboard showing the New Project link

Enter a project name and click Submit.

Gram will then guide you through the following steps.

Upload the Push Advisor OpenAPI document, enter the name of your API, and click Continue.

Screenshot of the upload your OpenAPI spec dialog

Give your toolset a name (for example, “Push Advisor”) and click Continue.

Screenshot of the create toolset dialog

Notice that the names of the tools that will be generated from your OpenAPI document are displayed in this dialog.

Enter a URL slug for the MCP server and click Continue.

Screenshot of the configure MCP dialog

Gram will create the toolset from the OpenAPI document.

Click Toolsets in the sidebar to view the Push Advisor toolset.

Screenshot of the Gram dashboard showing the Push Advisor toolset

Environments store API keys and configuration separate from your toolset logic.

In the Environments tab, click the “Default” environment. Click Edit and then Fill for Toolset. Select the Push Advisor toolset and click Fill Variables to automatically populate the required variables.

Screenshot showing the fill for toolset dialog to automatically populate required variables

The Push Advisor API is hosted at canpushtoprod.abdulbaaridavids04.workers.dev, so set the <API_name>_SERVER_URL environment variable to https://canpushtoprod.abdulbaaridavids04.workers.dev. Click Update and then Save.

Screenshot showing setting the server URL environment variable

Let’s make the toolset available as an MCP server.

Go to the MCP tab, find the Push Advisor toolset, and click Edit.

On the MCP Details page, tick the Public checkbox and click Save.

Screenshot of the MCP details page

Scroll down to the MCP Config section and copy the Public Server configuration.

Screenshot showing the MCP server config dialog for the Push Advisor toolset

The configuration will look something like this:

{
"mcpServers": {
"GramPushadvisor": {
"command": "npx",
"args": [
"mcp-remote",
"https://app.getgram.ai/mcp/canipushtoprod"
]
}
}
}

Use the Authenticated Server configuration if you want to use the MCP server in a private environment.

You’ll need an API key to use an authenticated server. Generate an API key in the Settings tab and copy it to the GRAM_KEY environment variable in place of <your-key-here>.

The authenticated server configuration looks something like this:

{
"mcpServers": {
"GramPushadvisor": {
"command": "npx",
"args": [
"mcp-remote",
"https://app.getgram.ai/mcp/canipushtoprod",
"--header",
"Authorization: ${GRAM_KEY}"
],
"env": {
"GRAM_KEY": "Bearer <your-key-here>"
}
}
}
}

Here’s what these configuration options do:

  • "command" – The executable to run (in this case, npx).
  • "args" – Array of command-line arguments.
  • "env" – Environment variables for the server process (optional).
  • "timeout" – Request timeout in milliseconds (optional, defaults to 600,000ms).
  • "trust" – When true, bypasses all tool call confirmations (optional, defaults to false).

Connecting Roo Code to your Gram-hosted MCP server

Section titled “Connecting Roo Code to your Gram-hosted MCP server”

Now we’ll connect Roo Code to your newly created MCP server.

Roo Code uses an mcp_settings.json configuration file to manage MCP servers.

To add a server to Roo Code, click the Server icon at the top right of the Roo Code window.

Screenshot showing the Roo Code Edit Global MCP button

Click Edit Global MCP to open Roo Code’s global MCP server mcp_settings.json file.

Screenshot showing the Roo Code MCP server mcp_settings.json file

If you’re using a public server, add the following to the mcp_settings.json file:

{
"mcpServers": {
"GramPushadvisor": {
"command": "npx",
"args": [
"mcp-remote",
"https://app.getgram.ai/mcp/canipushtoprod"
]
}
}
}

If you’re using an authenticated server, add the following:

{
"mcpServers": {
"GramPushadvisor": {
"command": "npx",
"args": [
"mcp-remote",
"https://app.getgram.ai/mcp/canipushtoprod",
"--header",
"Authorization: ${GRAM_KEY}"
],
"env": {
"GRAM_KEY": "Bearer <your-key-here>"
}
}
}
}

Save the file, and your MCP server should show up in the Roo Code MCP server list.

Screenshot showing the Roo Code MCP server list

Now test the connection by running a vibe check.

Ask Roo Code a basic question like, “What’s the vibe today?”

Roo Code will use the vibe_check tool to check the current day. Before making the API call, it will ask for your permission to use the tool:

Screenshot showing Roo Code asking for permission to use the tool

You can approve the tool call once or select Auto-approve to always allow this tool and skip future confirmation prompts. Once approved, Roo Code will make the API call and respond with the vibe check results.

Let’s go through some common issues and how to fix them.

If Roo Code can’t find your server:

  • Check that the mcp_settings.json file is correct and matches the configuration from Gram.
  • Verify that the MCP server is listed in Roo Code’s server configuration panel.
  • Ensure the npx command is available (reinstall Node.js if needed).
  • Try restarting Roo Code after making configuration changes.

If you’re having trouble connecting to the MCP server:

  • Verify the MCP server URL is correct in your configuration.
  • Check that the API behind the MCP server is reachable from your machine.
  • Try restarting Roo Code after making configuration changes.

If you’re using an authenticated server and getting authentication errors:

  • Verify your Gram API key in the dashboard under Settings > API Keys.
  • Ensure the API key is correctly formatted with the Bearer prefix.
  • Check that the GRAM_KEY environment variable is properly set in your configuration.

If the tools aren’t showing up in Roo Code:

  • Test the MCP server in the Gram Playground first to ensure it’s working.
  • Check that the toolset includes the tools you expect to use.
  • Verify the environment is correctly configured with the required variables.
  • Look for any error messages in Roo Code’s output panel or logs.

Ready to build your own MCP server? Try Gram today and see how easy it is to turn any API into agent-ready tools that work across all your development environments.