MCP (Model Context Protocol) - Podłączanie Zewnętrznych Źródeł Danych do Claude Code
Poznaj Model Context Protocol i dowiedz się, jak zintegrować Claude Code z GitHub, bazami danych, Notion, Stripe i setkami innych narzędzi.
Model Context Protocol (MCP) to otwarty standard umożliwiający Claude Code łączenie się z zewnętrznymi narzędziami, bazami danych i API. Dzięki MCP możesz rozszerzyć możliwości Claude poza wbudowane funkcje i uzyskać dostęp do danych w czasie rzeczywistym podczas kodowania.
Czym Jest MCP?
MCP to open-source standard dla integracji AI z narzędziami, który pozwala Claude Code:
- Łączyć się z zewnętrznymi API (GitHub, Stripe, Notion)
- Odpytywać bazy danych (PostgreSQL, MySQL)
- Czytać i zapisywać pliki w chmurze
- Integrować się z narzędziami projektowymi (Figma, Linear, Jira)
- Dostęp do setek dostępnych MCP serverów
Trzy Rodzaje Transportu MCP
MCP obsługuje trzy metody komunikacji:
1. HTTP Servers (Rekomendowane)
Zdalne usługi w chmurze używające transportu HTTP.
Składnia:
claude mcp add --transport http <nazwa> <url>
Przykład - Notion:
claude mcp add --transport http notion https://mcp.notion.com/mcp
2. SSE Servers (Przestarzałe)
Server-Sent Events - nadal działa, ale HTTP jest preferowany.
claude mcp add --transport sse asana https://mcp.asana.com/sse
3. Stdio Servers (Lokalne)
Procesy uruchamiane lokalnie na Twoim komputerze.
Składnia:
claude mcp add --transport stdio <nazwa> --env KEY=VALUE -- <komenda>
Przykład - Airtable:
claude mcp add --transport stdio airtable \
--env AIRTABLE_API_KEY=YOUR_KEY \
-- npx -y airtable-mcp-server
Poziomy Konfiguracji (Scopes)
MCP serwery mogą być skonfigurowane na trzech poziomach:
Local (Domyślny)
Prywatny dla Ciebie, specyficzny dla projektu.
claude mcp add --transport http github https://mcp.github.com
Project
Współdzielony z zespołem przez .mcp.json w kontroli wersji.
claude mcp add --scope project --transport http linear https://mcp.linear.app
User
Dostępny we wszystkich projektach, globalny dla użytkownika.
claude mcp add --scope user --transport http stripe https://mcp.stripe.com
Podstawowe Komendy MCP
# Lista wszystkich serwerów
claude mcp list
# Szczegóły konkretnego serwera
claude mcp get github
# Usunięcie serwera
claude mcp remove github
# Sprawdzenie autoryzacji (w Claude Code)
/mcp
Popularne Integracje MCP
Dokumentacja wymienia ponad 40 często używanych MCP serverów:
Development & Version Control
- GitHub - repositories, issues, PRs
- GitLab - CI/CD pipelines, merge requests
Project Management
- Linear - zadania, projekty, sprint planning
- Jira - issue tracking, workflows
- Asana - task management
Databases
- PostgreSQL - SQL queries, schema inspection
- MySQL - database operations
- MongoDB - NoSQL queries
Business Tools
- Notion - notes, databases, wiki
- Slack - messages, channels
- HubSpot - CRM, contacts
- Stripe - payments, customers
Monitoring & Analytics
- Sentry - error tracking
- DataDog - metrics, logs
Design
- Figma - design files, components
Konfiguracja przez Plik .mcp.json
Dla projektów zespołowych, utwórz .mcp.json:
{
"mcpServers": {
"github": {
"transport": "http",
"url": "https://mcp.github.com",
"env": {
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
}
},
"postgres": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "postgres-mcp-server"],
"env": {
"DATABASE_URL": "${DATABASE_URL}"
}
}
}
}
Ważne: .mcp.json używa interpolacji zmiennych środowiskowych - ${VAR_NAME} zostanie zastąpione wartością z .env.
Praktyczne Przykłady Użycia
Przykład 1: GitHub Integration
Setup:
claude mcp add --transport http github https://mcp.github.com
Użycie w Claude Code:
> Pokaż mi wszystkie otwarte pull requesty w repo owner/project
> Utwórz issue w repozytorium z tytułem "Bug in auth" i opisem...
> Sprawdź status CI/CD dla ostatniego commita
Przykład 2: PostgreSQL Database Access
Setup:
claude mcp add --transport stdio postgres \
--env DATABASE_URL="postgresql://user:pass@localhost:5432/db" \
-- npx -y postgres-mcp-server
Użycie:
> Pokaż schemat tabeli users
> Wykonaj query: SELECT * FROM orders WHERE status = 'pending' LIMIT 10
> Wygeneruj migrację dodającą kolumnę email_verified do tabeli users
Przykład 3: Notion Knowledge Base
Setup:
claude mcp add --transport http notion https://mcp.notion.com/mcp
Użycie:
> Znajdź wszystkie dokumenty dotyczące API authentication w Notion
> Utwórz nową stronę w Notion z dokumentacją tej funkcji
> Zaktualizuj status projektu w Notion database
Przykład 4: Stripe Payments
Setup:
claude mcp add --transport http stripe https://mcp.stripe.com
Użycie:
> Pokaż mi ostatnie 10 płatności
> Sprawdź szczegóły klienta o ID cus_xyz
> Utwórz nowy subscription plan
OAuth 2.0 Authentication
Zdalne serwery MCP (HTTP/SSE) obsługują OAuth 2.0 dla bezpiecznej autoryzacji.
Flow:
- Dodaj serwer:
claude mcp add --transport http github https://mcp.github.com - Uruchom Claude Code:
claude - Claude wyświetli URL autoryzacji
- Zaloguj się w przeglądarce
- Token zostanie zapisany lokalnie
Sprawdzenie statusu:
claude
> /mcp
Resource Referencing
MCP umożliwia referencje do zewnętrznych zasobów przez specjalną składnię:
@server:protocol://path
Przykłady:
> Przeanalizuj ten plik: @github:github://owner/repo/path/to/file.js
> Użyj danych z: @postgres:sql://SELECT * FROM users WHERE active=true
> Wczytaj design: @figma:figma://file/abc123/page/1
MCP Prompts jako Slash Commands
Serwery MCP mogą eksportować prompty, które stają się slash commands w Claude Code.
Przykład:
Jeśli GitHub MCP eksportuje prompt create-pr, możesz użyć:
> /create-pr
Claude automatycznie wykryje i zasugeruje dostępne prompty.
Limity Tokenów
MCP ma konfigurowalny limit tokenów dla outputu:
Ustawienie w .claude/settings.json:
{
"MAX_MCP_OUTPUT_TOKENS": 10000
}
Domyślnie: Output z MCP jest limitowany, aby nie przekroczyć context window.
Enterprise: Centralna Konfiguracja
Administratorzy mogą zarządzać MCP dla zespołu przez:
managed-mcp.json:
{
"mcpServers": {
"company-internal-api": {
"transport": "http",
"url": "https://internal.company.com/mcp",
"allowlist": ["team-a", "team-b"]
}
}
}
managed-settings.json:
{
"allowedMcpServers": ["github", "jira"],
"deniedMcpServers": ["*"]
}
Debugging MCP Connections
Problem: Serwer nie działa
# Sprawdź listę serwerów
claude mcp list
# Sprawdź szczegóły
claude mcp get <nazwa>
# Usuń i dodaj ponownie
claude mcp remove <nazwa>
claude mcp add --transport http <nazwa> <url>
Problem: Brak autoryzacji
claude
> /mcp
Następnie kliknij link OAuth i zaloguj się ponownie.
Problem: Timeout
Zwiększ timeout w .mcp.json:
{
"mcpServers": {
"slow-api": {
"transport": "http",
"url": "https://slow.api.com",
"timeout": 120000
}
}
}
Best Practices
1. Używaj Scope Odpowiednio
# Local - do eksperymentów
claude mcp add github-test https://test.github.com
# Project - dla zespołu
claude mcp add --scope project github https://mcp.github.com
# User - dla osobistych narzędzi
claude mcp add --scope user personal-notes https://notes.com/mcp
2. Secrets w Environment Variables
NIE umieszczaj API keys w .mcp.json:
❌ Źle:
{
"mcpServers": {
"api": {
"env": {
"API_KEY": "sk-12345678"
}
}
}
}
✅ Dobrze:
{
"mcpServers": {
"api": {
"env": {
"API_KEY": "${API_KEY}"
}
}
}
}
Następnie w .env (NIE commituj):
API_KEY=sk-12345678
3. Dokumentuj Wymagane Serwery
README.md w projekcie:
## Required MCP Servers
Install with:
```bash
claude mcp add --scope project --transport http github https://mcp.github.com
claude mcp add --scope project --transport stdio postgres --env DATABASE_URL="${DATABASE_URL}" -- npx -y postgres-mcp-server
Required environment variables in .env:
GITHUB_TOKEN- Personal access tokenDATABASE_URL- PostgreSQL connection string
### 4. Testuj Lokalnie Przed Project Scope
```bash
# Najpierw testuj lokalnie
claude mcp add --transport http test-api https://api.test.com
# Jak działa, przenieś do project
claude mcp remove test-api
claude mcp add --scope project --transport http api https://api.test.com
Tworzenie Własnego MCP Servera
Chociaż szczegóły wykraczają poza ten tutorial, MCP to open-source standard, więc możesz stworzyć własny serwer.
Podstawowa struktura:
- Implementuj MCP protocol (HTTP lub stdio)
- Zdefiniuj dostępne tools/resources/prompts
- Hostuj (dla HTTP) lub spakuj (dla stdio)
- Dodaj do Claude Code
Dokumentacja MCP:
https://modelcontextprotocol.io/
📚 Dokumentacja i Zasoby
Oficjalna Dokumentacja
Powiązane Artykuły
Podsumowanie
MCP (Model Context Protocol) to potężna funkcjonalność Claude Code, która:
✅ Łączy Claude z setkami zewnętrznych narzędzi
✅ Obsługuje trzy rodzaje transportu: HTTP, SSE, stdio
✅ Oferuje trzy poziomy konfiguracji: local, project, user
✅ Wspiera OAuth 2.0 dla bezpiecznej autoryzacji
✅ Umożliwia resource referencing przez @server:protocol://path
✅ Eksportuje prompty jako slash commands
✅ Pozwala na centralną konfigurację enterprise
Następne Kroki
- Zainstaluj pierwszy MCP server (np. GitHub)
- Eksperymentuj z resource references
- Dodaj database integration dla swojego projektu
- Skonfiguruj team-wide MCP w
.mcp.json - Rozważ stworzenie własnego MCP servera dla wewnętrznych API
MCP przekształca Claude Code z lokalnego asystenta w połączone centrum deweloperskie z dostępem do całego Twojego ekosystemu narzędzi! 🚀
Podobał Ci się ten tutorial?
Podziel się nim ze znajomymi i kolegami, którym może się przydać!
📚 Powiązane Artykuły
Plan Mode + MCP: audyt infrastruktury DevOps prowadzony przez AI
Claude Code analizuje repozytorium w trybie tylko-do-odczytu, a następnie wykorzystuje MCP do odpytywania GitHuba i Postgresa, aby stworzyć checklistę audytową.
Hooks i Event-Driven Automation w Claude Code - Kompletny Przewodnik
Automatyzuj workflow przez event hooks w Claude Code. Pre/Post tool hooks, validation, logging, notifications i integration z external tools.
Tworzenie Custom Plugins dla Claude Code - Kompletny Przewodnik
Naucz się budować własne pluginy Claude Code z custom commands, agents, skills i hooks. Dystrybuuj je przez marketplace dla całego zespołu.