Smithery Proxy Ends Oct 31: Connect EveryInfra MCP to Claude
Smithery shuts down its MCP proxy, accounts and API keys on October 31. Add EveryInfra's MCP URL to Claude, Claude Code or the Claude API directly, with tested commands, latency and per-call cost.

If you reach EveryInfra through a Smithery run.tools URL, replace it with https://api.everyinfra.com/mcp and send Authorization: Bearer <API key> before October 31. After that change, EveryInfra works in Claude on the web, desktop and mobile, in Claude Code and in the Claude API. No proxy sits in between. We tested this on October 21, 2026, 18:19–18:24 UTC, with Claude Code 2.1.299 and raw MCP requests. Adding the server took one command and 0.83 seconds. A five-result TikTok search took 8.62 seconds and cost $0.000556.
EveryInfra's MCP server is a single Streamable HTTP endpoint. Listing its tools needs no key; data calls are billed per call in USD, and failed or empty calls are not charged. One key covers 91 platforms, 426 data capabilities, 17 search tools and 52 CAPTCHA types, from $0.56 per 1,000 calls.
What stops working on October 31
Smithery's announcement says connection management shuts down on October 31, 2026. After that, "Smithery will remain as a public (non-proxied) MCP registry." The directory is now run by Arcade.dev, which acquired Smithery on August 5. On the cutoff date these stop:
- server URLs on
run.toolsandserver.smithery.ai; - the Smithery API, Connect and Toolbox;
- Smithery accounts and API keys;
- the Smithery CLI and SDKs, which become deprecated.

Smithery's advice to users is short: switch to the vendor's own MCP URL. The notice gives no time zone, so plan to switch by October 30.
We checked our own Smithery listing through Smithery's public API at 18:22 UTC on October 21. The connection URL is still the proxy, api--everyinfra.run.tools. A request without a Smithery credential gets 401 Missing Authorization header. The tool list on that page is a September snapshot with 7 tools; the direct endpoint returns 25. We have asked Smithery to show the direct URL; at the time of writing they have not replied. Whatever the listing shows later, the direct URL stays the same.
Pick one of three ways to connect
- Claude on the web, desktop and mobile. Add a custom connector under Customize → Connectors with the URL and a request header. Anthropic's cloud makes the connection, not your computer, so the server must be reachable from the public internet (Claude Help Center).
claude_desktop_config.jsonis for local servers only; remote connectors do not go there. - Claude Code. One
claude mcp addcommand. The connection starts on your machine, which suits data scripts and analysis inside a repository. - Claude API. The MCP connector in the Messages API takes the URL in
mcp_servers. Use it when your own program lets Claude call tools.
EveryInfra is not in the Claude connectors directory yet, so all three paths add the URL by hand.
Test log: from setup to the first charge
These are the raw results from October 22 (Singapore time). Costs come from each response's billing object and the per-call ledger of the everyinfra_requests tool.
| Request | Time | Result |
|---|---|---|
tools/list, no key (3 requests) | 0.23–0.25 s | HTTP 200, 25 tools |
claude mcp add | 0.83 s | Config written |
claude mcp get everyinfra | 0.9–1.1 s | ✔ Connected |
| TikTok search "claude code", 5 videos | 8.62 s | $0.000556 |
| Amazon search "usb c hub", 5 products | 19.02 s | $0.001389 |
| TikTok profile that does not exist | 69.52 s | Empty, charged: false |
sort_by on TikTok search | 0.17 s | unknown_param, no charge |
| Data call without a key | — | unauthorized, no charge |
- Tool discovery, no key. Three
tools/listrequests returned HTTP 200 in 0.23–0.25 s with 25 tools. - Claude Code setup.
claude mcp addwrote the config in 0.83 s;claude mcp get everyinfrareported ✔ Connected in 0.9–1.1 s. - Did the key really go out? The header holds the reference
${EVERYINFRA_API_KEY}, not the key. A local probe server compared only a hash of the header. Every request Claude Code sent to connect and list tools carried the expanded key. - TikTok search for "claude code", 5 videos: 8.62 s, $0.000556. All five were posted October 16–21; views ranged from 610 to 257,200 (median 23,300). Each row has 33 fields, including
view_count,like_count,share_count,hashtagsandposted_at. - Amazon search for "usb c hub", 5 products: 19.02 s, $0.001389. Prices ran from $9.99 to $199.99; review counts from 2 to 32,501.
- Empty result. A TikTok profile that does not exist came back empty after 69.52 s with
charged: falseandempty_result_refunded; the reserved amount was returned. - Wrong parameter.
sort_byon TikTok search returnedunknown_paramin 0.17 s, listed the valid parameterscontent_typeandlimit, gave a working example, and charged nothing. - No key on a data call returned
unauthorizedwith the header format to use. Nothing was charged.
Three takeaways. "Connected" proves discovery, not a valid key; the first data call is the real test. The slowest call was a not-found lookup, which is free but still takes time. Error messages name the next step, so Claude usually fixes the call by itself; see API errors and self-healing.

