# MCP tools

> The local server (`clawifi-mcp`) lists 117 tools; the hosted remote server serves 14 of them. Read-only tools are marked.

Canonical page: https://clawifi.dev/docs/mcp-tools

## Search, research and code

| Tool | What it does | Hosted | Read-only |
| --- | --- | --- | --- |
| `academic_workbench` | Search free scholarly archives, then extract deterministic paper-writing structure for selected results. |  | yes |
| `export_dataset` | Export a research_bundle or search_free_bundle response into a local JSONL/CSV evidence dataset artifact. |  |  |
| `extract_paper_structure` | Extract deterministic research-writing structure from a paper: sections, keywords, contribution candidates, and method signals. |  | yes |
| `find_datasets` | Search free dataset metadata and inspect selected datasets for files, tags, license, and source metadata. |  | yes |
| `find_research_ideas` | Find deterministic research idea cards from free scholarly archive evidence and paper structure signals. |  | yes |
| `get_package` | Get PyPI package metadata by name: summary, versions, release dates and links. |  | yes |
| `get_repo` | Get GitHub repository metadata by owner and repo: description, stars, topics, license and recent activity. |  | yes |
| `inspect_dataset` | Inspect one dataset through a free public metadata API. |  | yes |
| `inspect_package` | Inspect one package through free public registry metadata APIs. |  | yes |
| `package_ecosystem_map` | Inspect one package name across multiple free public package registries. |  | yes |
| `product_manifest` | Return Clawifi's public beta product manifest, proof points, policies, and surface groups. |  | yes |
| `read_paper` | Read an academic paper by id or URL: metadata and abstract, optionally full text. |  | yes |
| `read_thread` | Read a Reddit or X thread, or a GitHub issue, pull request or discussion, by id or URL, optionally with comments. |  | yes |
| `research` | Run a free-first source-aware research search across academic, code, package, and web lanes. |  | yes |
| `research_bundle` | Run free-first research and scrape selected URL results into an evidence bundle. |  | yes |
| `research_dataset` | Plan, run, scrape, and export a free-first research workflow into a local evidence dataset artifact. |  |  |
| `research_plan` | Plan a free-first research run with source steps, budget estimates, and backoff policy without executing it. |  | yes |
| `search_academic` | Search scholarly papers (default arXiv) with optional enrichment. |  | yes |
| `search_code` | Search code on GitHub by query. |  | yes |
| `search_content` | Search the web and scrape top results. |  | yes |
| `search_datasets` | Search free public dataset metadata across Hugging Face, OpenML, Dataverse, and Figshare. |  | yes |
| `search_free` | Free-first web search. | yes | yes |
| `search_free_bundle` | Run free-first search, dedupe/rank results locally, and scrape selected pages into an evidence bundle. |  | yes |
| `search_free_status` | Explain free_auto search provider readiness, meta search setup, and paid-provider usage. |  | yes |
| `search_open_archives` | Search free open scholarly archive metadata across arXiv, Crossref, Zenodo, OSF, DOAJ, PubMed Central, bioRxiv, and medRxiv. |  | yes |
| `search_packages` | Search free package registry metadata across PyPI, npm, crates.io, Maven Central, NuGet, RubyGems, Packagist, and pub.dev. |  | yes |
| `search_web` | Search the web using DuckDuckGo (default, no CAPTCHA) or specify source='yandex'. |  | yes |
| `source_catalog` | List Clawifi's free-first source lanes, providers, REST routes, and MCP tools. |  | yes |

## Read, browse and crawl

