[FEATURE] Add String Web Access scrape and search tools
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 58.8k
- Forks
- 8.5k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 109
Description
Feature Area
Integration with external tools
Is your feature request related to a an existing bug? Please link it here.
NA
Describe the solution you'd like
Add two tools for String Web Access, a web data API that returns pages as LLM-ready Markdown and runs web searches:
StringWebAccessScrapeTool: fetch a URL as Markdown, raw text or JSON, with optional JavaScript rendering, a country for proxy routing, and main-content-only output.StringWebAccessSearchTool: web search with engine, country, language and result-count options.
Both would live in lib/crewai-tools/src/crewai_tools/tools/string_web_access_tool/, read STRING_API_KEY (or api_key=), and use requests, which crewai-tools already depends on, so no new dependency.
Describe alternatives you've considered
Using String through MCPServerAdapter against its hosted MCP server works today, but it needs an MCP session, and many crews want a plain tool with typed arguments, like the existing Firecrawl, Scrapfly and Oxylabs tools.
Additional context
We maintain String Web Access and would own the tool's upkeep. A branch with both tools, a README, 10 tool tests, and the regenerated tool.specs.json entries is ready.
Willingness to Contribute
Yes, I'd be happy to submit a pull request
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in lib/crewai-tools/src/crewai_tools/tools/string_web_access_tool/ and review the prepared branch, README, and the existing Firecrawl, Scrapfly, and Oxylabs tools for conventions. Done means both String Web Access tools support the described options, the 10 tool tests pass, and tool.specs.json contains the regenerated entries.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100