Add EveryInfra as a custom connector in Claude
- Create an API key. Sign up and create a key in the console (quickstart). For data only, limit the key to the data product line and set a per-minute cap.
- Open connector settings. On Pro or Max: Customize → Connectors, select + or Add, then Custom → Web. On Team or Enterprise an Owner adds it in organization settings. The Free plan allows one custom connector.
- Name and URL. Name it EveryInfra and enter
https://api.everyinfra.com/mcpas the MCP server URL. - Authentication. Choose No sign-in. EveryInfra uses an API key, not OAuth.
- Request header. Add a header named
Authorizationwith the valueBearerfollowed by your key, with one space. Claude sends the value exactly as typed and adds no scheme (Claude docs). The value is hidden after you save. - Turn it on in a chat. Select + in the chat box → Connectors and enable EveryInfra. Then ask, for example: "Find the 20 most-viewed TikTok videos about Claude Code from this week and put views, likes and posting dates in a table."

You cannot edit authentication later; to change the key, remove the connector and add it again. On Team and Enterprise plans, a header is one shared credential, so every member's calls bill the same EveryInfra account. If your dialog has no Request headers section, use Claude Code or the API below.
Add EveryInfra to Claude Code
export EVERYINFRA_API_KEY="<API key>"
claude mcp add --transport http everyinfra https://api.everyinfra.com/mcp \
--scope user \
--header 'Authorization: Bearer ${EVERYINFRA_API_KEY}'
claude mcp get everyinfra- Keep the single quotes. The shell does not expand the variable, the config stores its name, and Claude Code fills it in at request time (Claude Code MCP docs). Do not reuse names such as
ANTHROPIC_API_KEY: Claude Code reads its own credential names as empty when it sends headers to a remote server. --scope usermakes the server available in every project. For a team, use--scope project; the entry goes into.mcp.jsonat the repository root and each person sets their own variable.- Claude Code waits up to 60 seconds for each remote request by default. For large or slow jobs, pass
"mode": "async", then read the result witheveryinfra_get_jobat no charge. You can also start Claude Code withMCP_TOOL_TIMEOUT=180000.
Call EveryInfra through the Claude API
curl https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: mcp-client-2025-11-20" \
-H "content-type: application/json" \
-d '{
"model": "claude-opus-5-5",
"max_tokens": 2000,
"messages": [{"role": "user", "content": "Search Amazon for usb c hub and list title, price, rating and review count for 5 results"}],
"mcp_servers": [{"type": "url", "url": "https://api.everyinfra.com/mcp", "name": "everyinfra", "authorization_token": "<EveryInfra API key>"}],
"tools": [{"type": "mcp_toolset", "mcp_server_name": "everyinfra",
"default_config": {"enabled": false},
"configs": {"everyinfra_list_capabilities": {"enabled": true}, "everyinfra_call_api": {"enabled": true}, "everyinfra_get_job": {"enabled": true}}}]
}'The connector sends authorization_token as a Bearer token, which is the header EveryInfra expects. The MCP connector is in beta and supports tool calls only (Claude API docs). This allowlist exposes three read tools and hides the other 22.
Which of the 25 tools to enable
- Data:
everyinfra_list_capabilities(platforms, actions and parameters),everyinfra_call_api(any data capability, such as TikTok search, Instagram profiles or Amazon search), andeveryinfra_get_job(async results, free). - Search and CAPTCHA:
everyinfra_searchwith 17 tools (search API);everyinfra_list_captcha_typesandeveryinfra_solve_captchafor 52 types, billed per call. - Spend:
everyinfra_account,everyinfra_usage,everyinfra_billingandeveryinfra_requestsare free. Ask Claude "what did I spend this week?" or "was that last call charged?" - Account changes: creating, disabling or deleting keys, webhooks and notification settings. If you only read data, set these to Blocked in Claude's connector settings, or deny tool names such as
mcp__everyinfra__everyinfra_key_deletein Claude Code permissions.
Errors and charges
- Missing, invalid or disabled key:
unauthorized, no charge. - Unknown parameter or bad value:
unknown_paramor a value error with valid options and an example, no charge. - No data: an empty result marked
empty_result_refunded; the reserved amount is returned. - Capability temporarily unavailable: marked as unavailable, no charge. Live status is on the status page.
- Low balance: a top-up prompt, no charge.
everyinfra_topup_linkonly returns the console link; the account owner pays.
How refunds reconcile is in failure refunds and reconciliation.
What 30 daily keywords cost
At the October 22 catalog prices (the pricing page is authoritative):
- TikTok search, 30 keywords once a day for 30 days: 900 calls × $0.000556 = $0.50.
- Amazon search for the same 30 keywords: 900 calls × $0.001389 = $1.25.
- Total $1.75. Failed and empty calls are not charged, so the real figure can only be lower. Your Claude plan or API usage is billed separately by Anthropic.
Direct URL, Smithery proxy or a local server
- Smithery proxy: needs a Smithery account and key; stops on October 31.
- Direct remote URL (this guide): nothing to install. The key stays in your Claude connector settings or local config. Requests go straight to EveryInfra with no third-party relay. Claude's web connectors connect from Anthropic's cloud, so the server must be public; EveryInfra's is.
- Local stdio server or desktop extension: good for local files and internal tools. EveryInfra offers a remote URL only, with no local package.