| Tool | What it does | Hosted | Read-only |
| --- | --- | --- | --- |
| `batch_browse` | Render several URLs in a real browser in one call (JavaScript or bot-protected pages), in parallel up to the browser pool size. |  | yes |
| `batch_fetch` | Fetch several URLs in one call, up to 4 in parallel, with source-aware routing instead of looping fetch_url. |  | yes |
| `browse_url` | Render one URL in a real browser (JavaScript, screenshots, bot-protected pages). |  | yes |
| `browser_act` | Act like a person in an open browser session: snapshot, click, type, fill, press, select, check, hover, scroll, wait, navigate, back, tabs, upload, drag, dialog, downloads, text, screenshot, pdf, cookies, logs, wall (is a person needed). |  |  |
| `crawl_site` | Crawl a bounded site graph with deterministic BFS traversal and partial failure reporting. |  | yes |
| `delete_crawl` | Delete a durable crawl and its checkpoint. |  |  |
| `download_file` | Download a file (PDF, image, archive, dataset) to the local artifacts folder and return its path, size and sha256. |  |  |
| `extract_url` | Extract structured JSON from a URL using deterministic schema hints, presets, evidence, confidence, and validation. | yes | yes |
| `fetch_url` | Fetch a page or PDF as markdown: plain HTTP first, a browser only when needed. | yes | yes |
| `get_crawl` | Get durable crawl status, bounded page refs, errors, and checkpoint counts. | yes | yes |
| `http_request` | Send one raw HTTP request (GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS) and get status, headers, and text body. |  |  |
| `map_site` | Discover candidate URLs from robots.txt, sitemaps, RSS/Atom feeds, docs paths, and seed-page links before crawling. | yes | yes |
| `resume_crawl` | Explicitly resume a stopped or interrupted crawl from its durable frontier. |  |  |
| `run_recipe` | Run a deterministic typed recipe such as pricing_page, docs_index, github_repo, x_profile, academic_paper, or company_profile. |  | yes |
| `run_recipes` | Run a deterministic typed recipe over multiple URLs with partial failure reporting. |  | yes |
| `scrape_url` | Scrape a URL into requested LLM-ready formats: markdown, text, links, metadata, html, raw_html, screenshot, or state_json (data the page embeds for its JavaScript). | yes | yes |
| `start_crawl` | Start a durable crawl that can be stopped, inspected, and resumed after restart. | yes |  |
| `stop_crawl` | Stop a running durable crawl without deleting its checkpoint. |  |  |

## Jobs, history and monitors

| Tool | What it does | Hosted | Read-only |
| --- | --- | --- | --- |
| `cancel_job` | Cancel a queued or running async Clawifi job. |  |  |
| `clawifi_monitor` | Facade for Evidence Monitor lifecycle, ticks, and diffs. |  |  |
| `create_job` | Create an async Clawifi job for fetch, batch_fetch, extract, crawl, or domain_dns. | yes |  |
| `create_monitor` | Create an Evidence Monitor. |  |  |
| `delete_monitor` | Soft-delete a monitor. |  |  |
| `estimate` | What a call would cost in credits before running it: minimum (what the balance must cover), maximum or a caveat, and what raises it. | yes | yes |
| `get_history` | Get one operation record, including status, lineage, timings, and credit charge. |  | yes |
| `get_history_result` | Read a retained operation result without rerunning network work or spending credits. |  | yes |
| `get_job` | Get async Clawifi job status, result, or error by job_id. | yes | yes |
| `get_job_errors` | Get normalized errors for an async Clawifi job by job_id. |  | yes |
| `get_job_events` | Get the stored event timeline for an async Clawifi job by job_id. |  | yes |
| `get_monitor` | Get one Evidence Monitor by ID. |  | yes |
| `list_artifacts` | List recent local artifacts with stable artifact_id values. |  | yes |
| `list_history` | List account-scoped root operations with filters and cursor pagination. | yes | yes |
| `list_monitor_diffs` | List monitor diff summaries and artifact IDs. |  | yes |
| `list_monitor_ticks` | List monitor tick activity. |  | yes |
| `list_monitors` | List local Evidence Monitors with schedule, status, and next tick metadata. | yes | yes |
| `pause_monitor` | Pause a monitor without deleting history. |  |  |
| `read_artifact` | Read a text artifact by artifact_id; binary artifacts return metadata without raw bytes. |  | yes |
| `rerun_history` | Explicitly rerun a retained operation and link the new operation through replay_of. |  |  |
| `resume_monitor` | Resume a paused monitor; optionally make it due immediately. |  |  |
| `run_monitor_now` | Run a monitor immediately and return tick status plus artifact/diff IDs, not artifact bodies. |  |  |
| `update_monitor` | Patch a monitor using optimistic versioning. |  |  |

## Domain records and OSINT

