NormDevBlog MCP Server
Integrates with dev.to as a tracked tech publication source, enabling discovery and extraction of dev.to articles for trending content and AI synthesis.
Integrates with Medium as a tracked tech publication source, enabling discovery and extraction of Medium articles for trending content and AI synthesis.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@NormDevBlog MCP Serversync down my recent draft articles as markdown files"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
NormDevBlog MCP Server
The Model Context Protocol (MCP) server for NormDevBlog. Connects AI-powered editors (such as Google Antigravity, Cursor, Claude Desktop, and Windsurf) directly to your NormDevBlog backend for post authoring, local Markdown synchronization, taxonomy management, and safe administrative actions.
Features
Article Management:
list_articles: Discover published and draft articles with category/tag filtering.get_article: Pull article content and YAML frontmatter metadata.create_article: Create drafts or publish immediately.update_article: Edit titles, summaries, content, categories, and tags.publish_article/unpublish_article: Manage publishing state.
Two-Way Local Sync:
sync_down_articles: Export posts to a local folder as Markdown files with YAML frontmatter.sync_up_article: Read edited local Markdown files and sync updates or new posts to the backend.
Human-Gated Safe Deletions:
delete_article&delete_tag: Require explicitconfirmed=Trueto execute; otherwise, returns an informative safety warning without modifying data.
Taxonomy Management:
list_categories&create_categorylist_tags,create_tag, &delete_tag
MCP Resources & Prompt Templates:
Resources:
blog://categories,blog://tags,blog://articles/recentPrompts:
draft_blog_post,review_frontmatter
Related MCP server: wp-mcp
Installation & Setup
1. Requirements
Python 3.11+
Running NormDevBlog backend (
http://localhost:8080)
2. Setup Virtual Environment
cd mcp-server
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt3. Configure Editor (e.g. Antigravity / Cursor / Claude Desktop)
Add the server to your editor's MCP server configuration (e.g., ~/.gemini/antigravity-ide/mcp_config.json or .vscode/settings.json):
{
"mcpServers": {
"normdevblog": {
"command": "/run/media/normdevstorm/data-linux/dang-cay/agentic_ai/projects/normdevblog/mcp-server/.venv/bin/python",
"args": ["-m", "blog_mcp.server"],
"env": {
"BLOG_API_BASE_URL": "http://localhost:8080",
"BLOG_API_TOKEN": "<YOUR_ADMIN_OR_AUTHOR_JWT_TOKEN>"
}
}
}
}Running Tests & Linters
cd mcp-server
.venv/bin/pytest tests/
.venv/bin/ruff check blog_mcp/ tech_radar_mcp/ tests/Tech Radar & Career Intelligence MCP
An autonomous Tech Radar server that keeps you current on the engineering tech landscape — aggregating top articles across favorite publications, extracting clean content for AI synthesis, generating progressive learning roadmaps, and evaluating live job market demand signals — all without any paid API keys.
Tech Radar Features
Multi-Source Article Discovery:
get_top_articles: Query top-voted, trending, or newest articles filtered by topics/tags across all tracked sources.list_trending_tech: Return the top trending tags and categories observed across cached articles.
Source Onboarding (
setup_source):Register any tech publication by name or domain — presets for
bytebytego,devto,baeldung,medium,dailydev.Auto-discovers RSS/Atom feeds from HTML
<link rel="alternate">tags or common probe paths (/feed,/rss,/atom.xml).list_sources: Inspect all configured publications and sync metadata.
Article Content Extraction:
extract_article_content: Fetches the article URL and returns clean, structured Markdown stripped of boilerplate (<nav>,<script>,<header>,<aside>), with code blocks and architecture headings preserved for AI synthesis.
Career & Job Market Intelligence:
assess_job_market: Queries public developer job feeds (RemoteOK) for a target topic, returning hiring demand level (HIGH,MODERATE,EMERGING,NICHE), top required adjacent skills, sample roles, and estimated salary ranges — cached for 24 hours in local SQLite.
AI Learning Roadmap Prompt:
generate_tech_roadmap: Prompt template guiding your agent through a structured 4-stage milestone curriculum for any engineering topic, informed by live trending articles and market demand signals.
MCP Resources:
techradar://sources: JSON snapshot of all active tracked publications.techradar://trending: Top 20 trending articles across all sources.
Tech Radar Installation & Setup
1. Requirements
Python 3.11+
No external databases or paid API keys required
2. Environment Variables (Optional)
Variable | Default | Description |
|
| Path to local SQLite database |
|
| Article cache TTL in minutes |
|
| Max articles fetched per source per sync |
|
| HTTP request timeout in seconds |
3. Configure Editor (e.g. Antigravity / Cursor / Claude Desktop)
Add to your editor's MCP configuration (e.g., ~/.gemini/antigravity-ide/mcp_config.json):
{
"mcpServers": {
"tech-radar": {
"command": "/run/media/normdevstorm/data-linux/dang-cay/agentic_ai/projects/normdevblog/mcp-server/.venv/bin/python",
"args": ["-m", "tech_radar_mcp"],
"env": {
"TECH_RADAR_DB_PATH": "/home/<YOUR_USER>/.tech-radar/radar.db",
"TECH_RADAR_CACHE_TTL_MINS": "30"
}
}
}
}
```AdminTagController#createTag
---
## Tech Radar Usage Examples
### Register a publicationsetup_source(name="bytebytego")
→ Registers https://blog.bytebytego.com/feed immediately
setup_source(name="martinfowler.com")
→ Auto-discovers feed URL from tags
### Discover trending AI contentget_top_articles(tags=["agentic-ai", "llm"], sort_by="TRENDING", limit=5) list_trending_tech(domain="graph-engineering", limit=10)
### Extract article for AI synthesisextract_article_content(url="https://dev.to/example/ai-agents-deep-dive")
→ Returns clean Markdown + extracted code blocks
### Assess tech job marketassess_job_market(topic="AI Agent")
→ Returns demand_level, top_skills, sample_roles, typical_salary_range
### Generate learning roadmapgenerate_tech_roadmap(topic="Graph RAG", current_level="intermediate")
→ Prompts the agent to build a 4-stage milestone curriculum
---
## Tech Radar — Running Tests & Linting
```bash
cd mcp-server
.venv/bin/pytest tests/test_tech_radar_*.py -v
.venv/bin/ruff check tech_radar_mcp/ tests/test_tech_radar_*.pyThis server cannot be deployed
Maintenance
Related MCP Connectors
Publish to self-hosted WordPress from AI agents: markdown, images, SEO, and Notion sync.
Read, write, translate and sync WordPress and Webflow blog articles from Claude.
Manage WordPress blogs and WooCommerce shops from Claude, ChatGPT, Cursor and other MCP apps.
Create, manage, publish, and analyze Inblog content through AI agents.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage VergeCMS blogs through natural language, providing complete CRUD operations for blogs and articles with secure browser-based authentication and automatic token persistence.-
- AlicenseNot gradedqualityDmaintenanceConnects WordPress sites to AI agents, enabling content management through natural language commands via the WordPress REST API.17 npm2MIT
- AlicenseNot gradedqualityAmaintenanceCaptures AI conversation summaries, converts them to Markdown posts, and manages local or remote publishing with metrics tracking.MIT
- FlicenseNot gradedqualityDmaintenanceConnects AI clients to WordPress sites for content management and synchronization, supporting multiple sites with secure token-based authentication.-