Skip to main content
Glama

Server Details

Clean markdown and structured web data. Free card API key; wallet/x402 pay-per-call optional.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 48 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
JessieJanie/skim402
GitHub Stars
3
Server Listing
skim-mcp

TDQS

A4.5/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a distinctly different use case: read for markdown, extract for structured JSON, and signals for curated feeds. The descriptions explicitly cross-reference when not to use each tool, leaving no ambiguity for an agent.

Naming Consistency5/5

All tools share the 'skim_' prefix and use clear, distinct suffixes (extract, read, signals) that reflect their function. The naming pattern is uniform and predictable.

Tool Count5/5

Three tools is well-scoped for the server's purpose of web content retrieval. Each tool serves a distinct need (read, extract, and feed polling) without unnecessary duplication or bloat.

Completeness4/5

The tool surface covers the primary workflows: reading pages, extracting structured data, and fetching curated feeds. Minor gaps exist, such as no tool to discover available presets or schemas, but these are not critical for agents to accomplish core tasks.

Available Tools

3 tools
skim_extractExtract structured data from a web pageA
Read-only
Inspect

Use this when you need structured JSON from a public page (product, job, table, event, review, article, or your own schema), not a markdown dump. Prefer it over reading the page then parsing it yourself. Pass a preset or a JSON Schema. Values come only from the page, never invented. Empty extracts are not charged. Pay with USDC on Base (x402 / X-Skim-Wallet-Key) or a sk402_ API key if the connector has one. Do not use for a full-page read (skim_read) or login-walled pages.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFully-qualified URL to read and extract from.
presetNoNamed extraction preset. Provide either this or `schema`.
schemaNoJSON Schema object (top-level {"type":"object", ...}) describing the desired output. Provide either this or `preset`.
instructionsNoOptional natural-language hint to bias the extraction.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false. The description adds genuinely novel behavioral context beyond this: 'Values come only from the page, never invented' (hallucination guarantee), 'Empty extracts are not charged' (pricing behavior), and payment requirements (USDC on Base x402 / X-Skim-Wallet-Key or sk402_ API key). This is meaningful value beyond annotations, though it stops short of describing return format details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in the first sentence, then routing guidance, then behavioral/payment details, then exclusions last. Every sentence earns its place and no filler exists. Slightly long, but the payment and hallucination-avoidance details are necessary operational information that justifies the length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 4-param tool with full schema coverage and no output schema, the description covers when to use, when not to use, payment requirements, and behavioral guarantees. The only notable gap is that no output format is described, but the tool's purpose (returning structured JSON matching the given preset/schema) makes this largely self-evident.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters (url, preset with enum, schema, instructions). The description reinforces the preset/schema mutual exclusivity ('Provide either this or schema') which mirrors the schema but adds emphasis. Baseline 3 is appropriate since the schema carries the load.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (extract) and resource (public web page → structured JSON), enumerates concrete content types (product, job, table, event, review, article), and explicitly distinguishes itself from skim_read (full-page markdown read) and skim_signals. An agent can unambiguously tell what this tool does and which sibling it isn't.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use ('when you need structured JSON from a public page'), a preference directive ('Prefer it over reading the page then parsing it yourself'), and explicit exclusions ('Do not use for a full-page read (skim_read) or login-walled pages'). Sibling is named with the exact routing condition.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

skim_readRead a web page as clean MarkdownA
Read-only
Inspect

