Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
Let your AI assistant use your real, logged-in Firefox: tabs, pages, bookmarks, history.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"foxmcp": {
"command": "uvx",
"args": [
"foxmcp",
"--stdio"
]
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add foxmcp -- uvx foxmcp --stdio프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"foxmcp": {
"command": "uvx",
"args": [
"foxmcp",
"--stdio"
]
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"foxmcp": {
"type": "stdio",
"command": "uvx",
"args": [
"foxmcp",
"--stdio"
]
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 8일 점검
레지스트리 이름이 GitHub 계정 ThinkerYzu 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.7.0)은 오늘 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv)도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, Filesystem MCP
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Filesystem MCP server for AI assistants.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
*Prepare for a FoxMCP meeting with Claude Code: organize tabs, save the project pages, and clear away distractions.*
Connect an MCP-compatible AI assistant to Firefox. Manage tabs and windows, read pages, upload local files, organize bookmarks, search history, and inspect network requests.
FoxMCP has two parts: a Firefox extension and a local Python server. Your AI client talks to the server, which sends commands to the extension.
Privacy: Connected AI clients can access your browser data and run page scripts. Use trusted clients and consider a dedicated Firefox profile. See SECURITY.md for the threat model.
Version 1.7.0 is published on PyPI and GitHub. The 1.7.0 extension update is awaiting Mozilla review; Firefox Add-ons currently serves 1.6.0. See release status.
Upgrading: Update the server and extension together, restart shared workers, and refresh your client's tool schemas. Call profiles_list and pass its integer profile_id to every browser tool, even with one profile connected. Rediscover targets after reconnection. See release notes.
Both let an AI agent use Firefox. They suit different jobs.
Use FoxMCP to work in your own browser. It is an extension in the Firefox you already run, so the agent sees your open tabs, logged-in sites, bookmarks, history, and containers. Nothing needs a restart, and several agents can share the same Firefox.
Use [firefox-devtools-mcp](https://github.com/mozilla/firefox-devtools-mcp) to test or debug a web page. It starts its own Firefox, so the browser is clean and disposable. It offers console, network, debugger, and profiler tools, and it works with Firefox for Android.
| FoxMCP | firefox-devtools-mcp | |
|---|---|---|
| Browser | The Firefox you already use | Its own instance, started for the agent |
| Logins and cookies | Yours | Only what its own profile holds |
| Several agents at once | Yes, in one Firefox | One at a time per Firefox |
| Setup | Add the extension, then uvx foxmcp --stdio | npx @mozilla/firefox-devtools-mcp |
| Best at | Tabs, windows, bookmarks, history, containers, several profiles | Console, network, debugger, profiler, Android |
firefox-devtools-mcp can also attach to a Firefox that is already running (--connect-existing), but only one started with special remote-control flags. Plain Firefox needs a restart, or a second profile, first.
Sharing Firefox between agents. Start each client with uvx foxmcp --stdio --single-instance so they share one connection. FoxMCP does not lock tabs, so give each agent its own window to keep them from stepping on each other.
Mind the access. In your real session, a connected AI client can reach whatever you can. Use a trusted client, consider a dedicated Firefox profile, and read SECURITY.md.
You need Firefox, an MCP client, and uv. Your client starts FoxMCP with uvx foxmcp --stdio; uv manages the Python environment and downloads the package automatically. FoxMCP requires Python 3.10+.
Open FoxMCP on Firefox Add-ons and click Add to Firefox.
Use matching server and extension versions. Click the FoxMCP toolbar icon to see a mismatch warning with both versions inside the popup. No automatic dialog or notification opens. The server also logs a warning. Release-version differences are advisory when protocol IDs match; incompatible protocol IDs prevent the browser connection. Mozilla review can delay the Add-ons version after a GitHub release; to try a version awaiting approval, use the temporary add-on instructions.
For Claude Code:
claude mcp add foxmcp -- uvx foxmcp --stdio
For Codex:
codex mcp add foxmcp -- uvx foxmcp --stdio
For another MCP client, add a stdio server with command uvx and arguments ["foxmcp", "--stdio"].
Open your AI client so it starts the server. Click the FoxMCP toolbar icon in Firefox and check that it shows a connected status. The extension connects on WebSocket port 8765. If the first browser call arrives before Firefox reconnects, retry it.
For multiple clients or chats, add --single-instance after --stdio to share one browser connection. See stdio setup.
The packaged command includes and enables the example scripts. An explicit FOXMCP_EXT_SCRIPTS overrides them; an empty value disables scripts. To match a particular extension release, use uvx --from foxmcp==VERSION foxmcp --stdio, replacing VERSION with that release's version.
Ask your assistant to discover profiles and choose the intended one before performing browser actions. For example:
List the connected Firefox profiles and their windows/tabs.
Use the profile named Personal for the following task. If the name is ambiguous, show me the candidates first. List all open Firefox tabs in that profile. Open https://example.org in a new tab. Get the text from the current page. Take a screenshot of the current tab.
To target a particular tab, right-click it in Firefox's tab bar and choose Tab ID = … (click to copy). Paste the copied tab_id = … into your request. Tab IDs are local to their profile. The copied tab ID does not identify its profile; give the assistant that context too. Rediscover after Firefox restarts.
| Area | Capabilities |
|---|---|
| Profiles | Discover connected Firefox profiles and address browser calls explicitly |
| Tabs and groups | List, open, close, switch, reorder, move between windows, group and ungroup; take screenshots |
| Windows | Create, close, focus, resize, position, minimize and maximize |
| Page content | Read text or HTML, execute JavaScript, run predefined scripts, load local files for uploads |
| Navigation | Go to a URL, go back or forward, reload |
| Bookmarks | List, search, create, update, move and delete bookmarks and folders |
| History | Search, list recent visits and delete entries |
| Network | Monitor requests by URL pattern; inspect headers and captured text response bodies |
Native tab groups require Firefox 139+. Local file uploads use files readable by the Python server; see loading local files. See the API reference for tool names and parameters.
The GitHub installers create a local installation directory. On Linux/macOS, you need Python 3.10+, venv, bash, curl, unzip and sha256sum. On Debian/Ubuntu, install missing prerequisites with sudo apt install python3 python3-venv curl unzip coreutils.
For the GitHub archive installation, run this in a new directory where you want FoxMCP installed:
mkdir foxmcp && cd foxmcp
curl -fSL https://github.com/ThinkerYzu/foxmcp/releases/download/v1.7.0/install-from-github.sh | bash
The installer verifies the release archive checksums, creates venv/, installs Python dependencies, and creates start-foxmcp.sh. It also installs example scripts and a CLAUDE.md template, and offers to connect Claude Code.
For unattended setup, save the installer outside the target directory and run bash /path/to/install-from-github.sh --non-interactive from an empty directory.
Windows (PowerShell 5.1 or newer):\ Download both installer scripts into a separate folder, then run the installer from an empty installation folder.\ An empty folder has no installer yet, and the installer needs install-xpi.ps1 beside it.\ Keeping both outside the target also satisfies the unattended installer's empty-folder check.
Use separate commands below: PowerShell 5.1 cannot parse &&, which was added in PowerShell 7.
New-Item -ItemType Directory foxmcp-installer
$installerBase = 'https://github.com/ThinkerYzu/foxmcp/releases/download/v1.7.0' Invoke-WebRequest -UseBasicParsing "$installerBase/install-from-github.ps1" -OutFile foxmcp-installer/install-from-github.ps1 Invoke-WebRequest -UseBasicParsing "$installerBase/install-xpi.ps1" -OutFile foxmcp-installer/install-xpi.ps1 New-Item -ItemType Directory foxmcp Set-Location foxmcp & ..\foxmcp-installer\install-from-github.ps1 -NonInteractive
Keep the two scripts together and outside the installation folder. If you already have a source checkout, run its scripts/install-from-github.ps1 by absolute path from an empty folder instead. Omit -NonInteractive to enable interactive prompts. The installer creates venv/, installs Python dependencies, creates start-foxmcp.ps1, installs example scripts, and creates a CLAUDE.md template.
Use start-foxmcp.ps1 for a manually started HTTP server. For MCP stdio, configure the client to launch the installed venv\Scripts\python.exe with server\server.py --stdio as arguments, using absolute paths. Set FOXMCP_EXT_SCRIPTS to the installed predefined-scripts directory in the client environment to enable the examples. The PowerShell helper reports the direct Python command if invoked with --stdio.
Start the installed server manually with ./start-foxmcp.sh on Linux/macOS or .\start-foxmcp.ps1 in PowerShell, then use the HTTP setup below.
Start one server and leave it running:
uvx foxmcp
With a GitHub archive installation, use its startup script instead. The default ports are 8765 for the extension's WebSocket connection and 3000 for the MCP HTTP endpoint. Check the connected status in the Firefox extension popup.
Register the HTTP endpoint with Claude Code:
claude mcp add --transport http foxmcp http://localhost:3000/mcp/
Or with Codex:
codex mcp add foxmcp --url http://localhost:3000/mcp/
For another MCP client, add an HTTP server with URL http://localhost:3000/mcp/. If the GitHub installer already connected your client, skip registration.
You also need Git, make, and zip (on Debian/Ubuntu: sudo apt install git make zip).
git clone https://github.com/ThinkerYzu/foxmcp.git
cd foxmcp make install make package
Load the built extension in Firefox, then start the server with make run-server. Continue with HTTP setup above.
Use stdio with --single-instance to start the server automatically and share it across chats. Configure each client to launch venv/bin/python server/server.py --stdio --single-instance, using absolute paths. Clients discover and share the browser connection on the extension port. They join an existing server or start a background worker automatically. Closing one chat leaves the others connected. Automatic workers stop after 60 seconds without clients; manually started servers keep running. On Windows, use venv\Scripts\python.exe.
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요