MCP Configuration
Model Context Protocol (MCP) connects your AI agent to external tools, APIs, and services. The Desktop App (Code Mode), VS Code Extension, and CLI all share a single MCP configuration file, so you only set things up once.
Config File Locations​
| Level | Path | Scope |
|---|---|---|
| User | ~/.abacusai/mcp.json | All projects for the current user |
| Project | ./.abacusai/mcp.json | Current project directory only |
Project-level config takes precedence when both exist. Servers from both levels are merged, with project-level winning on conflicts.
Format​
Each entry under mcpServers is a named server. There are two types:
- Local (stdio) - runs a command on your machine. Uses
command,args, and optionallyenv. - Remote (HTTP) - connects to a network endpoint. Uses
urland optionallyheaders.
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "<YOUR_KEY>"
}
},
"analytics-api": {
"url": "https://api.example.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}
Field Reference​
Local servers (stdio)
| Field | Type | Required | Description |
|---|---|---|---|
command | string | Yes | Executable to run (npx, python, node, etc.) |
args | string[] | Yes | Arguments passed to the command |
env | object | No | Environment variables (API keys, tokens) |
Remote servers (HTTP)
| Field | Type | Required | Description |
|---|---|---|---|
url | string | Yes | URL of the remote MCP server |
headers | object | No | HTTP headers for authentication |
Finding MCP Servers​
Browse available servers at:
Best Practices​
- Store tokens in
envorheadersrather than hardcoding them inargs. - Start with one or two servers. Too many tools can overwhelm the model context.
- For team projects, commit
.abacusai/mcp.jsonwith project-specific servers but leave secrets out — each developer supplies their own keys via user-level config. - Verify a server works by asking the agent a simple question that uses it.
Troubleshooting​
If a server isn't connecting:
- Check that the
commandorurlis correct. - Make sure required API keys/tokens are filled in (
envorheaders). - For local servers, confirm the command is in your PATH (
npx,node,python). - Validate the JSON — a missing comma or bracket is the most common issue.
For further help, reach out at support@abacus.ai.