Announcing `mcpfetch`: A MCP server for fetching web content

I’ve been furiously writing MCP servers for local LLMs recently since I’m heavily invested in building AI tools with Xojo.

mcpfetch is a MCP server that allows a LLM to request the contents of a URL as Markdown.

I use this in conjunction with mcpkagi (https://github.com/gkjpettet/mcpkagi) which is a Kagi search engine MCP server to discover URLs my LLM might want to add to its context to answer a question.

It takes no command line arguments.

This is how I use it in my mcp.json file for LM Studio:

{
  "mcpServers": {
	"mcpfetch": {
		"command": "/Users/garry/mcpservers/mcpfetch/mcpfetch",
		"args" : []
	}
  }
}

The repository for mcpfetch is on GitHub:

2 Likes

Probably stupid questions: why do you need an mcp server to fetch web content? Why not use a simple CURLSMulti instead? I’m currently working on something similar (AI help for my app). The plan is to get the whole manual with CURLSMulti, shove everything into an SQLite database and use the AI from there.

1 Like

you want to run a server which runs a local LLM with sqlite dbs ? with mcp server for your customers to query ?

If you’re using a local LLM in a client app like LM Studio then the model has no access to anything other than its internal knowledge. If the model thinks it would like to see a web page it would need an external tool to retrieve it.

1 Like

is the last mcpfetch the name of folder or name console app ?

i tried both i got

[Plugin(mcp/mcpfetch)] stderr: Error: spawn /Users/dalu/mcpservers/mcpfetch/mcpfetch EACCES
    at ChildProcess._handle.onexit (node:internal/child_process:286:19)
    at onErrorNT (node:internal/child_process:484:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
  errno: -13,
  code: 'EACCES',
  syscall: 'spawn /Users/dalu/mcpservers/mcpfetch/mcpfetch',
  path: '/Users/dalu/mcpservers/mcpfetch/mcpfetch',
  spawnargs: []
}

thanks

searched with claude

works like this

claude added cwd line

yes confusing to name every thing the same,

anyway let the fun begin ! :slight_smile: thanks again

1 Like