Skip to content

Overview

#Claude

First-party Claude Code plugin that adds a fetch MCP tool, /curl-md:fetch slash skill, and an opt-in WebFetch redirect hook.

#Quick Start

Add the marketplace and plugin, launch Claude Code, and start curling.

  1. Add marketplace

    Add the curl.md plugin marketplace to Claude Code.

    claude plugin marketplace add wevm/curl.md
  2. Install plugin

    Install the curl-md plugin from the marketplace you just added:

    claude plugin install curl-md@curl-md

    Tip

    If Claude is already running, use the /reload-plugins command.

  3. Use Claude

    Now that Claude is running with the curl.md plugin, all you need to do is use Claude. To confirm everything is set up, try this out:

    Read the curl.md Claude plugin docs and summarize how it works.
    https://curl.md/docs/plugins/claude

    Claude will automatically use curl.md to turn URLs you paste, or URLs it decides to fetch on its own, into markdown.

    Tip

    Optionally, authenticate with curl.md auth login or CURLMD_API_KEY to unlock higher usage limits.

#Install

Claude installs plugins through marketplaces, and curl.md ships its marketplace manifest at .claude-plugin/marketplace.json in this repository.

From your terminal:

claude plugin marketplace add wevm/curl.mdclaude plugin install curl-md@curl-md

Or inside Claude:

/plugin marketplace add wevm/curl.md
/plugin install curl-md@curl-md
/reload-plugins

To update when a new version is available, refresh the marketplace, then reinstall the plugin:

claude plugin marketplace update curl-mdclaude plugin install curl-md@curl-md

Or inside Claude:

/plugin marketplace update curl-md
/plugin install curl-md@curl-md
/reload-plugins

Tip

If the plugin still reports the old version after updating, force-update the npm cache and reinstall:

npm install --prefix ~/.claude/plugins/npm-cache @curl.md/claude@latestclaude plugin install curl-md@curl-md

#Configuration

Claude Code’s built-in web reader is WebFetch. Since Claude plugins cannot transparently replace built-in tool results, the curl.md plugin ships a redirect hook that blocks WebFetch and tells Claude to retry with curl.md fetch using the same URL.

OptionTypeDefaultDescription
webfetch_redirectbooleantrueRedirect Claude’s built-in WebFetch tool and tell Claude to retry with curl.md fetch, mapping the original prompt to objective.

Note

By default, the plugin redirects Claude’s built-in WebFetch to curl.md fetch. If you want to turn that redirect off, add the plugin option to your Claude settings:

~/.claude/settings.json
{
  "pluginConfigs": {
    "curl-md@curl-md": {
      "options": {
        "webfetch_redirect": false
      }
    }
  }
}

Claude also prompts for webfetch_redirect when configuring the plugin, and exposes the saved value to the redirect hook automatically.

#Usage

Ask for a page, paste links, or let Claude figure out what it needs to fetch.

#Prompting

Inside Claude, prompt like you normally would, for example:

Read the Cloudflare Agents docs and summarize the core concepts.
https://developers.cloudflare.com/agents

In this example, Claude will use curl.md to fetch the page and return markdown optimized for agents.

You can also tell Claude to use a specific objective, keywords, or let it decide what to use on its own (it’s really good at this).

#Authentication

The plugin uses the same auth model as the CLI. Log in to connect the plugin to your curl.md account or organization:

curl.md auth login

For non-interactive environments, set CURLMD_API_KEY.

#Skills

After installing, Claude registers the following slash skill:

SkillDescription
/curl-md:fetchExplicitly tells Claude to use the fetch tool.

#Tools

The plugin also registers the following tool:

ToolDescription
fetchFetch a URL as markdown.

The fetch tool accepts the following inputs:

InputTypeDescription
urlstringHTTP(S) URL or bare domain to fetch. Prefer the canonical docs or article URL.
objective?stringSpecific question to answer from the page. Use when only part matters.
keywords?string[]Keywords to focus extraction on relevant sections.
mode?rush / smartUse rush for speed or smart for better section selection on long or noisy pages.
fresh?booleanBypass cache when freshness matters.

#Status/Debugging

If you want to confirm Claude loaded the plugin correctly:

/mcp
/skills

You should see the fetch MCP tool and the /curl-md:fetch skill.

#Contributing

We welcome improvements to make the Claude plugin better. Feel free to create issues or pull requests on GitHub if there are issues or something could be improved.

Edit page

Last updated: May 5 3:02 PM