Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
6ff2255
feat: implementing the first tool
daveomri Mar 18, 2026
5f01fa3
chore: renamed platform integration tag
daveomri Mar 18, 2026
c685127
feat: updading apify tool docs
daveomri Mar 19, 2026
4deefa8
feat: update Apify tool dependencies and enhance documentation
daveomri Mar 20, 2026
dd2d6fd
feat: add task execution tools to Apify integration and create unit t…
daveomri Mar 20, 2026
f823eae
feat: edit docs for apify tools
daveomri Mar 20, 2026
bcf0950
feat: enhance Apify tool with validation methods and default parameters
daveomri Mar 23, 2026
d15a337
feat: create validation tests
daveomri Mar 23, 2026
2d8bfbe
feat: standardize terminology in apify tool documentation and code
daveomri Mar 24, 2026
1ef943d
feat: refactor Apify tools into core module and update docs
daveomri Mar 25, 2026
ff2494e
feat: refactor the tool, use one file only
daveomri Mar 25, 2026
cb7f9e5
feat: add new search and crawling tool to Apify integration
daveomri Mar 25, 2026
488a168
docs: add missing tools parameters
daveomri Mar 26, 2026
04e8fd3
Merge branch 'feat/strands-core-apify-tools' into feat/strands-search…
daveomri Mar 26, 2026
46daa97
docs: keep most important tools in readme
daveomri Apr 2, 2026
19500c7
feat: update crawler type constants in Apify tool
daveomri Apr 2, 2026
4405ebe
feat: use Literal for crawler types in Apify tool
daveomri Apr 2, 2026
ab930ad
feat: add comment for tracking header
daveomri Apr 2, 2026
b07d7c1
feat: add error handling for missing actor run data and dataset in Ap…
daveomri Apr 2, 2026
30412f7
feat: add unit tests for new tools guarding
daveomri Apr 2, 2026
4732185
fix: ensure explicit empty input is correctly passed to Apify actor
daveomri Apr 2, 2026
b1a792c
fix: add error status message for None
daveomri Apr 2, 2026
593dda7
Merge branch 'feat/strands-core-apify-tools' into feat/strands-search…
daveomri Apr 2, 2026
ab0d675
docs: removed redundant tools mentioned from readme
daveomri Apr 2, 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
57 changes: 57 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,9 @@ Below is a comprehensive table of all available tools, how to use them with an a
| Tool | Agent Usage | Use Case |
|------|-------------|----------|
| a2a_client | `provider = A2AClientToolProvider(known_agent_urls=["http://localhost:9000"]); agent = Agent(tools=provider.tools)` | Discover and communicate with A2A-compliant agents, send messages between agents |
| apify_run_actor | `agent.tool.apify_run_actor(actor_id="apify/website-content-crawler", run_input={"startUrls": [{"url": "https://example.com"}]})` | Run any Apify Actor with arbitrary input |
| apify_scrape_url | `agent.tool.apify_scrape_url(url="https://example.com")` | Scrape a URL and return its content as markdown |
| apify_google_search_scraper | `agent.tool.apify_google_search_scraper(search_query="best AI frameworks")` | Search Google and return structured results |
| file_read | `agent.tool.file_read(path="path/to/file.txt")` | Reading configuration files, parsing code files, loading datasets |
| file_write | `agent.tool.file_write(path="path/to/file.txt", content="file content")` | Writing results to files, creating new files, saving output data |
| editor | `agent.tool.editor(command="view", path="path/to/file.py")` | Advanced file operations like syntax highlighting, pattern replacement, and multi-file edits |
Expand Down Expand Up @@ -960,6 +963,54 @@ result = agent.tool.mongodb_memory(
)
```

### Apify

```python
from strands import Agent
from strands_tools.apify import APIFY_ALL_TOOLS

agent = Agent(tools=APIFY_ALL_TOOLS)

# Scrape a single URL and get markdown content
content = agent.tool.apify_scrape_url(url="https://example.com")

# Run an Actor and get results in one step
result = agent.tool.apify_run_actor_and_get_dataset(
actor_id="apify/website-content-crawler",
run_input={"startUrls": [{"url": "https://example.com"}]},
dataset_items_limit=50,
)

# Run a saved task (pre-configured Actor with default inputs)
run_info = agent.tool.apify_run_task(task_id="user/my-task")

# Run a task and get results in one step
result = agent.tool.apify_run_task_and_get_dataset(
task_id="user/my-task",
task_input={"query": "override default input"},
dataset_items_limit=50,
)

# Run an Actor (get metadata only)
run_info = agent.tool.apify_run_actor(
actor_id="apify/google-search-scraper",
run_input={"queries": "AI agent frameworks"},
)

# Fetch dataset items separately
items = agent.tool.apify_get_dataset_items(
dataset_id="abc123",
limit=100,
)

# Search Google
results = agent.tool.apify_google_search_scraper(
search_query="best AI frameworks 2025",
results_limit=10,
)

```

## 🌍 Environment Variables Configuration

Agents Tools provides extensive customization through environment variables. This allows you to configure tool behavior without modifying code, making it ideal for different environments (development, testing, production).
Expand Down Expand Up @@ -1068,6 +1119,12 @@ The Mem0 Memory Tool supports three different backend configurations:
- If `NEPTUNE_ANALYTICS_GRAPH_IDENTIFIER` is set, the tool will configure Neptune Analytics as graph store to enhance memory search
- LLM configuration applies to all backend modes and allows customization of the language model used for memory processing

#### Apify Tool

| Environment Variable | Description | Default |
|----------------------|-------------|---------|
| APIFY_API_TOKEN | Apify API token for authentication (required) | None |

#### Bright Data Tool

| Environment Variable | Description | Default |
Expand Down
Loading
Loading