Jobs MCP Server
by mardraze
README.md
# Jobs MCP Server
Remote MCP (Model Context Protocol) server zbudowany w Node.js, TypeScript i Express.
## Funkcjonalności
### Tools (Narzędzia)
- **get_job_listings** - Wyszukiwanie ofert pracy na podstawie kryteriów
- **calculate** - Wykonywanie podstawowych operacji arytmetycznych
### Resources (Zasoby)
- **jobs://featured** - Lista wyróżnionych ofert pracy
- **jobs://stats** - Statystyki rynku pracy
## Instalacja
```bash
npm install
```
## Konfiguracja
Skopiuj plik `.env.example` do `.env`:
```bash
copy .env.example .env
```
Możesz zmienić port w pliku `.env` (domyślnie 3000).
## Uruchomienie
### Tryb deweloperski (kompilacja + start)
```bash
npm run dev
```
### Kompilacja
```bash
npm run build
```
### Start (wymaga wcześniejszej kompilacji)
```bash
npm start
```
### Tryb watch (automatyczna rekompilacja)
```bash
npm run watch
```
## Endpointy
- `GET /` - Informacje o serwerze i dostępnych możliwościach
- `GET /health` - Health check
- `POST /mcp` - Główny endpoint MCP do komunikacji
## Przykłady użycia
### Health Check
```bash
curl http://localhost:3000/health
```
### Wywołanie narzędzia get_job_listings
```bash
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"method": "tools/call",
"params": {
"name": "get_job_listings",
"arguments": {
"query": "JavaScript",
"location": "Warsaw",
"limit": 5
}
}
}'
```
### Wywołanie narzędzia calculate
```bash
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"method": "tools/call",
"params": {
"name": "calculate",
"arguments": {
"operation": "multiply",
"a": 15,
"b": 7
}
}
}'
```
### Lista dostępnych narzędzi
```bash
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"method": "tools/list",
"params": {}
}'
```
### Lista dostępnych zasobów
```bash
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"method": "resources/list",
"params": {}
}'
```
### Odczyt zasobu
```bash
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"method": "resources/read",
"params": {
"uri": "jobs://featured"
}
}'
```
## Struktura projektu
```
jobs-mcp/
├── src/
│ └── index.ts # Główny plik serwera
├── dist/ # Skompilowane pliki (generowane)
├── .env.example # Przykładowa konfiguracja
├── .gitignore
├── package.json
├── tsconfig.json
└── README.md
```
## Technologie
- **Node.js** - Runtime JavaScript
- **TypeScript** - Typowany JavaScript
- **Express** - Framework webowy
- **@modelcontextprotocol/sdk** - SDK dla MCP
- **CORS** - Obsługa Cross-Origin Resource Sharing
- **dotenv** - Zarządzanie zmiennymi środowiskowymi
## Rozwój
Możesz rozszerzyć serwer dodając:
- Nowe narzędzia w `setRequestHandler(CallToolRequestSchema, ...)`
- Nowe zasoby w `setRequestHandler(ListResourcesRequestSchema, ...)` i `setRequestHandler(ReadResourceRequestSchema, ...)`
- Integracje z prawdziwymi API ofert pracy
- Bazę danych do przechowywania danych
- Autentykację i autoryzację
## Licencja
ISC
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues