Toto Fetch MCP Server
An MCP server that fetches URL content, converts it to Markdown, and optionally processes it with a local LLM (LaMini-Flan-T5). Returns data in TOON format.
Features
- Fetch & Clean: Fetches HTML, extracts main content using
@mozilla/readability, and converts to Markdown withturndown. - Local AI Processing: Optional local LLM processing using
@huggingface/transformers(runningXenova/LaMini-Flan-T5-248M). - TOON Output: Returns structured data in Token-Oriented Object Notation, optimized for agent consumption.
Installation
npm install
Build
npm run build
Usage
As an MCP Server
Add to your MCP client configuration (e.g., Claude Desktop config):
{
"mcpServers": {
"toon-fetch": {
"command": "npx",
"args": ["toon-fetch"]
}
}
}
Tool: fetch_url
Arguments:
url(string, required): The URL to fetch.prompt(string, optional): Instruction for the local LLM.- Example: "Summarize this article"
- Example: "Extract all dates and events"
- If omitted, the raw Markdown content is returned.
Output (TOON):
title: Page Title
content: "Markdown content..."
metadata:
url: "https://example.com"
excerpt: "..."
optimized: true
Development
Workflow
- Install dependencies:
npm install - Run tests:
npm test(uses Vitest) - Build:
npx tsc - Verify: You can use the
src/verify.tsscript (requires build first or ts-node).
Testing
Run unit tests:
npx vitest
License
MIT