# Reported issues for apify-mcp-server

Pod holds 24 of 147 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to [apify-mcp-server](/mcp/apify-mcp-server).

## Most discussed

### fix: server card and server.json claim authentication is always required

**ℹ️  Maintainers note:** there was already discussion about changing the server.json authorization metadata to always required in https://github.com/apify/apify-mcp-server/pull/1174. The main issues is that the server.json spec does not support setting that authentication is required under some condition and we advertise in the server.json only the main `mcp.apify.com` URL that currently requires token. The MCP server might not require auth when the `?tools=` is specified with tools that do not

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1170) · 2026-07-28 · closed · external user · 5 comments

### [Bug]: Unable to connect

### Server type

Local (stdio via npx @apify/actors-mcp-server)

### MCP Client

Claude Desktop

### Operating System

None

### What happened?

says can't connect api tried so many times

### Steps to reproduce

cant connect api

### Node.js version

_No response_

### Apify MCP Server version

_No response_

### MCP server configuration

```json
apify
```

### Error logs

```text

```

[Read the thread](https://github.com/apify/apify-mcp-server/issues/621) · 2026-03-29 · closed · external user · 5 comments

### [Bug]: Install Issue

### Server type

Local (stdio via npx @apify/actors-mcp-server)

### MCP Client

Claude Desktop

### Operating System

macOS

### What happened?

Won't let me install for some reason.

M3 Pro
16 Gigs Ram
Tahoe 26.3.1

Under requirements:  <!>macOS, Windows, Linux (is red) and won't let me move forward.

Thank you for any tips.

Joey

### Steps to reproduce

Open claude desktop
settings, integrations, find apify
macOS, Windows, Linux is in red, cannot install.

### Node.js version

_No respon

[Read the thread](https://github.com/apify/apify-mcp-server/issues/592) · 2026-03-23 · closed · external user · 6 comments

### Unable to connect to extension server. Please try disabling and re-enabling the extension.

Trying to connect Apify to claude and i am receiving the below message after installing apify-mcp-server

Unable to connect to extension server. Please try disabling and re-enabling the extension.

[Read the thread](https://github.com/apify/apify-mcp-server/issues/560) · 2026-03-14 · closed · external user · 11 comments

### MCP call-actor tool should handle dataset previews better

Hello Apify developers!

This is an opinionated suggestion based on my tests of the Apify MCP server.

Context: I'm trying to let Claude Code use everything Apify has to offer using the new plugins and skills 
Current feelings: really nice scraper discovery, scraper info. Oauth with the remote server is super clean, love it as no secrets are needed anywhere! During the testing with CC my feeling was that the MCP mainly expects the users to use **apify-slash-rag-web-browser** and not so much the 

[Read the thread](https://github.com/apify/apify-mcp-server/issues/316) · 2025-10-18 · closed · external user · 8 comments

### MCP server seems to only accept required fields when generating input to run actors

Edit: If it's actually a bug (and not a feature ;-) ) it was created by https://github.com/apify/actors-mcp-server/pull/158/commits/25ca1558e1b5ac2e4d39f57d93753b4341f00746
Edit 2: Happy to confirm that forcing the loading of the previous version 0.2.9 in my Claude config file is a functional workaround. 

I use bebity/linkedin-jobs-scraper daily and here is a typical input:
{
    "location": "United States",
    "proxy": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
           

[Read the thread](https://github.com/apify/apify-mcp-server/issues/167) · 2025-07-10 · closed · external user · 5 comments

### May I know why we decide not to expose the other tools for more granular control of actors?

Curious to understand why we only expose few tools now. It makes me hard to check , review the run I have. Is this a resource concern? is it possible to bring them back before we have dataset in resources? the data response right now is very limited.

[Read the thread](https://github.com/apify/apify-mcp-server/issues/166) · 2025-07-09 · closed · external user · 16 comments

### Fix Actor search tool description

Context: https://apify.slack.com/archives/C08N1LWC596/p1745883305680539

[Read the thread](https://github.com/apify/apify-mcp-server/issues/96) · 2025-04-29 · closed · outside contributor · 5 comments

## Most recent

### Connector description is empty, so capabilities are unknown before enabling

## Problem

In the client's connector list, the Apify connector shows an empty description. Nothing states what it can do before it is enabled, so an agent recommends it on the name alone, the user enables it, and only then does the task turn out to be unsupported (deploying Actor source). The round trip is wasted on missing metadata alone.

## Expected

The listing carries a description of what the connector covers (search and run Actors, read datasets and key-value stores, manage tasks) and wh

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1319) · 2026-08-28 · open · external user · 0 comments

### Map the 'apify-ai' MCP client name to APIFY_AI request-origin attribution

The Apify AI agent service ([apify/apify-ai-agent](https://github.com/apify/apify-ai-agent), the Mastra service replacing Console AI chat's backend) connects to `mcp.apify.com` with MCP `clientInfo.name = 'apify-ai'`. `getRequestOriginForClient()` (`src/utils/mcp_clients.ts`) exact-matches `APIFY_AI_CLIENT_NAME` (`apify-console-ai-chat`), so the service's Actor runs are attributed as generic `MCP` instead of `APIFY_AI` in `run.meta.origin` and origin-filtered listings.

**Ask:** also map `apify-

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1316) · 2026-08-26 · open · outside contributor · 0 comments

### MCP spec conformance: 5 requirement(s) violated (via @hasmcp/mcp-spec-test) — spec 2025-11-25

When run over stdio with `npx @apify/actors-mcp-server` and no `APIFY_TOKEN` set, the server prints `APIFY_TOKEN is required but not set...` to stderr and exits immediately, before ever completing an MCP handshake. Testing specifically against the older `2025-11-25` spec revision (this server negotiates both `2026-07-28` and `2025-11-25`), `@hasmcp/mcp-spec-test` finds 5 requirement violations — fewer than under `2026-07-28` because this revision's suite doesn't have a separate `server/discover`

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1307) · 2026-08-24 · open · external user · 0 comments

### MCP spec conformance: 10 requirement(s) violated (via @hasmcp/mcp-spec-test) — spec 2026-07-28

When run over stdio with `npx @apify/actors-mcp-server` and no `APIFY_TOKEN` set, the server prints `APIFY_TOKEN is required but not set...` to stderr and exits immediately, before ever completing an MCP handshake. Because of this, `@hasmcp/mcp-spec-test`'s conformance suite (which starts the server as a plain stdio child process, with no credentials configured) can't get past `initialize`/`server/discover` at all, and 10 requirement checks fail as a result — mostly cascading consequences of "no

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1306) · 2026-08-24 · open · external user · 0 comments

### initialize handshake blocks on unbounded network call, causing client-side timeout in shared-pool sessions (Claude Desktop Cowork/Code)

Environment
Extension: apify-mcp-server (Claude Desktop extension ant.dir.gh.apify.apify-mcp-server)
Version: 0.14.3
OS: Windows 11
Node: bundled/"built-in Node.js" runtime used by the Claude Desktop extension host
Server args: dist/stdio.js --tools actors,docs,apify/rag-web-browser
Client: Claude Desktop, specifically the separate server copy it spawns for Cowork/Code sessions ("shared-pool")
Summary
The MCP initialize request handler performs a live network call to the Apify platform API (fetc

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1304) · 2026-08-21 · open · external user · 1 comment

### feat: Add task tools to the default eval tools

### Problem or motivation

The eval harness only loads a fixed set of tool categories, and the task tools had to be added to that list by hand for the new cases to work. They should be part of the default tools the evals run against so this doesn't have to be remembered per category.

### What would good look like?

_No response_

### Alternatives considered

_No response_

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1288) · 2026-08-19 · open · outside contributor · 1 comment

### feat: add integration tests for Actor tasks

### Problem or motivation

The task tools (`get, create, update, publish, unpublish`) shipped with unit tests only.
There's no integration `coverage in tests/integration/suite.ts`, so nothing verifies they work against a real API.
Requested during review of #1235

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1287) · 2026-08-19 · open · outside contributor · 0 comments

### [Bug]: search-actors treats an exhausted page as no matching Actors

## Server type

Local (stdio via `@apify/actors-mcp-server`)

## MCP Client

Other: a minimal MCP stdio contract client

## Operating System

macOS

## What happened?

`search-actors` returns the same no-results guidance for two different states:

1. the search has no matching Actors; and
2. the query has results, but the requested `offset` is past the last page.

For an exhausted page, the successful response says that no Actors matched and
requires a broader query. It does not include the offs

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1276) · 2026-08-18 · open · external user · 0 comments

### fix: render tool descriptions conditionally on session tool set instead of prose hedges

## Problem

Tool descriptions are static module-level strings built once at import (e.g. `WIDGET_ADDENDUM` in `src/tools/actors/call_actor.ts`), so a cross-tool reference to a tool that may be absent from the resolved session's tool set gets patched with a prose hedge (`"...if that tool is available in this session"`) instead of actually being omitted. PR #1261 added/extended ~20 of these across 14 files. The hedge still names an absent tool and burns tokens on every session — including the comm

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1265) · 2026-08-17 · closed · outside contributor · 0 comments

### Feature Suggestion: Optional token metering & paid API key support via `neuforge-pay`

Hi @apify,

Love the work on `apify/apify-mcp-server`! As usage grows across AI agent frameworks, server compute costs can start adding up quickly. We've also seen developers report that their autonomous agents accidentally burn through thousands of dollars in a single session because traditional payment rails lack built-in agent guardrails.

Would you be open to adding an optional usage metering & billing decorator using `neuforge-pay`? It acts as a proactive **Spend Firewall** and Merchant of 

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1263) · 2026-08-16 · open · external user · 0 comments

### fix(evals): Cases without context still get a "previous interaction: {}" turn

### What happens

`createOpenRouterTask()` serializes the context before checking it:

```ts
// evals/evaluation_utils.ts:67
const context = JSON.stringify(example.input?.context ?? {});
...
// evals/evaluation_utils.ts:74
if (context) {
```

`JSON.stringify({})` is `"{}"`, so the guard is always true and every case gets an extra user turn before the query. No case in `evals/test_cases.json` sets `context` today, so this applies to all 92.

Captured from the real `createOpenRouterTask()` with th

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1262) · 2026-08-15 · closed · external user · 1 comment

### fix: Workflow eval case targets removed Actor apify/actors-mcp-server

## Issue
The Actor `apify/actors-mcp-server` no longer exists:

The workflow eval case `fetch-details-mcp-tools-then-call` is built entirely around it. The case now always fails

Several places still mention this Actor as an example Actor and this is no longer valid

## Fix
Adjust the case to point at an Actorized MCP server that exists. `apify/example-mcp-server`

Separately, `apify/actors-mcp-server` is still named as the example in tool descriptions the model reads (`src/tools/actors/call_act

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1216) · 2026-08-07 · open · outside contributor · 0 comments

### chore: Move evals to langfuse

Currently evals are run locally and the results are printed to terminal or to a file.

We would like the test cases to be datasets and for traces and results to be visible on langfuse.

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1211) · 2026-08-06 · open · outside contributor · 0 comments

### spec: Workflow evals: multi-dimension rubric + deterministic checks

### Problem

`evals/workflows/` judges every multi-turn agent conversation with a single binary PASS/FAIL, produced by an LLM judge that only ever sees tool calls + arguments + agent text 

There's also no deterministic ground truth anywhere in this harness, everything is left to LLM judgment.

### Proposed solution

Define a fixed 6-dimension rubric for the standalone judge, with each dimension independently scored PASS/FAIL + reason: **toolSelection, argumentCorrectness, resultUtilization, tas

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1203) · 2026-08-05 · open · outside contributor · 1 comment

### test: Add MCPJam apps and tasks conformance coverage

## Problem

Two conformance holes exist that the official runner (`@modelcontextprotocol/conformance` with `pnpm run test:conformance`) cannot close.

**1. The MCP Apps surface is effectively untested end to end.** `scripts/check_widgets.ts` only asserts that a registered widget's built JS file exists. 

**2. The tasks extension cannot be reached by the official runner at all.**  Our tasks implementation therefore has unit coverage only.

MCPJam ships conformance runners for both surfaces. A ful

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1201) · 2026-08-05 · open · outside contributor · 1 comment

### Integration test suite rework: split suite.ts into flat per-concern cases

## What

Split `tests/integration/suite.ts` (3292 lines, 115 cases, one file) into per-concern
modules. Share the majority of cases with `apify-mcp-server-internal` instead of
hand-duplicating ~40 of them there.

## Why

One file, 115 cases, unmaintainable by more than one person at a time. Internal
re-implements a third of the same assertions against a live deploy — drifts, doubles
maintenance cost, no shared source of truth.

## Structure — flat, not mirrored to `src/`

```
tests/integration/c

[Read the thread](https://github.com/apify/apify-mcp-server/issues/1199) · 2026-08-05 · closed · outside contributor · 1 comment

The remaining reports are on [the project's issue tracker](https://github.com/apify/apify-mcp-server/issues).
