Instilla-AI/seontology-mcp-server
3.1
If you are the rightful owner of seontology-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
MCP Server for SEOntology integration - Semantic SEO analysis and optimization
SEOntology MCP Server
๐ MCP Server per l'integrazione con SEOntology - Framework semantico per l'analisi e ottimizzazione SEO
๐ Caratteristiche
- โ Analisi semantica delle pagine web usando SEOntology
- โ Estrazione automatica di keywords e entitร
- โ Generazione schema markup per SEO
- โ Analisi link interni e suggerimenti
- โ Scoring qualitร contenuti multi-dimensionale
- โ Content gap analysis vs competitor
- โ API RESTful completa
- โ Rate limiting e security headers
- โ Health checks e monitoring
- โ Deploy ready su Railway, Docker, ecc.
๐ Quick Start
Sviluppo Locale
# Clone repository
git clone https://github.com/Instilla-AI/seontology-mcp-server.git
cd seontology-mcp-server
# Install dependencies
npm install
# Setup environment
cp .env.example .env
# Edit .env con le tue configurazioni
# Start development server
npm run dev
Deploy su Railway
- Clicca sul bottone "Deploy on Railway" sopra
- Connetti il tuo repository GitHub
- Configura le variabili d'ambiente
- Deploy automatico!
URL Deploy: https://seontology-mcp-production.up.railway.app
๐ API Endpoints
Analisi Pagine
POST /api/analyze
{
"url": "https://example.com",
"options": {
"includeImages": true,
"extractEntities": true,
"qualityScore": true
}
}
Estrazione Keywords
POST /api/keywords
{
"url": "https://example.com",
"maxKeywords": 20,
"minFrequency": 2
}
Generazione Schema
POST /api/schema
{
"url": "https://example.com",
"type": "Article"
}
Analisi Link
POST /api/links
{
"url": "https://example.com",
"checkBroken": true
}
Content Gap Analysis
POST /api/gap-analysis
{
"primaryUrl": "https://mysite.com",
"competitorUrls": [
"https://competitor1.com",
"https://competitor2.com"
],
"topic": "SEO optimization"
}
๐๏ธ Struttura SEOntology
{
"@context": {
"seo": "https://seontology.org/",
"schema": "https://schema.org/"
},
"@type": "seo:WebPage",
"seo:hasURL": "https://example.com",
"seo:title": "Page Title",
"seo:hasQuery": [
{
"@type": "seo:Query",
"seo:queryText": "main keyword",
"seo:searchVolume": 1000
}
],
"seo:qualityScore": {
"@type": "seo:QualityScore",
"seo:overallScore": 85
}
}
๐ง Configurazione
Variabili d'ambiente
Variabile | Descrizione | Default |
---|---|---|
PORT | Porta server | 3000 |
NODE_ENV | Ambiente | production |
HTTP_MODE | Modalitร HTTP per Railway | true |
OPENAI_API_KEY | Chiave OpenAI (opzionale) | - |
RATE_LIMIT_MAX_REQUESTS | Max richieste per finestra | 100 |
๐ณ Docker
# Build image
docker build -t seontology-mcp .
# Run container
docker run -p 3000:3000 -e PORT=3000 seontology-mcp
๐งช Testing
# Run tests
npm test
# Test coverage
npm run test:coverage
# Lint code
npm run lint
๐ Monitoraggio
- Health check:
GET /health
- Metrics:
GET /metrics
- Status:
GET /api/status
๐ ๏ธ Sviluppo
Architettura
- MCP Protocol: Compatibile con Model Context Protocol
- Express API: Server REST per accesso HTTP
- TypeScript: Type-safe development
- Modulare: Servizi separati per ogni funzionalitร
Servizi principali
SEOAnalyzer
: Analisi SEO completaContentExtractor
: Estrazione contenuti webSEOntologyFormatter
: Formattazione dati SEOntology
๐ค Contributi
- Fork del repository
- Crea feature branch (
git checkout -b feature/amazing-feature
) - Commit modifiche (
git commit -m 'Add amazing feature'
) - Push branch (
git push origin feature/amazing-feature
) - Apri Pull Request
๐ Licenza
MIT License - vedi per dettagli.
๐ Link Utili
Creato con โค๏ธ da Instilla-AI