Neuroslop API
Połącz detekcję, szczegółową analizę i humanizację z aplikacją lub asystentem AI przez API i MCP.
Dla kogo to jest
Platformy treściowe i CMS
Screenuj i sprawdzaj tekst w pipeline: wykrywaj maszynowe śmieci zanim trafią do sieci, humanizuj na żądanie.
Agencje i narzędzia SEO
Sprawdzaj i humanizuj hurtowo pod własną marką. Jeden klucz, rozliczenie za jednostki, bez ręcznej akceptacji.
EdTech i narzędzia do pisania
Oceniaj teksty i daj piszącym samosprawdzanie z dokładnymi znacznikami, a nie czarnoskrzynkowym procentem.
Dlaczego ten API
Deterministyczne sprawdzenia
Sprawdzanie oparte na regułach na stronie jest powtarzalne dla tego samego tekstu, ustawień, wersji silnika i migawki reguł oraz słowników.
Wykryj i napraw jednym kluczem
Sprawdzanie i humanizacja pod jednym kluczem. Wynik przed i po wraca razem z przeredagowaniem.
Wyniki uwzględniające język
Odpowiedź informuje, czy analiza ma zastosowanie. Reguły prozy są najbardziej rozwinięte dla rosyjskiego i angielskiego; analiza innych języków może być ograniczona.
Serwer MCP
Połącz neuroslop ze swoim agentem AI przez MCP. Sprawdza tekst pod kątem śmieci, humanizuje go i usuwa ukryte znaki samodzielnie. Działa w Claude Code, Cursor, Codex, OpenClaw.
neuroslop_check
Sprawdź sygnały AI, powtarzające się konstrukcje, rytm i strukturę. Zobacz konkretne fragmenty i wyjaśnienia wyniku. Bezpłatnie i bez klucza przez hostowane API HTTPS; obowiązują limity chroniące przed nadużyciami.
neuroslop_humanize
Humanizuj szkice AI: zmień sposób wypowiedzi, nadaj naturalny język i porównaj wersje, sprawdzając ważne szczegóły. Tylko neuroslop_humanize wymaga klucza API.
neuroslop_clean
Usuwa ukryte znaki: zero-width spacje, homoglify. Lokalnie, bez potrzeby klucza.
Jak połączyć
- Bezpłatnie i bez klucza przez hostowane API HTTPS; obowiązują limity chroniące przed nadużyciami. Usuwa ukryte znaki: zero-width spacje, homoglify. Lokalnie, bez potrzeby klucza. Tylko neuroslop_humanize wymaga klucza API.
- Download neuroslop-mcp.mjs and add the config:
{
"mcpServers": {
"neuroslop": {
"command": "node",
"args": ["neuroslop-mcp.mjs"]
}
}
}
- Zastąp ścieżkę bezwzględną. NEUROSLOP_API_KEY jest opcjonalny i używa go tylko neuroslop_humanize; neuroslop_check i neuroslop_clean działają bez klucza.
Połącz się ze swoim agentem (MCP) Uzyskaj klucz w swoim koncie
Uwierzytelnianie
Każde żądanie niesie klucz w nagłówku: Authorization: Bearer <key> lub X-API-Key: <key>.
Zdobądź klucz na dwa sposoby, bez ręcznej akceptacji:
- Na stronie — twoje konto → API: wybierz pakiet, zapłać kartą, SBP lub USDT — klucz wydawany od razu.
- W bocie Telegrama — @AITextChecker_bot → «🔌 API»: zapłać w Telegram Stars, klucz przyjdzie na czat.
Ceny: jednostki
Sprawdzanie i redakcja przez API dla aplikacji, botów i MCP. Zużycie zależy od operacji i długości tekstu. Warunki limitu są podane przy pakiecie; istniejące klucze zachowują zakupione warunki.
| Call | Weight | What it does |
|---|---|---|
POST /v1/check | 1 | deterministic breakdown: score, verdict, markers |
POST /v1/rewrite tier=flash | 30 per 2,500 chars | humanization, Standard |
POST /v1/rewrite tier=pro | 100 per 7,500 chars | humanization, Premium: holds meaning and style deeper |
| Plan | Jednostki | Cena | Żądania / minutę |
|---|
Pakiet 3000 jednostek to 3000 sprawdzeń, albo 100 humanizacji Standard, albo 30 Premium. Sprawdzenia mają wagę 1, Standard 30 za każde 2500 znaków, Premium 100 za 7500.
POST/v1/check
Treść: { "text": "...", "lang": "pl" } (lang opcjonalny). Do 20 000 znaków.
Domyślny limit obu metod to 20 000 jednostek kodowych UTF-16, ze spacjami. Serwer może ustawić niższy limit; GET /v1/health zwraca limits.maxInputChars, a błąd too_long zwraca max.
curl -X POST https://neuroslop.net/v1/check \
-H "Authorization: Bearer ns_YOURKEY" \
-H "Content-Type: application/json" \
-d '{"text": "In today'"'"'s fast-paced world, it is important to note..."}'
Odpowiedź:
{
"score": 34, // 0-100, lower = more slop
"verdict": "Сильный нейрослоп — текст читается как сгенерированный",
"lang": "en",
"words": 120,
"findingsCount": 9,
"findings": [ { "id": "cliche", "category": "Cliché", "severity": "high", "count": 4 }, ... ],
"remaining": 2999 // units left
}
POST/v1/rewrite
Treść: { "text": "...", "tier": "flash" | "pro", "lang": "pl" } Domyślnie tier=flash. Do 20 000 znaków.
curl -X POST https://neuroslop.net/v1/rewrite \
-H "Authorization: Bearer ns_YOURKEY" \
-H "Idempotency-Key: 018f-request-unique-id" \
-H "Content-Type: application/json" \
-d '{"text": "...", "tier": "pro"}'
Odpowiedź:
{
"text": "rewritten text",
"tier": "pro",
"scoreBefore": 34,
"scoreAfter": 96,
"qualityBasis": "editorial_review",
"remaining": 2870
}
qualityBasis to editorial_review przy potwierdzonej redakcyjnej ocenie AI, a w innym przypadku unverified; nie gwarantuje to poprawności. unchanged=true zwraca oryginał ze spent=0. reason to quality_unverified, no_improvement lub unchanged. Zatwierdzone przeredagowanie nie musi zwiększać wyniku detektora.
{
"text": "original text",
"tier": "pro",
"scoreBefore": 90,
"scoreAfter": 90,
"unchanged": true,
"reason": "quality_unverified",
"qualityBasis": "unverified",
"spent": 0,
"remaining": 2870
}
Idempotency-Key z każdym przeredagowaniem. Ten sam klucz i żądanie zwracają pierwotną odpowiedź bez kolejnego przeredagowania ani opłaty; zmienione żądanie zwraca 409. Ta opcja przechowuje końcową odpowiedź w postaci zaszyfrowanej do 24 godzin w osobnej aktywnej pamięci podręcznej, wyłączonej z kopii zapasowych zarządzanych przez aplikację. Bez tego nagłówka pamięć podręczna odpowiedzi nie powstaje.GET/v1/balance
Pozostały limit klucza: { plan, quota, used, remaining, resetMonth, perMinute }.
quotaMode: "one_time", resetMonth: null- Jednorazowy pakiet jednostek. Bez comiesięcznego odnawiania.
quotaMode: "monthly"- Limit miesięczny. Odnawia się co miesiąc kalendarzowy.
GET/v1/health
Stan usługi, bez klucza: { "ok": true, "llm": true, "limits": { "maxInputChars": 20000 } }.
Błędy
| Code | error | Meaning |
|---|---|---|
| 401 | no_api_key / unknown_key / disabled | missing or invalid key |
| 429 | rate_limited / quota | per-minute limit or exhausted units |
| 409 | idempotency_conflict / idempotency_in_progress | request key reused with another body, or the first request is still running |
| 400 | text_required / too_long / bad_json | malformed request |
| 502/503 | rewrite_failed / llm_unavailable | LLM layer down, units not spent |