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
Sprawdzaj i humanizuj jednym kluczem. Wyniki przed/po są zwracane, gdy analiza ma zastosowanie; niedostępne mają wartość null.
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.
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.
Na stronie zapłacisz kartą, przez SBP lub w USDT, a w bocie — Telegram Stars. Podane ceny są orientacyjne; dokładną kwotę i walutę zobaczysz na ekranie płatności.
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.
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
MCP korzysta z bezpłatnego POST /api/check z limitem częstotliwości. POST /v1/check wymaga klucza i zużywa jego jednostki. GET /v1/health nie wymaga klucza.
Dla /v1/check, /v1/rewrite i /v1/balance wyślij klucz w nagłówku: Authorization: Bearer <key> / 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
| Wywołanie | jednostki API | Operacja |
|---|---|---|
POST /v1/check | 1 | Analiza, zastosowanie i uwagi |
POST /v1/rewrite tier=flash | 30 / 2500 UTF-16 | Humanizacja Standard |
POST /v1/rewrite tier=pro | 100 / 7500 UTF-16 | Humanizacja Premium |
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.
Przykłady pokazują wybrane pola odpowiedzi, nie zmierzone wyniki klientów. Oceny i saldo będą inne.
curl -X POST https://neuroslop.net/v1/check \
-H "Authorization: Bearer ns_YOURKEY" \
-H "Content-Type: application/json" \
-d '{"text":"The team utilizes this checklist to review each draft before publication.","lang":"en"}'
Odpowiedź:
{
"score": 100,
"lang": "en",
"ruleCoverage": "full",
"scoreInterpretation": "style_rules_not_authorship",
"applicability": { "status": "applicable", "eligible": true },
"decision": {
"outcome": "human_like",
"action": "show_style_signal",
"abstained": false,
"confidence": null,
"confidenceKind": "not_calibrated"
},
"assessment": {
"outcome": "human_like",
"authorshipProbability": null,
"automaticRewrite": false
},
"remaining": 2999
}
Przed użyciem oceny sprawdź applicability, decision i assessment. Wynik 0–100 nie jest prawdopodobieństwem autorstwa; null oznacza brak wyniku, nie zero. lang określa język tekstu, nie interfejsu.
POST/v1/rewrite
Treść: { "text": "...", "tier": "flash", "lang": "en" }. tier to flash (Standard, domyślnie) lub pro (Premium). /v1/health podaje limit wejścia.
curl -X POST https://neuroslop.net/v1/rewrite \
-H "Authorization: Bearer ns_YOURKEY" \
-H "Idempotency-Key: YOUR_UNIQUE_REQUEST_ID" \
-H "Content-Type: application/json" \
-d '{"text":"The team utilizes this checklist to review each draft before publication.","tier":"pro","lang":"en"}'
Odpowiedź:
{
"text": "Your revised paragraph appears here.",
"tier": "pro",
"scoreBefore": 100,
"scoreAfter": 100,
"qualityBasis": "editorial_review",
"spent": 100,
"remaining": 2900
}
qualityBasis opisuje kontrolę, nie opłatę. Obejmuje editorial_review, deterministic, bounded-source-witness, unchanged i unverified; lista nie jest zamknięta. Zaakceptowana redakcja nie musi podnosić oceny.
{
"text": "The team uses this checklist to review each draft before publication.",
"tier": "pro",
"scoreBefore": 100,
"scoreAfter": 100,
"unchanged": false,
"reason": "local_edited",
"qualityBasis": "deterministic",
"engine": "local-rules",
"editorialApproved": false,
"billable": false,
"spent": 0,
"remaining": 3000
}
{
"text": "Original text is returned here.",
"tier": "pro",
"scoreBefore": null,
"scoreAfter": null,
"unchanged": true,
"reason": "local_unchanged",
"qualityBasis": "unchanged",
"spent": 0,
"remaining": 3000
}
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.replayOnly: true
Aby pobrać wynik bez nowej pracy, użyj pierwotnych Idempotency-Key, text, tier, lang i mode oraz replayOnly:true. Brak lub wygaśnięcie zapisu daje 409 idempotency_replay_unavailable, nie nową redakcję. Nie dowodzi to, czy pierwotne żądanie było płatne. Nie ponawiaj automatycznie z nowym kluczem.
curl -X POST https://neuroslop.net/v1/rewrite \
-H "Authorization: Bearer ns_YOURKEY" \
-H "Idempotency-Key: YOUR_UNIQUE_REQUEST_ID" \
-H "Content-Type: application/json" \
-d '{"text":"The team utilizes this checklist to review each draft before publication.","tier":"pro","lang":"en","replayOnly":true}'
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
Obsłuż błąd przed użyciem tekstu. Timeout lub 502 nie dowodzi statusu opłaty: odzyskaj zapisany wynik. Nie ponawiaj w ciemno błędów uwierzytelnienia, limitu lub konfliktu klucza.
| HTTP | error | Znaczenie |
|---|---|---|
| 401 | no_api_key / unknown_key / disabled | Brak klucza, klucz nieprawidłowy lub wyłączony |
| 429 | rate_limited / quota | Przekroczona częstotliwość żądań lub limit jednostek |
| 409 | idempotency_conflict / idempotency_in_progress | Klucz użyty dla innego żądania lub pierwotne żądanie nadal trwa |
| 409 | idempotency_replay_unavailable / idempotency_receipt_corrupt | Zapisany wynik niedostępny; nie uruchamiaj nowej pracy automatycznie |
| 400 | text_required / too_long / bad_json / invalid_idempotency_key / invalid_replay_only / idempotency_key_required | Nieprawidłowe żądanie; popraw przed ponowieniem |
| 413 | own_free_result_too_large | Wynik lokalny przekracza limit odpowiedzi; spent=0 |
| 502 | rewrite_error | Żądanie nieudane; odzyskaj zapisany wynik przed nową pracą |