| Tool | What it does | Hosted | Read-only |
| --- | --- | --- | --- |
| `domain_dns` | DNS records for a domain — A, AAAA, MX, NS, TXT, CNAME. |  | yes |
| `domain_recon` | Full domain reconnaissance: WHOIS, DNS, SSL, subdomains. |  | yes |
| `domain_ssl` | SSL/TLS certificate inspection for a domain. |  | yes |
| `domain_subdomains` | Find subdomains via Certificate Transparency logs (crt.sh). |  | yes |
| `domain_subdomains_brute` | Brute force subdomains via DNS resolution. |  | yes |
| `domain_virustotal` | VirusTotal domain report — reputation, malware analysis, categories. |  | yes |
| `domain_whois` | WHOIS lookup for a domain — registrar, dates, name servers. |  | yes |
| `email_recon` | Find the addresses a domain publishes on its own pages (home, about, team, contact, careers, privacy, legal) plus one web search, each with the page it came from. |  | yes |
| `ip_intel` | Get IP intelligence from Shodan InternetDB — ports, hostnames, vulnerabilities. |  | yes |
| `username_search` | Search for a username across social networks using Clawifi's native manifest engine. |  | yes |

## Other

| Tool | What it does | Hosted | Read-only |
| --- | --- | --- | --- |
| `aws_render` | Render a page in an AWS AgentCore managed browser (another IP, no local Chromium). |  |  |
| `browser_doctor` | Run secret-safe browser runtime, profile lock, WebBridge, extension, and agent config diagnostics. |  | yes |
| `browser_js` | Evaluate a JavaScript expression in an active browser session. |  |  |
| `browser_vision` | Capture a full-page screenshot from an active browser session. |  | yes |
| `clawifi_academic` | Facade for academic workflows: search, read, structure, workbench, or ideas. |  | yes |
| `clawifi_browser` | Facade for browser sessions, local browser profiles, and Chrome WebBridge. |  |  |
| `clawifi_code` | Facade for GitHub/code/package intelligence. |  | yes |
| `clawifi_ops` | Facade for async jobs and durable operation history. |  |  |
| `clawifi_osint` | Facade for OSINT over domain, IP, email-domain, or username targets. |  | yes |
| `clawifi_registry` | Facade for package and dataset registries. |  | yes |
| `clawifi_research` | Facade for source-aware research: plan, results, evidence bundle, or dataset export. |  | yes |
| `clawifi_search` | Facade for web search: results, web, content/fetch, bundle, or status. |  | yes |
| `clawifi_site` | Facade for site discovery and crawl lifecycle: map, crawl_once, start, status, stop, resume, delete. |  |  |
| `clawifi_social` | Facade for safe social reads and draft-only composition. |  |  |
| `clawifi_web` | Facade for URL work: fetch, scrape, browse, structured extract, recipes, and batch variants. |  | yes |
| `close_browser_session` | Close a managed browser session by session_id. |  |  |
| `close_browser_sessions` | Idempotently close selected managed browser sessions, or all sessions when no IDs are supplied. |  |  |
| `cloud_render` | Render a page in Cloudflare's remote browser (another IP, no local Chromium). |  |  |
| `compose_social_draft` | Open X/Twitter or Reddit in the real browser and prepare a draft only. |  |  |
| `create_browser_profile` | Create a named local-only browser profile. |  |  |
| `create_browser_session` | Create a managed browser session. |  |  |
| `delete_browser_profile` | Delete a named local-only browser profile contained under the configured runtime directory. |  |  |
| `get_browser_session` | Get managed browser session status by session_id. |  | yes |
| `get_session_status` | Check whether a stored login session exists for a source such as twitter or reddit. |  | yes |
| `github_search_code` | Search GitHub code. |  | yes |
| `github_search_users` | Search GitHub users by name or username. |  | yes |
| `github_user` | Get GitHub user profile — bio, repos, followers, location, email. |  | yes |
| `like_tweet` | Like a tweet. |  |  |
| `list_browser_profiles` | List local-only browser profiles without exposing storage paths or browser storage contents. |  | yes |
| `list_browser_sessions` | List managed browser sessions so agents can recover lost session IDs and inspect cleanup state. |  | yes |
| `post_tweet` | Post a new tweet to X/Twitter. |  |  |
| `reddit_user` | Get Reddit user profile — karma, bio, account age. |  | yes |
| `reply_tweet` | Reply to a tweet. |  |  |
| `retweet` | Retweet a tweet. |  |  |
| `schema_assist` | Infer, validate, merge, or refine a deterministic JSON extraction schema with field provenance. |  | yes |
| `upload_cookies` | Store session cookies for a source in the local runtime (operator only). |  |  |
| `webbridge_command` | Run a real-browser bridge command against the connected Chrome extension. |  |  |
| `webbridge_status` | Get local real-browser bridge connection status. |  | yes |
