Disclaimer. SubiektMCP to niezależny wdrożeniowiec wykorzystujący MCP do połączenia Subiekta GT z Claude’em i ChatGPT. Nie jesteśmy partnerem Anthropic (twórcy MCP) ani InsERT (twórcy Subiekta GT). Wszystkie integracje opisane w tym przewodniku są niezależne i otwarte.
W listopadzie 2024 Anthropic opublikowała otwarty standard o nazwie Model Context Protocol (MCP). W kolejnych miesiącach inni gracze AI (OpenAI, Google, lokalne modele jak Ollama) zaczęli go wspierać. W 2026 MCP jest powszechnym sposobem podpinania AI pod systemy firmowe.
Ten przewodnik wyjaśnia MCP na dwóch poziomach. Po ludzku dla osoby nietechnicznej prowadzącej małą firmę - po co to powstało, jak działa w skrócie, co to znaczy dla Twojego biznesu. Technicznie dla developera - architektura, capabilities, implementacje SDK, comparison z alternatywami (REST API, GraphQL, LangChain), use cases dla polskich ERP, bezpieczeństwo plus RODO. Plus pełna FAQ.
Po co MCP powstało
Wcześniejszy problem: chatbot AI (ChatGPT, Claude, Gemini) wie wszystko o świecie z treningu, ale nic o Twojej firmie. Twoja baza klientów, Twoje faktury, Twoje stany magazynowe. Chatbot nie wie. Zapytasz “ile sprzedałem w maju”, odpowie “nie mam dostępu do Państwa danych, proszę je dołączyć”.
Rozwiązania PRZED MCP:
- Copy-paste danych do chatu. Wygodne dla małych pytań, koszmar dla dużych zbiorów (limity tokenów, manual workflow, dane lecą do chmury OpenAI/Anthropic).
- Custom integracja napisana przez programistę. Drogo (~10-50 tys zł), długo (tygodnie), wymaga maintenance gdy API się zmieni.
- Specjalne dashbordy AI od dostawców (ChatGPT Custom GPTs, Claude Projects). Działają, ale każda platforma osobno - jak chcesz przejść z ChatGPT na Claude, robisz drugą integrację.
Każde z tych rozwiązań to “izolowane podejście”. Trzeba budować osobno dla każdej kombinacji (Twoja firma × ChatGPT, Twoja firma × Claude, Twoja firma × Gemini).
MCP to wspólny standard. Twój system (Subiekt GT, Excel, baza CRM) wystawia “konektor MCP” raz. Każdy chatbot AI obsługujący MCP może z niego skorzystać. Jeden konektor, wszyscy AI.
Analogia. USB-C dla AI
Pamiętasz czasy kiedy każdy telefon miał swój kabel? Nokia, Sony Ericsson, BlackBerry, iPhone. Każdy producent inne złącze. Trzeba było mieć 5 ładowarek.
Potem przyszło USB-C. Jeden kabel, wszystkie urządzenia. Życie się uprościło.
MCP to USB-C dla AI. Twoja firma raz tworzy “wtyk” (MCP server). Każdy AI z “gniazdem” MCP (Claude Desktop, ChatGPT z Codex, Gemini z bridge, lokalne modele) może się podłączyć.
Jak technicznie działa MCP (overview)
Trzy uczestnicy:
- Host - aplikacja AI. Claude Desktop, ChatGPT Codex, własna apka custom.
- Client - biblioteka MCP wbudowana w hosta, mówi protokołem MCP do servera.
- Server - Twój konektor do danych firmy (Subiekt GT, baza SQL, plik Excel, Google Drive).
Flow przykładowy:
- Otwierasz Claude Desktop, pytasz “pokaż mi marżę za maj”
- Claude widzi: ma dostęp do MCP servera “subiekt-mcp”. Wywołuje tool
get_marginz parametremmonth=05. - Server (na Twoim komputerze) odpytuje bazę Subiekta GT lokalnie.
- Server zwraca wyniki do Claude’a (np. tabelę marża per kategoria).
- Claude formatuje odpowiedź po polsku, prezentuje użytkownikowi.
Wszystko po polsku, w sekundach, bez programowania po stronie użytkownika. Plus dane firmowe zostają lokalne - server jest LOKALNY, AI w chmurze dostaje tylko zapytanie i odpowiedź.
Architektura MCP. Deep-dive techniczne
Dla developera lub integratora który chce wiedzieć “jak to się składa pod spodem”.
Transport
MCP definiuje 2 transporty:
stdio (Standard Input/Output). Default dla local execution. Host uruchamia server jako proces (subprocess), komunikuje przez stdin/stdout w formacie JSON-RPC 2.0. Zalety: zero network surface (idealne dla bezpieczeństwa), prosty deployment (jeden plik exe lub Python script). Wady: nie skaluje się do remote (jeden host = jeden lokalny server).
SSE (Server-Sent Events przez HTTP). Dla remote setupów. Server stoi na HTTP endpoincie, host otwiera SSE connection. Zalety: multi-host (jeden server może obsługiwać wielu klientów), remote deployment (cloud, VPC, on-prem). Wady: wymaga security stack (TLS, auth, rate limiting).
Dla większości MŚP scenariuszy stdio wystarcza i jest preferowany. SSE używaj gdy multi-tenant lub multi-location setup.
Capabilities. Co server może wystawiać
MCP server eksponuje 4 typy capabilities:
Tools. Funkcje które LLM może wywołać dla konkretnej akcji. Najczęściej używane. Przykład: get_sales(start_date, end_date) zwraca sumę sprzedaży za okres. Schema (JSON Schema) auto-generated z type hints. LLM widzi tools i wybiera odpowiedni na podstawie pytania użytkownika.
Resources. Statyczne lub dynamiczne dane dostępne dla kontekstu. Przykład: lista plików w katalogu, schema bazy danych, lista kontrahentów (read-only). LLM może je odpytać żeby budować kontekst zanim wywoła tool.
Prompts. Predefiniowane templates promptów które user może wybrać. Przykład: “raport miesięczny” prompt template który automatycznie wstawia bieżący miesiąc i prosi o standardowy raport. User klika template w UI hosta, ChatGPT/Claude wypełnia placeholders.
Sampling. Zaawansowane. Pozwala serverowi prosić LLM o decyzję pośrednią. Przykład: server wywołuje LLM żeby zdecydować czy faktura wygląda na podejrzaną (anomaly detection). Rzadko używane w 2026, ale ma rosnący use case w agentic workflows.
Schema discovery
LLM nie wie a priori jakie tools są dostępne na konkretnym MCP server. Przy starcie connection host pyta server “co umiesz” (capabilities exchange), server odpowiada strukturalnie:
{
"tools": [
{
"name": "get_sales",
"description": "Pobiera sumę sprzedaży netto za okres",
"inputSchema": {
"type": "object",
"properties": {
"start_date": {"type": "string", "format": "date"},
"end_date": {"type": "string", "format": "date"}
},
"required": ["start_date", "end_date"]
}
}
]
}
LLM widzi to i wie kiedy użyć którego toola. Bez prompt engineering po stronie user’a.
Error handling
Tools mogą zwracać błędy strukturalnie. Konwencja: dict z polem error:
@mcp.tool()
def get_invoice(invoice_id: int) -> dict:
if invoice_id <= 0:
return {"error": "Invoice ID must be positive integer"}
# ... fetch logic
if not result:
return {"error": f"Invoice {invoice_id} not found"}
return {"data": result}
LLM widzi error i może albo poprawić wywołanie (jeśli walidacja parametru), albo zwrócić użytkownikowi pytanie (“Nie ma faktury o ID 12345 - czy to literówka?”). Lepsza UX niż exception thrown.
Implementacje MCP. SDK i języki
W 2026 dostępne oficjalne SDK od Anthropic plus kilka community.
Python SDK (mcp[cli]). Najpopularniejsze, oficjalne, używane w 60-70% production MCP servers. pip install "mcp[cli]". High-level interface (FastMCP) plus low-level Server class. Tutorial PL w Jak napisać własny MCP server w Pythonie.
TypeScript SDK (@modelcontextprotocol/sdk). Druga najpopularniejsza, oficjalna. Dla server-side Node.js setups lub Electron desktop apps. npm install @modelcontextprotocol/sdk.
Rust SDK. Rosnące community, najszybsze performance, używane w large-scale deployments (cloud, edge). Repository modelcontextprotocol/rust-sdk plus alternatywy.
Inne języki. Community bindings dla Go, Java, C# - production-ready ale mniej dojrzałe. Sprawdzaj GitHub modelcontextprotocol/servers dla aktualnej listy.
Dla większości polskich MŚP integracji rekomendacja: Python SDK. Najprostszy do startu, najwięcej tutoriali, działający ekosystem (pyodbc dla MSSQL, psycopg2 dla PostgreSQL, mysql-connector dla MySQL).
MCP vs alternatywy
Częste pytanie devs i CTO: “po co MCP skoro mamy REST API / GraphQL / LangChain?”. Krótkie porównanie z każdym.
MCP vs REST API
REST jest do service-to-service i klasycznych aplikacji webowych (frontend-backend, microservice-microservice). MCP jest do LLM tool use (user przez Claude lub ChatGPT do narzędzi i danych).
Konkretne różnice:
- Tool use natywne. REST: musisz napisać prompt który mówi LLM “masz endpoint
/api/sales, parametrystart_dateISO format”. MCP: type hints + docstring auto-generują schema, LLM widzi i używa. - Schema discovery. REST: wysyłasz OpenAPI spec w system prompt (zużywa tokens, błędy). MCP: capabilities exchange przy connection, zero user input.
- Security default. REST: public endpoint, wymaga TLS + auth + rate limiting. MCP stdio: local execution, zero network surface.
W produkcji często widać oba: REST do integracji z zewnętrznymi (kurier, KSeF, BaseLinker), MCP do LLM-driven workflows. Komplementarne, nie konkurencja. Głębsza analiza w MCP vs REST dla integracji ERP.
MCP vs GraphQL
GraphQL pozwala klientowi zapytać o specyficzny subset pól (“daj mi tylko nazwę i kwotę faktury, bez reszty”). Ma silne typowanie i introspection.
MCP nie jest “lepszy” niż GraphQL - jest dla innego use case. GraphQL = klient-server query language. MCP = LLM tool calling protocol. Można teoretycznie wystawić GraphQL przez MCP tool (“execute_graphql_query”) jako proxy, ale to overkill dla większości scenariuszy.
Jeśli już masz GraphQL backend, możesz dodać thin MCP server jako wrapper. Jeśli nie masz, idź bezpośrednio MCP bez GraphQL.
MCP vs LangChain Tools
LangChain to framework Python do budowy LLM applications. Ma własne abstractions dla tool calling (BaseTool, AgentExecutor).
MCP jest protokołem otwartym - LangChain może być client dla MCP servera. Nie konkurencja, layering: LangChain consumes MCP. W 2026 LangChain ma natywne MCP integration (langchain-mcp package).
Jeśli używasz LangChain dla custom AI applications, MCP server staje się komplementarnym narzędziem (Twoje LangChain agents wywołują MCP tools jak zewnętrzne API). Jeśli nie używasz LangChain, MCP plus Claude/Codex wystarcza.
Use cases dla polskich ERP
Konkretne scenariusze MCP w polskich firmach z popularnymi ERP.
Subiekt GT (InsERT). Dominujący ERP w polskim MŚP. SubiektMCP (mój produkt) to gotowy MCP server lokalny, instalacja kilkanaście minut, 13 tools (sprzedaż, magazyn, klienci, faktury, KSeF status, marża, rotacja). Pełen przegląd w Subiekt GT + AI kompletny przewodnik MŚP.
Comarch Optima / ERP XL. Większe firmy, więcej własnego customowania. Brak gotowego MCP servera w 2026 - wymaga custom development (typowo Tier C: 5-10 tys zł netto za podstawowy connector, integrator). Architecture: Optima ma własne API (BIService), MCP server jako wrapper na BIService.
enova365 (Soneta). Cloud-first ERP, ma SDK plus REST API. Custom MCP server typowo 2-5 tys zł netto. Ekosystem rozwija się w 2026.
WAPRO MAG (Asseco). Druga popularna alternatywa w MŚP po Subiekcie. Custom MCP server podobny effort do Subiekt (pyodbc + Sybase ASA). Brak gotowego standardu w 2026.
Standalone bazy SQL (MSSQL, PostgreSQL, MySQL). Anthropic dostarcza generic SQL MCP server. Konfigurujesz connection string, lista tabel, query restrictions. Dla custom workflow lepiej napisać dedicated MCP server z business logic.
Generic tutorial Python jak napisać MCP server dla dowolnej bazy w Jak napisać własny MCP server w Pythonie.
Bezpieczeństwo i RODO
Trzy warstwy bezpieczeństwa MCP w typowym polskim MŚP setup.
1. Local execution by default. Server MCP stdio działa na komputerze firmy. Dane nie idą do chmury w całości. AI dostaje tylko zapytanie (“ile sprzedaliśmy wczoraj”) i odpowiedź (“12 400 zł”). Nie wysyłasz całej bazy ani PII klientów.
2. Scoped permissions per tool. W kodzie servera ograniczasz co tool może zobaczyć. Tool “faktury_publiczne” zwraca tylko sumę bez NIPów. Tool “klient_detail” wymaga eksplicytnego klient_id, nie listuje wszystkich klientów. Granularność per use case.
3. Audit log. Każde wywołanie tool zapisujesz do pliku/bazy (kto, kiedy, jaki tool, jakie parametry, jaki wynik). Klient ma evidence trail dla audytora RODO. Plus możesz po fakcie sprawdzić “co Claude pytał o naszą bazę”.
RODO compliance. Anthropic ma DPA (Data Processing Agreement) zgodne z GDPR. OpenAI też (od kwietnia 2024). UODO (uodo.gov.pl) nie zakazuje używania AI z danymi firmowymi - wymaga odpowiednich umów powierzenia i kontroli dostępu, co local-first MCP server zapewnia. Pełny tekst RODO+AI w Czy AI w firmie łamie RODO i Anthropic dane firmowe DPA.
Best practices security:
- Token / API key nigdy w kodzie - zawsze przez environment variable lub
.envplik - HTTPS dla SSE transport (nie HTTP)
- Rate limiting per tool (np. max 100 zapytań/godzinę żeby uniknąć abuse)
- Whitelist tabel SQL (nie generic “SELECT * FROM anything”)
- Logging anomalii (jeśli LLM wywołuje tool z dziwnymi parametrami, alert)
Co MCP zmienia dla MŚP
Pięć praktycznych konsekwencji dla małej firmy w Polsce.
1. Niższy koszt integracji AI z firmą. Przed MCP: integracja ERP z AI = 10-50 tys zł plus tygodnie. Po MCP: gotowy connector od dostawcy (jak SubiektMCP) = 99-249 zł netto/mc, dzień instalacji.
2. Większa elastyczność (zmiana AI). Przed MCP: wybierasz raz np. ChatGPT Custom GPT, integrujesz. Jeśli za rok Claude lepszy, robisz drugą integrację. Po MCP: jeden konektor, dwie AI. Przełączasz w 5 sekund (zmiana hosta).
3. Bezpieczeństwo lokalne. Server MCP działa LOKALNIE. Dane firmy nie idą do chmury w całości. AI dostaje fragment potrzebny do konkretnego pytania.
4. Ekosystem konektorów. Już w 2026 są dziesiątki gotowych konektorów MCP: Subiekt GT (SubiektMCP), bazy SQL (oficjalny SQL Server MCP server), Google Drive, GitHub, Slack, pliki lokalne. Każdy konektor = nowy “dostęp” dla AI bez integracji każdego z każdym osobno.
5. Demokratyzacja AI biznesowego. Wcześniej “AI w firmie” oznaczało dużą korporację, dział IT, kontrakt z konsultantem. Po MCP mała firma 1-osobowa może podłączyć Subiekta do Claude’a w godzinę.
Co MCP NIE jest
Żeby uniknąć hype, czego MCP NIE robi:
- NIE jest sztuczną inteligencją. MCP to PROTOKÓŁ (zasady komunikacji), nie sam AI. AI to Claude, ChatGPT, Gemini. MCP łączy AI z Twoimi danymi.
- NIE zastępuje Twojego ERP / systemu firmowego. Subiekt GT, Comarch Optima, Excel - zostają. MCP to dodatkowy interfejs.
- NIE jest magicznym rozwiązaniem. Dane wciąż muszą być w bazie. AI wciąż czasem błędnie zinterpretuje. Audit poprawności wyników nadal Twoja odpowiedzialność.
- NIE działa offline. AI (Claude, ChatGPT) wymaga internetu. MCP server może być lokalny, ale AI w chmurze.
Kto wspiera MCP w 2026
- Anthropic Claude. Twórca standardu. Claude Desktop natywnie z MCP support od początku.
- OpenAI ChatGPT (z Codex). Dodali MCP support w styczniu 2026.
- Google Gemini. Częściowo, z planem pełnego support w drugiej połowie 2026.
- Lokalne modele (Ollama, LM Studio, Llama.cpp). Wspierają MCP przez bridges.
- Microsoft Copilot. Częściowo (ich własny protokół Function Calling jest priorytetem).
W 2027 spodziewamy się 90+% rynku AI biznesowego ze wsparciem MCP.
Roadmap MCP 2026-2027
Kilka rzeczy które warto śledzić jako developer/CTO/integrator.
Server registry (planowane na połowę 2026). Centralna lista publicznych MCP servers (typu Docker Hub dla containerów). User instaluje server jednym kliknięciem zamiast manualnej edycji config JSON. Ułatwi ekosystem 10x.
MCP-native authentication standard (Q3 2026). Aktualnie auth jest server-specific (każdy server ma własny mechanizm). Anthropic plus partnerzy pracują nad standardem OAuth2-like dla MCP. Ułatwi multi-tenant SaaS scenarios.
Native MCP w wszystkich major LLM SDK (do końca 2026). OpenAI SDK, Anthropic SDK, Google SDK, Ollama, llama.cpp - wszystkie mają roadmapę native MCP integration jako primary tool calling mechanism. Function calling jako legacy.
Multimodal MCP capabilities (2027). Obecnie MCP tools zwracają tekst/dict. Roadmap: tools mogą zwracać images, audio, structured data (CSV/Excel) bezpośrednio do LLM. Use case: tool generuje wykres jako PNG, LLM go interpretuje i pokazuje użytkownikowi.
MCP w edge computing (2027). Lokalne LLM (Llama, Mistral) plus lokalny MCP server plus offline-first deployment. Use case: kasjer w sklepie pyta po polsku “ile sprzedaliśmy dziś” bez połączenia z chmurą. RODO maksymalnie przyjazne.
Roadmap publikowany na Anthropic blog oraz w official MCP GitHub.
FAQ
Czy MCP zastąpi REST API w mojej firmie?
Nie, komplementarne. REST API dalej potrzebne do service-to-service (Twój sklep z kurierem, KSeF z MF). MCP dodajesz dla LLM tool use (user przez Claude do Twoich danych). W produkcji oba żyją razem.
Czy MCP wymaga programisty żeby go używać?
Zależy od scenariusza. Pisanie własnego MCP server wymaga programisty (Python lub TS). Używanie gotowego MCP server (jak SubiektMCP) wymaga umiejętności edycji JSON config (kilka minut nauki). Pytanie po polsku przez Claude Desktop - zero programowania.
Czy MCP jest darmowe?
Sam protokół MCP - tak, otwarty standard, MIT license. Implementacje SDK od Anthropic - darmowe. Konkretne gotowe MCP servers (typu SubiektMCP) - płatne subskrypcją (99-249 zł netto/mc/stanowisko w Naszym przypadku). Custom MCP server pisany freelancera - jednorazowy koszt 2-10 tys zł netto za podstawowy connector.
Czy mogę używać MCP z lokalnym modelem (Ollama) bez chmury?
Tak, fully offline setup. Ollama supports MCP via mcp-bridge package. Plus Llama.cpp ma natywne MCP w roadmapie 2026. Dla firm gdzie RODO jest krytyczne (np. zdrowie, prawo), lokalny LLM plus lokalny MCP server daje pełen air-gap workflow.
Czy MCP działa z polskimi nazwami kolumn w bazie?
Tak. MCP tools przekazują nazwy tabel i kolumn jak są w bazie. Claude i ChatGPT są dobrze wytrenowane na polskim, rozumieją “Numer faktury”, “Klient”, “Wartość netto” bez problemu. SubiektMCP plus polskie kolumny w Subiekcie GT tworzą spójny polski stack end-to-end.
Jak debugować MCP server gdy coś nie działa?
Trzy narzędzia. (1) mcp dev <server.py> uruchamia Inspector UI w przeglądarce (localhost:5173) gdzie testujesz tools bezpośrednio. (2) Logi Claude Desktop w ~/Library/Logs/Claude/ (macOS) lub %APPDATA%\Claude\logs\ (Windows). (3) Stderr Twojego servera (przekierowane do logu Claude’a). Step-by-step debug w Jak napisać własny MCP server Python.
Czy MCP jest bezpieczny przed atakami typu prompt injection?
Częściowo. Sam protokół nie zapobiega prompt injection (LLM nadal może być oszukany manipulowanym promptem). MCP ogranicza damage przez scoped tools - nawet jeśli LLM zostanie oszukany żeby wywołać tool, tool ma określone parametry i nie może zrobić arbitrary SQL. Plus audit log dla wykrywania anomalii post-hoc.
Ile czasu zajmuje wdrożenie MCP w typowej polskiej firmie MŚP?
Trzy scenariusze. (1) Gotowy MCP server (SubiektMCP dla Subiekta GT): instalacja kilkanaście minut plus konfiguracja Claude Desktop kilkanaście minut. Total: pół godziny. (2) Custom MCP server z prostą bazą (1-2 tabele): 2-4 godziny developera. (3) Custom enterprise scope (multi-source, complex business logic): 1-3 tygodnie.
Pogłębiamy temat
- Jak napisać własny MCP server w Pythonie. Tutorial krok po kroku
- Subiekt GT + AI. Kompletny przewodnik dla MŚP
- Własny MCP server dla Subiekta GT w 2h
- MCP vs REST dla integracji ERP
- Sfera GT vs MCP. Kiedy używać czego
- 5 use case’ów MCP w sprzedaży
- Claude vs ChatGPT dla polskiej firmy
- Czy AI w firmie łamie RODO