# For AI agents and developers

Every Perceptron Data actor is a tool your agent can call through Apify's MCP server or the Apify API: JSON in, one row per result out, and a price per result the agent sees before it calls.

## Connect

MCP server with only our flagship tools – each actor becomes one tool, named like perceptr0n--research-agent (add any other actor the same way, comma-separated):

`https://mcp.apify.com?tools=perceptr0n/imprint-impressum-website-contact-scraper,perceptr0n/research-agent,perceptr0n/google-ads-transparency-scraper,perceptr0n/pdf-to-markdown-converter`

Claude Code – then run /mcp once to sign in to Apify:

```sh
claude mcp add --transport http perceptron-data "https://mcp.apify.com?tools=perceptr0n/imprint-impressum-website-contact-scraper,perceptr0n/research-agent,perceptr0n/google-ads-transparency-scraper,perceptr0n/pdf-to-markdown-converter"
```

Cursor, VS Code, Claude Desktop and other MCP clients:

```json
{
  "mcpServers": {
    "perceptron-data": {
      "url": "https://mcp.apify.com?tools=perceptr0n/imprint-impressum-website-contact-scraper,perceptr0n/research-agent,perceptr0n/google-ads-transparency-scraper,perceptr0n/pdf-to-markdown-converter"
    }
  }
}
```

Without the browser sign-in, send your Apify token as a header instead: "headers": {"Authorization": "Bearer <APIFY_TOKEN>"}.

Plain HTTP – start a run and get the rows in one request:

```sh
curl -X POST "https://api.apify.com/v2/acts/perceptr0n~imprint-impressum-website-contact-scraper/run-sync-get-dataset-items" \
  -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" \
  -d '{"websites": ["haribo.com", "miele.de"]}'
```

Apify's default MCP server also finds these actors through its search-actors tool; naming them in tools= loads them directly.

## Which actor for which task

| Task | MCP tool | Example input | Price |
|---|---|---|---|
| Company behind a DACH website, with its VAT number checked against VIES | `perceptr0n--imprint-impressum-website-contact-scraper` | `{"websites": ["haribo.com", "miele.de"]}` | $0.005 per website + $0.01 per run |
| Cited passages for an LLM answer, each source with an evidence level | `perceptr0n--research-agent` | `{"query": "What does Article 17 GDPR require?"}` | $0.015 per question + $0.00005 per run |
| Do these companies advertise on Google or Microsoft Bing? | `perceptr0n--google-ads-transparency-scraper` | `{"mode": "companies", "domains": ["otto.de", "frischpack.de"]}` | $0.004 per company checked + $0.01 per run |
| PDF, Word, Excel or PowerPoint to Markdown (OCR for scans) | `perceptr0n--pdf-to-markdown-converter` | `{"urls": ["https://www.irs.gov/pub/irs-pdf/fw9.pdf"], "output": "chunks"}` | $0.0005 per page + $0.005 per run |
| The same company row for up to 10 websites per run, free | `perceptr0n--free-website-contact-imprint-scraper` | `{"websites": ["liebherr.com", "frischpack.de", "tuwien.at"]}` | Free |
| Employer ratings, salaries and benefits from kununu | `perceptr0n--kununu-employer-data-scraper` | `{"companies": ["https://www.kununu.com/de/siemens", "https://www.kununu.com/de/sap"], "include_reviews": true, "max_reviews_per_company": 100}` | $0.001 per record + $0.04 per run |
| Job ads from the German Federal Employment Agency's Jobbörse | `perceptr0n--arbeitsagentur-jobs-scraper` | `{"keyword": "Elektriker", "location": "München", "radiusKm": 25, "includeDetails": true}` | $0.001 per job + $0.01 per run |
| Exhibitors of Messe München fairs (bauma, IFAT, BAU …) | `perceptr0n--messe-muenchen-exhibitor-list-scraper` | `{"start_url": "https://exhibitors.bauma.de/", "result_limit": 500}` | $0.005 per exhibitor + $0.01 per run |
| Exhibitors of Koelnmesse fairs (Anuga, ISM, imm cologne …) | `perceptr0n--anuga-ism-koelnmesse-exhibitor-scraper` | `{"fair": "anuga", "result_limit": 500}` | $0.005 per exhibitor + $0.01 per run |
| App Store and Google Play apps, ratings and reviews | `perceptr0n--appstore-google-play-intelligence` | `{"mode": "search", "keywords": ["budget planner"], "country": "de", "max_items": 50}` | $0.001 per app + $0.01 per run |
| EU public tenders from TED by country and CPV code | `perceptr0n--eu-tenders-ted-scraper` | `{"countries": ["DEU", "AUT"], "cpv_codes": ["72"], "only_open_tenders": true}` | $0.002 per tender + $0.01 per run |
| German power plants from the Marktstammdatenregister | `perceptr0n--german-energy-assets-mastr` | `{"energy_source": "solar", "federal_state": "BY", "min_power_kw": 750, "commissioned_before": "2012-01-01"}` | $0.004 per unit + $0.04 per run |
| EU medical devices and manufacturers from EUDAMED | `perceptr0n--eudamed-medical-device-scraper` | `{"mode": "devices", "risk_class": "refdata.risk-class.class-iii", "max_items": 200}` | $0.03 per record + $0.02 per run |
| Which actor fits a data need (free) | `perceptr0n--dach-eu-data-source-finder` | `{"queries": ["bauma exhibitor list", "Impressum Daten", "PDF to Markdown"]}` | Free |

## What your agent should know

- Read the status before the values: the Imprint & VAT Check gives every row a status and a reason, the Research Agent a status per question and an evidence level per source, the Advertiser Check a status per platform, PDF to Markdown a status per document.
- Cap the cost: pass a maximum cost per run (maxTotalChargeUsd); Apify never charges a run beyond it.
- The Imprint & VAT Check and the Research Agent read pages that refuse automated requests through Apify's Web Fetch, which Apify bills separately on the same account ($0.0015 per delivered page on the free plan).
- Each actor's limits are in its README on Apify – read them before you rely on a field.

## Machine-readable

- https://perceptron-data.github.io/llms.txt – the catalogue in plain text
- https://perceptron-data.github.io/catalog.json – names, prices, MCP tool names, example inputs
- index.md – every page of this site as Markdown: add index.md to its address

Updated: 2026-10-13
