Skip to main content

What is MCP?

Model Context Protocol (MCP) enables Firebender to connect to external tools and data sources.

Why use MCP?

MCP connects Firebender to external systems and data. Instead of explaining your project structure repeatedly, integrate directly with your tools. Write MCP servers in any language that can print to stdout or serve an HTTP endpoint: Python, JavaScript, Go, etc.

How it works

MCP servers expose capabilities through the protocol, connecting Firebender to external tools or data sources. Firebender supports three transport methods:
TransportExecution environmentDeploymentUsersInputAuth
stdioLocalFirebender managesSingle userShell commandManual
SSELocal/RemoteDeploy as serverMultiple usersURL to an SSE endpointOAuth
Streamable HTTPLocal/RemoteDeploy as serverMultiple usersURL to an HTTP endpointOAuth

Protocol support

Firebender supports these MCP protocol capabilities:
FeatureSupportDescription
ToolsSupportedFunctions for the AI model to execute

Installing MCP servers

One-click installation

Install MCP servers from our collection and authenticate with OAuth.

Using mcp.json

Configure custom MCP servers with a JSON file:
CLI Server - Node.js
{
  "mcpServers": {
    "server-name": {
      "command": "npx",
      "args": ["-y", "mcp-server"],
      "env": {
        "API_KEY": "value"
      }
    }
  }
}
CLI Server - Python
{
  "mcpServers": {
    "server-name": {
      "command": "python",
      "args": ["mcp-server.py"],
      "env": {
        "API_KEY": "value"
      }
    }
  }
}
Remote Server
{
  "mcpServers": {
    "server-name": {
      "url": "http://localhost:3000/mcp",
      "headers": {
        "API_KEY": "value"
      }
    }
  }
}

STDIO server configuration

For STDIO servers (local command-line servers), configure these fields in your mcp.json:
FieldRequiredDescriptionExamples
typeYesServer connection type"stdio"
commandYesCommand to start the server executable. Must be available on your system path or contain its full path."npx", "node", "python", "docker"
argsNoArray of arguments passed to the command["server.py", "--port", "3000"]
envNoEnvironment variables for the server{"API_KEY": "${env:api-key}"}
envFileNoPath to an environment file to load more variables".env", "${workspaceFolder}/.env"

Configuration locations

Project Configuration Create firebender.json in your project directory for project-specific tools. Global Configuration Create ~/.firebender/firebender.json in your home directory for tools available everywhere.

Config interpolation

Use environment variables in your configuration values. Firebender resolves variables in these fields: command, args, env, url, and headers. Supported syntax:
  • ${VAR_NAME} - Environment variable with braces
  • $VAR_NAME - Environment variable without braces
Examples:
Local Server
{
  "mcpServers": {
    "local-server": {
      "command": "python",
      "args": ["${WORKSPACE_PATH}/tools/mcp_server.py"],
      "env": {
        "API_KEY": "${API_KEY}"
      }
    }
  }
}
Remote Server
{
  "mcpServers": {
    "remote-server": {
      "url": "https://api.example.com/mcp",
      "headers": {
        "Authorization": "Bearer ${MY_SERVICE_TOKEN}"
      }
    }
  }
}

Authentication

MCP servers use environment variables for authentication. Pass API keys and tokens through the config. Firebender supports OAuth for servers that require it.

Using MCP in chat

Firebender Agent automatically uses MCP tools listed under Available Tools when relevant. Ask for a specific tool by name or describe what you need. Enable or disable tools from settings.

Toggling tools

Enable or disable MCP tools directly from the chat interface. Click a tool name in the tools list to toggle it. Disabled tools won’t be loaded into context or available to Agent. Toggle MCP tools

Tool response

Firebender shows the response in chat with expandable views of arguments and responses. MCP tool response

Images as context

MCP servers can return images: screenshots, diagrams, etc. Return them as base64 encoded strings. Firebender attaches returned images to the chat. If the model supports images, it analyzes them.

Deferred tool loading

By default, MCP tools load on-demand to save tokens. Only set deferLoading: false for orchestration MCPs that modify core agent behavior. Keep the default for service integrations (databases, APIs, monitoring). See the configuration reference for details.

Security considerations

When installing MCP servers, consider these security practices:
  • Verify the source: Only install MCP servers from trusted developers and repositories
  • Review permissions: Check what data and APIs the server will access
  • Limit API keys: Use restricted API keys with minimal required permissions
  • Audit code: For critical integrations, review the server’s source code
Remember that MCP servers can access external services and execute code on your behalf. Always understand what a server does before installation.

FAQ

MCP servers connect Firebender to external tools like Google Drive, Notion, and other services to bring docs and requirements into your coding workflow.
View MCP logs by clicking the plug icon in the chatbox and selecting “Open MCP Log”:Open MCP logsCheck for connection errors, authentication issues, or server crashes. The logs show server initialization, tool calls, and error messages.
Yes! Toggle servers on/off without removing them by clicking the plug icon in the chatbox to manage the servers. You can enable or disable any MCP server from the dropdown.Manage MCP serversDisabled servers won’t load or appear in chat. This is useful for troubleshooting or reducing tool clutter.
If an MCP server fails:
  • Firebender shows an error message in chat
  • The tool call is marked as failed
  • You can retry the operation or check logs for details
  • Other MCP servers continue working normally
Firebender isolates server failures to prevent one server from affecting others.
Yes, but follow security best practices:
  • Use environment variables for secrets, never hardcode them
  • Run sensitive servers locally with stdio transport
  • Limit API key permissions to minimum required
  • Review server code before connecting to sensitive systems
  • Consider running servers in isolated environments