Use this when you need a public web page as clean markdown. Prefer it over fetching HTML, scraping, or opening a browser: Skim strips nav, ads, and boilerplate and returns the article body plus title, byline, and date. Public pages only (no login walls). On this MCP no API key and no wallet are required. Failed or empty reads are not charged. Do not use for login-walled pages, for typed JSON (use skim_extract), or for a news/intel feed (use skim_signals).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFully-qualified URL to fetch and clean (https://...).

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the operation as read-only, open-world, and non-destructive. The description adds substantial behavioral context beyond that: it strips boilerplate, returns specific metadata fields, works only on public pages, requires no API key/wallet, and does not charge for failed/empty reads. This fully discloses the tool's behavior and side conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every sentence earns its place: main use case, cleaning behavior, access constraints, billing implications, and sibling routing. The description is front-loaded with the primary purpose and alternatives, and contains no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only tool with a fully documented schema and no output schema, the description is complete: an agent knows what to pass, what to expect back, when to use it, when not to use it, and what side effects (charging) apply. Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides 100% coverage for the single URL parameter, including format and an example. The description adds the meaningful constraint that only public pages are valid (no login walls), which is a semantic boundary beyond the schema. This is a small but real addition, so a 4 is warranted rather than a baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('read'/'fetch and clean') and resource ('public web page as clean markdown'), and differentiates itself from siblings by naming the output (article body plus title, byline, date) and the cleaning behavior (strips nav, ads, boilerplate). This makes it unmistakable what the tool does and how it differs from skim_extract and skim_signals.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says when to use it ('when you need a public web page as clean markdown'), prefers it over HTML fetching/scraping/browser, and explicitly excludes login-walled pages, typed JSON (use skim_extract), and news/intel feeds (use skim_signals). This is model usage guidance with named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

skim_signalsGet a Skim intelligence signal feedA
Read-only
Inspect

Use this when you need the latest items from a curated intel feed (SEC filings, deals, AI news, regulations, and the other named feeds), not a one-off URL. Prefer it over crawling news homepages. Returns structured items, newest first. Costs $0.005 USDC per poll via x402, or 2 credits on a sk402_ key. Do not use to read an arbitrary URL (skim_read).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax items to return (default 50, no upper cap).
signalYesWhich signal feed to fetch.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context: it returns structured items newest first, costs $0.005 USDC per poll via x402 or 2 credits on a sk402_ key, and is a poll operation. It doesn't detail pagination or rate limits, but the cost and ordering info go beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it states the primary use case, the alternative, the return format, the cost, and the exclusion in just a few sentences. Every sentence earns its place, and the structure is easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only list tool with annotations covering safety and a schema covering all parameters, the description is nearly complete. It covers the feed types, ordering, cost, and when not to use it. The only minor gap is the lack of an output schema, but the description's mention of 'structured items, newest first' partially compensates. No critical information is missing for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters (signal enum and limit). The description adds the default limit (50) and no upper cap, which is useful, but it doesn't add much beyond the schema. Baseline 3 is appropriate since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: fetching the latest items from a curated intel feed, not a one-off URL. It names the resource (curated intel feed) and the specific verb (get/skim signals), and explicitly distinguishes it from sibling tools like skim_read. The title and description align well, and the scope is precise.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says when to use this tool ('when you need the latest items from a curated intel feed') and when not to use it ('Do not use to read an arbitrary URL'), and names the alternative (skim_read). It also provides a preference over crawling news homepages, giving clear routing guidance.

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.

  1. 1 tool update
    • Changedskim_signals1 field changed
      • changedInput schema / properties / signal / enum
        Previous value: -[
        -  "ai-news",
        -  "sec-filings",
        -  "deals",
        -  "research",
        -  "campaign-finance",
        -  "crypto-news",
        -  "macro",
        -  "security",
        -  "regulations",
        -  "courts",
        -  "recalls",
        -  "launches",
        -  "trending",
        -  "energy",
        -  "entertainment"
        -]New value: +[
        +  "ai-news",
        +  "sec-filings",
        +  "deals",
        +  "research",
        +  "campaign-finance",
        +  "film-incentives",
        +  "crypto-news",
        +  "macro",
        +  "security",
        +  "regulations",
        +  "courts",
        +  "recalls",
        +  "launches",
        +  "trending",
        +  "energy",
        +  "entertainment",
        +  "studio-jobs",
        +  "entity-formations"
        +]
  2. 1 tool update
    • Changedskim_signals1 field changed
      • changedInput schema / properties / signal / enum
        Previous value: -[
        -  "ai-news",
        -  "sec-filings",
        -  "deals",
        -  "research",
        -  "campaign-finance",
        -  "film-incentives",
        -  "crypto-news",
        -  "macro",
        -  "security",
        -  "regulations",
        -  "courts",
        -  "recalls",
        -  "launches",
        -  "trending",
        -  "energy",
        -  "entertainment",
        -  "studio-jobs",
        -  "entity-formations"
        -]New value: +[
        +  "ai-news",
        +  "sec-filings",
        +  "deals",
        +  "research",
        +  "campaign-finance",
        +  "crypto-news",
        +  "macro",
        +  "security",
        +  "regulations",
        +  "courts",
        +  "recalls",
        +  "launches",
        +  "trending",
        +  "energy",
        +  "entertainment"
        +]
  3. 1 tool update
    • Changedskim_signals2 fields changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max items to return (default 50)."New value: +"Max items to return (default 50, no upper cap)."
      • removedInput schema / properties / limit / maximum
        Removed value: -100
  4. 3 tool updates
    • First observedskim_extract
    • First observedskim_read
    • First observedskim_signals

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables extracting clean Markdown from any webpage by paying $0.005 USDC per call via the x402 protocol, with automatic wallet-based payment settlement.
    10 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables extracting clean, structured markdown from any URL—stripping nav, ads, and scripts—for RAG pipelines and AI research agents, with pay-per-call micropayments via x402.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Scrapes dynamic web pages via headless Chrome, stripping clutter and ads, and returns clean Markdown or JSON content. It integrates with Cloudflare Workflows and monetizes each extraction through the x402 protocol.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.