Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
69b2210
feat(cli): configure MCP natively across coding agents
Max17190 Aug 12, 2026
a07d01c
fix(cli): detect Hermes Agent by config directory only
Max17190 Aug 12, 2026
2c61608
feat(cli): drop Zed from MCP setup and show every agent in the picker
Max17190 Aug 12, 2026
7214d42
feat(cli): drop Windsurf from MCP setup
Max17190 Aug 12, 2026
0a93728
fix(cli): correct config-writing edge cases found in review
Max17190 Aug 12, 2026
cef79d6
fix(cli): keep skills-only agents from failing setup, and settle the …
Max17190 Aug 12, 2026
2585071
fix(cli): keep MCP setup global-only and keyless for stored launcher …
Max17190 Aug 12, 2026
0c999bd
fix(cli): one stored-key rule, accurate agent aliases, no repo config…
Max17190 Aug 12, 2026
aed6b66
fix(cli): close the remaining review findings on MCP setup
Max17190 Aug 13, 2026
4e2fda2
fix(cli): keep an escaped quote from ending a TOML multi-line string
Max17190 Aug 13, 2026
09675bf
feat(cli): configure Hermes Agent through the shared MCP engine
Max17190 Aug 13, 2026
9c2e06a
fix(cli): preserve YAML file details the document tree drops
Max17190 Aug 13, 2026
2a97b76
feat(cli): install the Firecrawl rule for OpenClaw
Max17190 Aug 13, 2026
5a90be0
feat(cli): add the browser sign-in lane to setup mcp
Max17190 Aug 13, 2026
52e9843
fix(cli): keep user content and report rules accurately
Max17190 Aug 13, 2026
47e116b
fix(cli): keep credentials off the sign-in endpoint
Max17190 Aug 13, 2026
9d65072
refactor(cli): write MCP config only for agents that share one contract
Max17190 Aug 14, 2026
b11d3c7
fix(cli): check the auth modes before any early return, drop the unus…
Max17190 Aug 14, 2026
4ea2d2b
docs(readme): fold the MCP setup changes into the existing prose
Max17190 Aug 14, 2026
d7cef7e
fix(cli): never leave a rule without the server it points at
Max17190 Aug 14, 2026
bf3a02b
fix(cli): keep the unwritten agents reported when a writer fails
Max17190 Aug 14, 2026
381f8d2
fix(cli): keep launch and the agent flags honest about what MCP setup…
Max17190 Aug 14, 2026
7007415
fix(cli): indent the unwritten-agent lines with the rest of quiet output
Max17190 Aug 14, 2026
2453c66
Revert "write MCP config only for agents that share one contract"
Max17190 Aug 14, 2026
54c14c6
fix(cli): ask about rules for --agent all, launchers, and openclaw
Max17190 Aug 14, 2026
8f99e79
fix(cli): skip OpenClaw rules when MCP fails and close restored launc…
Max17190 Aug 14, 2026
b5910e7
fix(cli): print a sign-in step only where an agent needs one
Max17190 Aug 14, 2026
682ccb7
fix(cli): drop the rules line for agents that have no rules mechanism
Max17190 Aug 14, 2026
b489e62
fix(cli): stop init from advertising MCP setup it just ran
Max17190 Aug 14, 2026
dc33fee
fix(cli): tell quiet callers when only some agents were configured
Max17190 Aug 14, 2026
8662b95
fix(cli): say when requested rules cannot be installed
Max17190 Aug 14, 2026
ec22426
fix(cli): stop native MCP setup from writing unusable agent config
Max17190 Aug 14, 2026
6f7af77
fix(cli): keep setup --yes and doctor honest when MCP is optional
Max17190 Aug 14, 2026
f0b9ce4
fix(cli): edit only Firecrawl's own tables when rewriting Codex config
Max17190 Aug 14, 2026
09a5138
fix(cli): install MCP into the agents the user has, not all of them
Max17190 Aug 15, 2026
08d9f7d
fix(cli): never override a web_search the user set, and confirm befor…
Max17190 Aug 18, 2026
77521ec
feat(cli): offer the web-provider handover from setup mcp instead of …
Max17190 Aug 18, 2026
0f83a95
fix(cli): raise the aggregate MCP failure after the web-provider step
Max17190 Aug 18, 2026
5c08fec
fix(cli): stop the web-provider step corrupting configs it edits
Max17190 Aug 18, 2026
755a8a8
test(cli): align setup bundle after rebase
Max17190 Aug 31, 2026
55ece3b
fix(cli): preserve codex config byte order mark
Max17190 Sep 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ pnpm-debug.log*
# IDE
.vscode/
.idea/
.cursor/
*.swp
*.swo
*~
Expand Down
36 changes: 35 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,12 +93,46 @@ firecrawl setup build
firecrawl setup workflows
Comment thread
cubic-dev-ai[bot] marked this conversation as resolved.
```

To install the Firecrawl MCP server into your editors (Cursor, Claude Code, VS Code, etc.):
To install the Firecrawl MCP server into your coding agents:

```bash
firecrawl setup mcp
```

This detects which agents you have installed, lists those in a picker
(already selected), and writes the server into each one you choose. Supported
agents are Claude Code, Cursor, VS Code, Codex, OpenCode, Hermes Agent, and
OpenClaw.

Setup writes to your global agent settings, so one command puts Firecrawl on
every agent you already use. Pass agent flags to skip the picker, or `-y` to
configure every detected agent:

```bash
firecrawl setup mcp --claude --cursor # skip the picker
firecrawl setup mcp -y # every detected agent
firecrawl setup mcp -y --defaults # ...and hand over native web tools
```

Connecting the server does not stop an agent reaching for its own web tools
first. Claude Code and Codex each document a way to turn those off, so setup
offers that as a second step: it prints the exact line it would add to each
config and asks before writing anything. A value you already set is reported
and left alone rather than replaced, and `--no-defaults` skips the step. `-y`
skips it too unless you pass `--defaults`.

Rerun the command any time to update an existing setup or add another agent; it
edits only the Firecrawl entry and leaves the rest of each config alone.

Your API key is never written into an agent config. When `FIRECRAWL_API_KEY` is
exported in the environment your agents run under, each agent gets a reference
to that variable in the syntax it understands. Otherwise setup stays keyless,
which still serves search, scrape, and parse under an anonymous rate limit. Use
`--keyless` to force the anonymous path even when a key is available, or
`--oauth` to sign in from the agent instead. Sign-in writes a different
endpoint, so each agent runs the browser flow itself on first use and setup
prints the step it needs. Pass either `--oauth` or `--keyless`, not both.

To make Firecrawl the default web provider for supported AI agents:

```bash
Expand Down
2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,8 @@
"@inquirer/prompts": "^8.2.1",
"commander": "^14.0.2",
"firecrawl": "4.24.0",
"jsonc-parser": "3.3.1",
"toml-eslint-parser": "^0.12.0",
"yaml": "^2.9.0",
"zod-to-json-schema": "3.24.6"
}
Expand Down
25 changes: 25 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading