lmstudio-connectors
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@lmstudio-connectors search for machine learning tutorials"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
LM Studio Connectors
Local MCP tools for LM Studio:
DuckDuckGo/metasearch through
ddgsWeb scraping and article extraction through
httpx+ Trafilaturayt-dlpmetadata, subtitles, audio, and video downloadsMFLUX 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 chromiumLM 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 mfluxRelated MCP server: webmcp
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 |
| Search the web and return ranked title/URL/snippet results. |
| Fetch a page and extract clean Markdown, text, JSON, or HTML. |
| Return metadata for a video or, when explicitly enabled, a playlist. |
| Save subtitles/transcripts and return cleaned text. |
| Download audio or video into the controlled output directory. |
| Generate an image by calling the local MFLUX CLI. |
| Read MFLUX metadata from a generated image. |
| Open a URL in a named Playwright CLI browser session. |
| Navigate the current Playwright CLI page. |
| Capture an accessibility snapshot with element refs. |
| Run safe CLI actions like click, fill, press, console, requests, and tabs. |
| Save screenshots or PDFs under |
| Close the named Playwright CLI session. |
| Report local Playwright CLI availability. |
| 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 closeLM 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 |
|
| Root for all generated files. |
|
| Allow localhost/private URLs when set to |
|
| HTTP fetch timeout in seconds. |
|
| Max web page bytes before extraction. |
|
| Default text returned to LM Studio. |
| auto-detect | Override MFLUX image generation binary. |
| 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.
Available Tools
15 toolsconnector_healthB
Report connector configuration and optional dependency availability.
Inputs: no named parameters. Returns: object
mflux_generateC
Generate an image by calling the local MFLUX CLI.
Inputs: prompt (required), seed, model, steps, +7 more. Returns: object
mflux_infoB
Read MFLUX metadata for a generated image.
Inputs: image_path (required). Returns: object
playwright_cli_actionC
Run a safe Playwright CLI action such as click, fill, press, console, requests, or tabs.
Inputs: command (required), args, session, max_chars, +1 more. Returns: object
playwright_cli_closeC
Close the current page/browser for a named Playwright CLI session.
Inputs: session, max_chars, timeout_seconds. Returns: object
playwright_cli_gotoC
Navigate the current Playwright CLI page to a public URL.
Inputs: url (required), session, max_chars, timeout_seconds. Returns: object
playwright_cli_healthB
Report local Playwright CLI availability.
Inputs: no named parameters. Returns: object
playwright_cli_openC
Open a public URL in a named Playwright CLI session.
Inputs: url (required), headed, browser, session, +3 more. Returns: object
playwright_cli_saveC
Save a screenshot or PDF from the current Playwright CLI page.
Inputs: ref, kind, session, filename, +2 more. Returns: object
playwright_cli_snapshotB
Capture an accessibility snapshot and element refs from the current page.
Inputs: ref, boxes, depth, session, +2 more. Returns: object
web_scrapeC
Fetch a page and extract clean Markdown, text, JSON, or HTML.
Inputs: url (required), max_chars, use_browser, include_links, +2 more. Returns: object
web_searchB
Search the web and return ranked title, URL, and snippet results.
Inputs: query (required), region, timelimit, safesearch, +1 more. Returns: object
yt_downloadC
Download audio or video into the controlled output directory.
Inputs: url (required), mode, quality, playlist. Returns: object
yt_infoB
Return yt-dlp metadata for a video or explicit playlist.
Inputs: url (required), playlist, max_entries. Returns: object
yt_subtitlesC
Download subtitles/transcripts when yt-dlp can access them.
Inputs: url (required), auto, languages, max_chars. Returns: object
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 15 tools
Each tool targets a distinct operation within its connector group, but playwright_cli_open and playwright_cli_goto both involve navigation and could be confused. The two health checks are also similar in purpose but for different subsystems.
All tools follow a snake_case pattern with a connector-specific prefix (web_, yt_, mflux_, playwright_cli_), but the suffix is a mix of verbs and nouns (e.g., yt_info vs yt_download), introducing minor inconsistency.
With 15 tools across several connectors, the count is within the ideal 3-15 range. Each connector has a minimal but useful set (web: 2, yt: 3, mflux: 2, playwright: 6, health: 2), so no tool feels unnecessary.
The server covers the main workflows for each connector: web search and scrape, YouTube metadata/subtitles/download, MFLUX generation and info, and Playwright browser automation with open/goto/snapshot/action/save/close. Some minor gaps exist, such as no YouTube search or no way to list Playwright sessions, but the core lifecycle is covered.
Maintenance
Related MCP Connectors
Unified 15-tool SEO, SERP, clean Markdown & GEO (LLM citation Share-of-Voice) MCP server.
Web search API and MCP server for developers building AI agents.
One MCP server for all web data. Scrape, search, crawl, and AI research in one install.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables tool-calling LLMs to search the internet, capture website images, extract webpage text, and more via a local MCP server.16-
- AlicenseNot gradedqualityCmaintenanceMCP server for web search and content extraction using DuckDuckGo or SearXNG, with Playwright-based fetching and LLM-powered data extraction.139MIT
- AlicenseNot gradedqualityDmaintenanceMCP server that provides web search scraping from DuckDuckGo (with Mojeek fallback) and URL content fetching as markdown/text or raw HTML.1ISC
- AlicenseNot gradedqualityDmaintenanceA fully local MCP server that provides web search via self-hosted SearXNG and page-to-markdown conversion (static and JS-rendered), all aggregated behind a single endpoint for use with AI assistants.MIT