Command Palette

Search for a command to run...

Home / Servers

llm-mcp-client

Updated 1mo ago

by simonw

llm-mcp-client

PyPI Changelog Tests License

Access tools from MCP servers as LLM tools

Installation

Install this plugin in the same environment as LLM.

llm install llm-mcp-client

Usage

This plugin registers a toolbox called MCP which connects to an MCP server, discovers the tools it exposes and makes them available as LLM tools.

Pass the URL of an MCP server to the toolbox:

llm -T 'MCP("https://example.com/mcp")' 'Ask something that needs a tool' --td

The --td option shows details of the tool calls as they execute.

It works in llm chat too:

llm chat -T 'MCP("https://example.com/mcp")'

Templates

You can save an MCP to a named LLM template like this:

llm -T 'MCP("https://datasette.simonwillison.net/-/mcp")' --save blog

Now you can query it without specifying the full tool definition like this:

llm -t blog 'count entries and notes'

Protocol modes

By default the client negotiates the protocol automatically. You can force a specific mode with the mode= argument:

# Force modern stateless MCP:
llm -T 'MCP("https://example.com/mcp", mode="stateless")' '...'
# Force the legacy initialize handshake:
llm -T 'MCP("https://example.com/mcp", mode="legacy")' '...'

Tool name prefixes

If you are using tools from more than one server and their names might clash, give each server a prefix:

llm -T 'MCP("https://one.example.com/mcp", prefix="one_")' \
    -T 'MCP("https://two.example.com/mcp", prefix="two_")' '...'

Python API

import llm
from llm_mcp_client import MCP

model = llm.get_model("gpt-4.1-mini")
result = model.chain(
    "Ask something that needs a tool",
    tools=[MCP("https://example.com/mcp")],
).text()

Tool results containing MCP image or audio content are returned to the model as LLM attachments. An MCP error result raises llm_mcp_client.MCPToolError, which LLM passes back to the model as an error message.

Development

To set up this plugin locally, first checkout the code. Then run the tests with uv:

cd llm-mcp-client
uv run pytest

To run LLM with your in-development plugin:

uv run llm --help

Related servers

n8n

Updated today

by n8n-io

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

204,501

mcp-server-fetch

OfficialUpdated 14d ago

by modelcontextprotocol

A Model Context Protocol server providing tools to fetch and convert web content for usage by LLMs

90,371

@modelcontextprotocol/server-everything

OfficialUpdated 14d ago

by modelcontextprotocol

MCP server that exercises all the features of the MCP protocol

90,371

mcp-server-git

OfficialUpdated 14d ago

by modelcontextprotocol

A Model Context Protocol server providing tools to read, search, and manipulate Git repositories programmatically via LLMs

90,371