lmstudio-connectors
Local MCP server providing web search, web scraping, YouTube metadata/subtitles/downloads, image generation (MFLUX on macOS), and Playwright CLI browser automation tools.
README
LM Studio Connectors
Local MCP tools for LM Studio:
- DuckDuckGo/metasearch through
ddgs - Web scraping and article extraction through
httpx+ Trafilatura yt-dlpmetadata, subtitles, audio, and video downloads- MFLUX image generation on macOS/Apple Silicon when MFLUX is installed
- Playwright CLI browser automation through
@playwright/cli
The project is intentionally one MCP server so LM Studio only needs one local entry.
Install
cd /absolute/path/to/LMStudioConnectors
python3 -m venv .venv
. .venv/bin/activate
python -m pip install -U pip
python -m pip install -e ".[dev,browser]"
python -m playwright install chromium
npm install
npx playwright install chromium
LM Studio should launch bin/lmstudio-connectors-mcp. The wrapper sets
PYTHONPATH explicitly and then starts the server from the project virtual
environment.
MFLUX is optional. Install it separately on the Mac that will generate images:
python -m pip install mflux
LM Studio mcp.json
Open LM Studio's MCP settings and add:
{
"mcpServers": {
"lmstudio-connectors": {
"command": "/absolute/path/to/LMStudioConnectors/bin/lmstudio-connectors-mcp",
"args": []
}
}
}
The same content is checked in at lmstudio.mcp.example.json.
If you install uv later, this entry also works:
{
"mcpServers": {
"lmstudio-connectors": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/LMStudioConnectors",
"run",
"lmstudio-connectors-mcp"
]
}
}
}
Tools
| Tool | Purpose |
|---|---|
web_search |
Search the web and return ranked title/URL/snippet results. |
web_scrape |
Fetch a page and extract clean Markdown, text, JSON, or HTML. |
yt_info |
Return metadata for a video or, when explicitly enabled, a playlist. |
yt_subtitles |
Save subtitles/transcripts and return cleaned text. |
yt_download |
Download audio or video into the controlled output directory. |
mflux_generate |
Generate an image by calling the local MFLUX CLI. |
mflux_info |
Read MFLUX metadata from a generated image. |
playwright_cli_open |
Open a URL in a named Playwright CLI browser session. |
playwright_cli_goto |
Navigate the current Playwright CLI page. |
playwright_cli_snapshot |
Capture an accessibility snapshot with element refs. |
playwright_cli_action |
Run safe CLI actions like click, fill, press, console, requests, and tabs. |
playwright_cli_save |
Save screenshots or PDFs under outputs/playwright-cli/. |
playwright_cli_close |
Close the named Playwright CLI session. |
playwright_cli_health |
Report local Playwright CLI availability. |
connector_health |
Report installed optional dependencies and output paths. |
Playwright CLI
This repo uses Microsoft's @playwright/cli package for the CLI-first browser
workflow. The wrapper is bin/playwright-cli, and it loads
.playwright/cli.config.json from the repo root.
Useful manual commands:
bin/playwright-cli --help
bin/playwright-cli open https://example.com
bin/playwright-cli snapshot --depth=4
bin/playwright-cli screenshot --filename=outputs/playwright-cli/example.png
bin/playwright-cli close
LM Studio can use the same CLI through the playwright_cli_* MCP tools exposed
by lmstudio-connectors.
Safety Defaults
- Tools only accept
httpandhttpsURLs. - Localhost, private IPs, loopback, multicast, link-local, and reserved networks are blocked unless
LMSTUDIO_CONNECTORS_ALLOW_PRIVATE_NET=1. - Files are written only under
outputs/orLMSTUDIO_CONNECTORS_OUTPUT_DIR. - yt-dlp playlists are disabled unless the tool call explicitly opts in.
- MFLUX command arguments are built from validated typed fields, not raw shell strings.
- Playwright CLI output is constrained to
outputs/playwright-cli/, and the MCP wrapper only exposes an allowlist of CLI commands/options.
Useful Environment Variables
| Variable | Default | Purpose |
|---|---|---|
LMSTUDIO_CONNECTORS_OUTPUT_DIR |
./outputs |
Root for all generated files. |
LMSTUDIO_CONNECTORS_ALLOW_PRIVATE_NET |
0 |
Allow localhost/private URLs when set to 1. |
LMSTUDIO_CONNECTORS_HTTP_TIMEOUT |
20 |
HTTP fetch timeout in seconds. |
LMSTUDIO_CONNECTORS_MAX_RESPONSE_BYTES |
5000000 |
Max web page bytes before extraction. |
LMSTUDIO_CONNECTORS_DEFAULT_MAX_CHARS |
12000 |
Default text returned to LM Studio. |
LMSTUDIO_CONNECTORS_MFLUX_BIN |
auto-detect | Override MFLUX image generation binary. |
LMSTUDIO_CONNECTORS_MFLUX_INFO_BIN |
auto-detect | Override MFLUX metadata binary. |
Top Next Integrations
- Playwright MCP for full browser interaction, login-dependent pages, and dynamic apps.
- Local document/PDF extraction for classroom handouts, Moodle exports, and PDFs.
- Strict-root filesystem search for local course and code folders.
- Local vector memory using LM Studio embeddings for durable notes and retrieved context.
- Moodle/local-service tools for the user's existing course workflows.
- Optional remote MCPs: Hugging Face, Notion, Linear, Atlassian, Sentry.
License
MIT. See LICENSE. Third-party Python and npm dependencies retain their own
licenses.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.