Describe the Bug
The firecrawl_search MCP tool schema does not expose all documented public /v2/search request fields.
Checked against firecrawl/firecrawl-mcp-server origin/main at 400072e.
Current firecrawl_search schema exposes:
{
query: string;
limit?: number;
tbs?: string;
filter?: string;
location?: string;
sources?: Array<{ type: "web" | "images" | "news" }>;
scrapeOptions?: ...;
enterprise?: Array<"default" | "anon" | "zdr">;
}
The public /v2/search API also documents:
{
categories?: Array<"github" | "research" | "pdf" | { type: "github" | "research" | "pdf" }>;
country?: string;
timeout?: number;
ignoreInvalidURLs?: boolean;
}
These fields are not currently available through the MCP tool schema.
To Reproduce
- Configure the Firecrawl MCP server.
- Inspect the
firecrawl_search tool schema.
- Try to call
firecrawl_search with documented /v2/search fields such as:
{
"query": "machine learning",
"categories": ["research"],
"limit": 5
}
or:
{
"query": "restaurants",
"country": "DE",
"location": "Germany",
"limit": 5
}
or:
{
"query": "Firecrawl docs",
"timeout": 30000,
"ignoreInvalidURLs": true,
"limit": 5
}
- These fields are not accepted by the current MCP tool schema.
Expected Behavior
The MCP firecrawl_search tool should expose the documented /v2/search request fields.
Expected schema shape:
{
query: string;
limit?: number;
sources?: Array<
| "web"
| "images"
| "news"
| { type: "web" | "images" | "news" }
>;
categories?: Array<
| "github"
| "research"
| "pdf"
| { type: "github" | "research" | "pdf" }
>;
tbs?: string;
location?: string;
country?: string;
timeout?: number;
ignoreInvalidURLs?: boolean;
filter?: string;
enterprise?: Array<"default" | "anon" | "zdr">;
scrapeOptions?: ...;
}
The implementation should forward accepted MCP fields to /v2/search.
Screenshots
Not applicable.
Environment
- Repository:
firecrawl/firecrawl-mcp-server
- Ref checked:
origin/main at 400072e
- Package version on main:
3.13.0
- Published npm latest checked:
firecrawl-mcp@3.11.0
- Node.js Version: Not version-specific; schema/source inspection. Local verification used Node v25.2.1.
Logs
Not applicable.
Additional Context
The current README Search example includes country:
{
"name": "firecrawl_search",
"arguments": {
"query": "latest AI research papers 2023",
"limit": 5,
"country": "us",
"sources": [
{ "type": "web" },
{ "type": "images" },
{ "type": "news" }
]
}
}
But country is not present in the actual MCP tool schema.
The public /v2/search docs also document categories, country, timeout, and ignoreInvalidURLs.
The MCP implementation currently calls the Node SDK client.search(). The SDK currently does not forward enterprise, country, or expose the full Search response metadata.
Related SDK issues:
Describe the Bug
The
firecrawl_searchMCP tool schema does not expose all documented public/v2/searchrequest fields.Checked against
firecrawl/firecrawl-mcp-serverorigin/mainat400072e.Current
firecrawl_searchschema exposes:The public
/v2/searchAPI also documents:These fields are not currently available through the MCP tool schema.
To Reproduce
firecrawl_searchtool schema.firecrawl_searchwith documented/v2/searchfields such as:{ "query": "machine learning", "categories": ["research"], "limit": 5 }or:
{ "query": "restaurants", "country": "DE", "location": "Germany", "limit": 5 }or:
{ "query": "Firecrawl docs", "timeout": 30000, "ignoreInvalidURLs": true, "limit": 5 }Expected Behavior
The MCP
firecrawl_searchtool should expose the documented/v2/searchrequest fields.Expected schema shape:
The implementation should forward accepted MCP fields to
/v2/search.Screenshots
Not applicable.
Environment
firecrawl/firecrawl-mcp-serverorigin/mainat400072e3.13.0firecrawl-mcp@3.11.0Logs
Not applicable.
Additional Context
The current README Search example includes
country:{ "name": "firecrawl_search", "arguments": { "query": "latest AI research papers 2023", "limit": 5, "country": "us", "sources": [ { "type": "web" }, { "type": "images" }, { "type": "news" } ] } }But
countryis not present in the actual MCP tool schema.The public
/v2/searchdocs also documentcategories,country,timeout, andignoreInvalidURLs.The MCP implementation currently calls the Node SDK
client.search(). The SDK currently does not forwardenterprise,country, or expose the full Search response metadata.Related SDK issues: