article-scraper-mcp
Click on "Install 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., "@article-scraper-mcpfetch article from https://example.com/news"
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.
Article Scraper MCP
A Model Context Protocol (MCP) server that fetches article data from URLs using newspaper3k.
Features
Extract article title, text, author, and publication date
Robust error handling and URL validation
Structured data output
Built with FastMCP for easy integration
Related MCP server: Web Scraper MCP Server
Installation
Install directly from PyPI:
uvx article-scraper-mcpUsage
Add to your MCP client configuration:
{
"mcpServers": {
"article-scraper": {
"command": "uvx",
"args": ["article-scraper-mcp"]
}
}
}API
fetch_article(url: str) -> dict[str, Any]
Fetches and parses a news article from the given URL.
Parameters:
url: The URL of the news article to fetch
Returns: A dictionary containing:
title: Article titletext: Article content textauthor: Author name(s) (may be None)date: Publication date in ISO format (may be None)
Raises:
ValueError: If URL is invalid or article cannot be parsedrequests.RequestException: If HTTP request fails
Requirements
Python 3.11+
newspaper3k
requests
loguru
mcp[cli]
License
MIT
Available Tools
1 toolfetch_articleA
Fetch a news article by URL and return structured data.
Args:
url: The URL of the news article.
Returns:
A dict with keys: title, text, author, date.
Raises:
ValueError: If URL is invalid or article cannot be parsed.
requests.RequestException: If HTTP request fails.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool raises ValueError for invalid URLs and requests.RequestException for HTTP failures. It does not mention other behaviors like caching, speed, or idempotency, but for a simple fetch tool, the error disclosure is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with clear sections for Args, Returns, and Raises. It is comprehensive without being verbose. A slight reduction in verbosity (e.g., removing trivial lines) could improve conciseness, but it remains efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool (one parameter, no siblings), the description is complete. It explains input, output format, and error conditions. An output schema exists, so the return structure is also formally defined. No gaps remain for an agent to use this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter 'url' has a brief description 'The URL of the news article' in the docstring, but schema coverage is 0% (the schema has no description). The description adds minimal meaning beyond the parameter name. For a single required string parameter, this is adequate but not exemplary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches a news article by URL and returns structured data with specific keys (title, text, author, date). The verb 'Fetch' and resource 'news article' are specific, and the return structure is explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No sibling tools are provided, so differentiation is not required. However, the description lacks explicit guidance on when to use this tool versus alternatives (e.g., for summary or translation). The Args/Returns/Raises format implies usage but does not give contextual cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v0.1.0- First observed
fetch_article
TDQS
Only one tool exists, so there is no possibility of confusion between tools. The purpose is singular and clear.
With only one tool, naming consistency is not an issue. The name 'fetch_article' follows a clear verb_noun pattern.
One tool is minimal for a server named 'article-scraper-mcp', which might imply more features like batch fetching or source listing. However, the tool is functional and well-defined, so it is borderline acceptable.
The single tool covers the core operation of fetching a structured article from a URL. Minor gaps exist, such as lack of support for multiple articles or error handling variations, but the basic use case is fully addressed.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Fetch pages as markdown, search web and news, extract structured data. For AI agents.
Turn any URL into clean Markdown and structured data. Scrape, crawl, search and extract.
Fetch any URL and get clean Markdown. Web scraping for AI agents.
Clean Markdown and AI-readability scoring for any URL. Built for AI agents.
11
Related MCP Servers
- AlicenseCqualityDmaintenanceEnables access to news from multiple sources including Google News and DuckDuckGo, supporting queries by location, category, site, date range, and providing top news headlines with detailed information.7MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to fetch, clean, and extract readable content from web pages, optionally including links and images, via the scrape_url tool.-
- FlicenseNot gradedqualityDmaintenanceEnables searching news articles and fetching top headlines via GNews API with filtering options.-
- FlicenseNot gradedqualityDmaintenanceEnables fetching top headlines, searching news articles across 150,000+ sources, and listing available news sources via NewsAPI.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dmitriiweb/article-scraper-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server