Professor Sausages — Web & Documents

com.professorsausagesPublished by professorsausages.comOfficial publisherv1.0.1Updated Oct 24, 2026

Read pages & files to text, news, weather, market holidays and timezones via x402.

The publisher's own server: Professor Sausages — Finance

Overview

AI-generated overview

A remote paid MCP server that lets an assistant read web pages and PDFs, fetch news, weather, market holidays and timezone data, and search its data catalog.

What you can do
Exposes twelve tools over a remote HTTP endpoint. find_data takes a plain-language request and searches the server's datasets and catalog for matching endpoints with method, URL and price; pricing lists every endpoint and its per-call USD price for free. Paid tools include read_url (headless-browser rendering to markdown), pdf_extract (PDF up to 10 MB by URL), image_to_text (OCR or vision description), news, news_poll, news_batch, weather, holidays and timezone. request_data is a free suggestion box for data the catalog lacks.
When to use it
Useful when an assistant needs rendered page content that plain fetching cannot get, PDF or image text extraction, curated news feeds with cursor-based polling, or small reference lookups such as weather, market holidays and timezone conversion, without running local tooling.
Requirements
A remote streamable HTTP endpoint; no local runtime or package is needed. No authentication, environment variables or headers are declared. Paid tools require an x402 payment flow: call without x_payment to get the terms, sign them, then call again with x_payment, paying in USDC on Base. Network access is required.
Before you install
Most tools cost money per call in USDC on Base; check the free pricing tool first and be aware that each paid call involves signing a payment. read_url, pdf_extract and image_to_text send the supplied URL or image to the server, and image_to_text may pass it to a vision model. request_data submissions, including any contact details, feed an ingestion queue.

Installation

In SourceWeft

  1. Open Professor Sausages — Web & Documents in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.professorsausages%2Fsausage-web/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "professor-sausages-web-documents": {
      "type": "http",
      "url": "https://x402.professorsausages.com/mcp/web"
    }
  }
}

Tools

12

find_data

Find the right data source

Describe the data you need in plain language (e.g. 'Apple risk factors 2023', 'is this token a honeypot', 'is this email deliverable', 'read this page'). Searches this server's datasets first, then the whole Professor Sausages catalog, and returns matching endpoints with method, URL, price, and how to call them. Free.

Parameterstaskrequired

pricing

Price list

Every endpoint this server fronts, with its exact per-call USD price (x402, USDC on Base) and a one-line summary, read live from the route table. Free.

Takes no parameters.

request_data

Request missing data

The suggestion box: ask for data we don't have (a pre-2015 filing, an uncovered ticker, an unsupported chain, a whole dataset). Requests feed the nightly ingestion queue — filings are usually available within ~24h. Include contact if you want to hear back. Free.

Parameterscontactuse_casedescriptionrequired

read_url

Read a page as markdown

Render a URL in a real headless browser (JavaScript executed) and return clean, LLM-ready markdown. Use this when fetch() gives you an empty shell or a bot wall. Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parametersurlrequiredx_payment

pdf_extract

PDF to text or JSON

Extract any PDF up to 10 MB by URL. format='text' returns one clean plain-text string; format='json' returns a per-page text array plus document metadata. Parsed in-Worker, no upstream service. Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parametersurlrequiredformatx_payment

image_to_text

OCR or describe an image

Transcribe an image to text (OCR) or describe it via a vision model — steerable with your own prompt. Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parametersurlrequiredpromptx_paymentmax_tokens

news

Headlines and news search

Newest headlines from a deduped, tiered direct-feed pile (official press, wires and majors). Pass q to keyword-search the retained multi-day archive instead; category='ai' or 'crypto' return the high-signal curated cuts. Snapshot of ingested feeds, not a live web search. Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parametersqlimitsincecategoryx_payment

news_poll

Poll the news for what's new since your last call

The polling loop for a news-watching agent. First call: omit `since` — you get the current page plus a `next_cursor`. Every later call: pass that `next_cursor` as `since` and receive ONLY articles ingested after it, oldest first, plus the next cursor to store. Follow the whole pile (optionally one `category`) or a curated high-signal `topic` tape (ai, crypto). The pile refreshes every 15 minutes (`suggested_interval_seconds`); dedupe by article `id`, and by `cluster_id` to keep one record per story. A poll with nothing new is still a complete answer (new_count 0, cursor unchanged). Full loop + a paying Node poller: /skills/news.md. Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parameterslimitsincetopiccategoryx_payment

news_batch

Several news reads in one paid call

Up to 10 headlines / ai / crypto / search reads behind ONE payment (POST /news/batch). Each request names a `route` and carries that route's own parameters — including `since` with a cursor, so one batch can advance several polls at once. `data.results[i]` is exactly the single-route answer for `requests[i]`, in order, each with its own `next_cursor` to store per feed. Every element is validated before any payment is asked for. Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parametersrequestsrequiredx_payment

weather

Weather now, forecast, or alerts

Current conditions for a named place or coordinate. view='forecast' returns the hourly series; view='alerts' returns active severe-weather alerts (US coverage). Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parameterslatlonviewhoursplacex_payment

holidays

Market calendars & settlement dates

Is a market open on a date, and why not if it isn't. view='next_session' finds the next open day; view='settle' computes a T+N settlement date skipping weekends and holidays; view='business_days' counts open sessions in a range; view='year' lists a calendar's whole year. Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parameterstodatedaysfromviewyearmarketx_payment

timezone

Time, offsets & business hours

Current local time, UTC offset and DST state for an IANA zone. view='offset' answers at a specific instant; view='convert' moves a wall-clock time between two zones; view='business_hours' says whether an instant is inside local business hours. Paid: call without x_payment to receive this call's exact terms (amount, asset, network), sign them, then call again with x_payment. The free `pricing` tool lists every price at once.

Parametersattoopentimeviewzonerequiredclosex_payment

Version history

1
  1. v1.0.1LatestSep 16, 2026

Score

72% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts

    Publish an icon in the registry entry.

  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.

Other Professorsausages integrations