mcpMCP Server Config

Use MCP servers to extend Tabnine CLI with extra tools and context providers. This page shows where MCP config lives and how scope and overrides work. It also covers tabnine mcp commands and runtime flags for selecting servers.

Configuring MCP for Tabnine CLI

Overview

The Tabnine CLI supports MCP (Model Context Protocol) servers, which allow you to extend the CLI's capabilities with additional tools and context providers. This guide explains how to configure and manage MCP servers.

Prerequisites

  • Tabnine CLI installed (available at ~/.local/bin/tabnine)

  • Node.js/npm (for npx-based MCP servers)

  • Python (for Python-based MCP servers, optional)

MCP Management Commands

Adding an MCP Server

Syntax:

tabnine mcp add <name> <commandOrUrl> [args...]

Parameters:

  • <name>: A unique identifier for your MCP server

  • <commandOrUrl>: The command to run the server or a URL to connect to it

  • [args...]: Optional arguments to pass to the server command

Other Management Commands

Common MCP Server Examples

Filesystem server (local)

GitHub server (local process)

Custom server (any command)

Using MCP Servers in Tabnine CLI

Running Tabnine with Specific MCP Servers

Once you've configured MCP servers, you can specify which ones to use when running Tabnine:

Using in Interactive Mode

Using in Non-Interactive Mode

Complete Workflow Example

Here's a complete example of setting up and using a filesystem MCP server:

Configuration Storage

MCP server configurations are stored in the Tabnine agent directory:

  • Location: ~/.tabnine/agent/

  • Settings file: ~/.tabnine/agent/settings.json

Additional Options

Auto-Approval Modes

When using MCP servers, you can control how tool calls are approved:

Allow Specific Tools

You can also allow specific tools to run without confirmation:

Troubleshooting

Check if MCP servers are configured

Debug mode

Verify Tabnine CLI version

Here are some popular MCP servers you might want to configure:

  1. @modelcontextprotocol/server-filesystem - File system access

  2. @modelcontextprotocol/server-github - GitHub integration

  3. @modelcontextprotocol/server-slack - Slack integration

  4. @modelcontextprotocol/server-postgres - PostgreSQL database access

  5. @modelcontextprotocol/server-memory - Persistent memory/notes

  6. @modelcontextprotocol/server-brave-search - Web search capabilities

  7. @modelcontextprotocol/server-google-maps - Google Maps integration

To explore more MCP servers, visit: https://github.com/modelcontextprotocolarrow-up-right

Best Practices

  1. Use descriptive names for your MCP servers (e.g., project-files, company-github)

  2. Enable only the servers you need to reduce overhead

  3. Use approval modes carefully - avoid --yolo mode unless you fully trust the operations

  4. Test servers individually before combining multiple servers

  5. Keep MCP server packages updated using npm update or pip install --upgrade

Last updated

Was this helpful?