Limits of this test: the steps for Claude on the web follow Anthropic's documentation; we did not time them in a signed-in browser. The measured runs are Claude Code and raw MCP requests. What the new specification changes is covered in what to verify after the 2026 MCP spec.
What changed in September and October 2026
- October 31: Smithery ends its proxy, accounts and API keys and keeps a public directory (announcement). Smithery lists more than 26,000 servers, according to a third-party count (ScaleKit, October 13). Anyone using one of them through a proxy URL has to switch before then.
- October 14: Claude Code 2.1.299 fixed OAuth sign-in and token refresh not sending configured headers. Version 2.1.292 (October 6) stopped
claude -pfrom waiting on remoteresources/listbefore the first turn. Version 2.1.265 (September 8) lets--transport httpreach servers that only speak the older SSE transport (changelog). In practice,--transport httpis the right flag for every remote server. - September 25: Claude opened its directory submission portal. Submissions are validated and safety-scanned, and published listings get install and search-term analytics. The same post says Claude supports the stateless core of MCP
2026-07-28, often called MCP 2.0 (Claude article). A directory listing waits on review; a custom connector works today. - October 22, our own observation: Claude Code 2.1.299 opens a remote connection with
server/discover, the discovery method added in2026-07-28(spec changelog). If the server does not support it, Claude Code usesinitialize. If you run an MCP server, expect this request in your logs. - Directories are splitting from transport. After October 31 Smithery lists URLs but does not relay traffic. EveryInfra's entry in the MCP Registry already records the direct URL and the
Authorizationheader format.
FAQ
Is there a Smithery alternative for using EveryInfra in Claude? You do not need one. Smithery only relayed requests to EveryInfra. Point Claude at https://api.everyinfra.com/mcp with your key; your EveryInfra account, keys and balance do not change.
Can a Claude custom connector use an API key instead of OAuth? Yes. Choose No sign-in and add an Authorization request header whose value is Bearer plus the key. If that section is missing in your account, use Claude Code or the API.
Claude Code says Connected, so why do calls fail with unauthorized? EveryInfra lists tools without a key, so a missing key still shows Connected. Check that the variable is set in the terminal that starts Claude Code and that it is not a name Claude Code reads as empty.
Related reading
Reference LF-17