<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Kyle Czajkowski</title>
    <description>The latest articles on DEV Community by Kyle Czajkowski (@kyleski).</description>
    <link>https://dev.to/kyleski</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3498013%2F978246c0-3441-4010-8511-ca8be2b4f74d.jpeg</url>
      <title>DEV Community: Kyle Czajkowski</title>
      <link>https://dev.to/kyleski</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kyleski"/>
    <language>en</language>
    <item>
      <title>Introducing My Hiking Trip Planner: Motivation and Overview</title>
      <dc:creator>Kyle Czajkowski</dc:creator>
      <pubDate>Tue, 23 Sep 2025 18:28:21 +0000</pubDate>
      <link>https://dev.to/kyleski/introducing-my-hiking-trip-planner-motivation-and-overview-2k5</link>
      <guid>https://dev.to/kyleski/introducing-my-hiking-trip-planner-motivation-and-overview-2k5</guid>
      <description>&lt;h2&gt;
  
  
  Motivation and Overview
&lt;/h2&gt;

&lt;p&gt;Have you ever struggled to plan the perfect outdoor adventure? Juggling routes, deciphering weather forecasts, and wondering if you've remembered everything? I've been there. To make life easier for other adventurers, I've started developing a hiking trip planner that simplifies the process and eases any pre-trip doubts.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Motivation
&lt;/h2&gt;

&lt;p&gt;After experiencing burnout in my software engineering career, I revisited an idea I'd been sitting on for years. In doing so, I reignited my passion for coding, development, and exploring new technologies. This project gives me a way to channel my skills into something meaningful, with the potential to genuinely help others.&lt;/p&gt;

&lt;h2&gt;
  
  
  Project Overview
&lt;/h2&gt;

&lt;p&gt;Right now, my project is an item inventory, checklist, and trip planning app. It's a work in progress, with several features either still in development or open to improvement.&lt;/p&gt;

&lt;p&gt;The user interface is primarily designed a central dashboard that highlights the next upcoming trip, and includes a current weekly weather widget, localized to the upcoming trip destination. Past trips are also archived here. I've added a widget that displays the user's allocated AI recommendation usage in an easily digestible way. While I don't have monetization plans for the app yet, I found this was a fun and simple feature to include.&lt;/p&gt;

&lt;p&gt;The dashboard also features placeholders for sustainable packing tips, weather updates, and safety alerts customized for upcoming trips. I intend to leverage Claude integrations to implement these functionalities, and I'm particularly interested in exploring the development of &lt;a href="https://github.com/anthropics/courses/tree/master/tool_use" rel="noopener noreferrer"&gt;function calls&lt;/a&gt; (tools) for these features.&lt;/p&gt;

&lt;p&gt;I'm especially proud of the personalized AI trip recommendations feature I developed. Users can choose to incorporate these into their checklists, making the process even more tailored to their needs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technologies Used
&lt;/h2&gt;

&lt;p&gt;I've chosen a mix of familiar tools and new technologies to challenge myself.&lt;/p&gt;

&lt;h3&gt;
  
  
  Familiar Ground
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://nextjs.org/" rel="noopener noreferrer"&gt;Next.js&lt;/a&gt;&lt;/strong&gt;: As an experienced React developer, I can move quickly with this performance-focused framework. Its built-in features, such as API endpoints, middleware, and server-side rendering (SSR), streamline the process of building full-stack apps while ensuring optimized performance and scalability. The framework's focus on developer experience, with features like automatic code splitting and fast refresh, helps me stay productive and efficient.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TypeScript&lt;/strong&gt;: This has become a favorite of mine for its ability to keep code maintainable. The language also saves time by making old code easy to revisit and understand. Plus, having your code editor nudge you about available properties is always a win.&lt;/p&gt;

&lt;h3&gt;
  
  
  Exploring New Terrain
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://supabase.com/" rel="noopener noreferrer"&gt;Supabase&lt;/a&gt;&lt;/strong&gt;: This is an incredible open-source solution for database management. It offers a feature-rich free tier that includes authentication, user management, and plenty of room to grow as your project scales. While they market themselves as a "Firebase Alternative," I find their documentation much easier to follow than Google's. Being open-source also fosters an active and supportive community, and I've had an easier time finding solutions to problems quickly by leveraging those community replies. Moving forward, Supabase will definitely be at the top of my list for database solutions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.anthropic.com/api" rel="noopener noreferrer"&gt;Anthropic API&lt;/a&gt;&lt;/strong&gt;: My earliest experience working with AI was with machine learning about six years ago, using tools like &lt;a href="https://www.tensorflow.org/js/models" rel="noopener noreferrer"&gt;TensorFlow.js&lt;/a&gt; for object detection, image classification, and other small, fun projects. Those experiments taught me valuable lessons about how neural networks work their magic (maybe a topic for the future?). &lt;/p&gt;

&lt;p&gt;That said, I've had reservations about more recent AI tooling. The ethics of how these companies collect data to train their Large Language Models (LLMs) are murky at best. While LLMs are, at their core, sentence-completion networks, I've questioned the depth of their real-world utility beyond specific use cases like chatbots. However, with the rapid pace of development and the addition of new functionality and architectural complexities, these tools are beginning to prove their worth—though it's debatable how many truly useful ones have surfaced.&lt;/p&gt;

&lt;p&gt;For this project, I stepped out of my comfort zone to challenge my biases against LLMs and chose to integrate Anthropic's API. I evaluated offerings from OpenAI, Google, Microsoft, IBM, and Meta before deciding on Anthropic for several reasons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Cost-effective&lt;/strong&gt;: One of the most budget-friendly options available&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model variety&lt;/strong&gt;: The ability to choose between different models—like Haiku, Sonnet, and Opus—based on budget and functionality needs&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Developer-focused documentation&lt;/strong&gt;: Outstanding docs clearly designed with developers in mind, not just large corporations&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transparent tooling&lt;/strong&gt;: Intuitive dashboard with clear billing, token cost tracking, and spending limits&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Customization&lt;/strong&gt;: Allows you to fine-tune how your "AI assistant" behaves&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It's evident that Anthropic deeply cares about the product they're bringing into the world and the impact it will have.&lt;/p&gt;

&lt;p&gt;One feature that particularly excites me is their recently open-sourced &lt;a href="https://www.anthropic.com/news/model-context-protocol" rel="noopener noreferrer"&gt;Model Context Protocol (MCP)&lt;/a&gt;, which I am looking forward to exploring further and plan to write more about it as I dig in. I'm confident we'll be seeing and using more of this kind of innovation in the near future. With MCP, I could also experiment with introducing tools that directly modify the database, opening up possibilities for seamless data management and dynamic interactions within applications.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The Model Context Protocol is an open standard that enables developers to build secure, two-way connections between their data sources and AI-powered tools. The architecture is straightforward: developers can either expose their data through MCP servers or build AI applications (MCP clients) that connect to these servers.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Challenges and Learnings
&lt;/h2&gt;

&lt;p&gt;As a seasoned software engineer, I'm well-versed in writing code, fixing bugs, and troubleshooting, but managing my own projects and balancing the research and development of each feature has proven to be a unique challenge. This is by far the most ambitious solo project I've undertaken, and my initial tendency to dive straight into coding wasn't going to work here. I realized I needed to approach each feature individually, compartmentalizing my work to ensure every detail was carefully planned and accounted for.&lt;/p&gt;

&lt;p&gt;For example, I didn't set up a local Supabase database initially and relied solely on the deployed version. It worked, but when I started thinking about collaboration or offline development, I realized why developing against production wasn't going to be sustainable long-term. That's when I finally went back to the docs and saw that, of course 🤦, there's an &lt;a href="https://supabase.com/docs/guides/local-development" rel="noopener noreferrer"&gt;entire section&lt;/a&gt; about how to develop locally and use Supabase's CLI.&lt;/p&gt;

&lt;p&gt;While it felt like a setback at the time, it turned into a great learning opportunity. I've since explored features like generating types from the database and managing migrations locally before deploying them. This experience was a reminder of the value of understanding new tools thoroughly before diving in.&lt;/p&gt;

&lt;h2&gt;
  
  
  Future Plans
&lt;/h2&gt;

&lt;p&gt;I'm embracing my inner project manager and taking a more deliberate approach to development. Here's what's on the horizon:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Styling Improvements&lt;/strong&gt;: I want to incorporate sweeping landscape photos that my wife and I have taken, bringing a personal touch to the app's design.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Personalized AI Responses&lt;/strong&gt;: Enhancing the AI assistant to provide even more tailored recommendations for users. This will help give better recommendations and give the user genuinely good (for them) information.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sharing Features&lt;/strong&gt;: Allowing users to share checklists and trips with others. As well as adding more collaboration features.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Food Planning&lt;/strong&gt;: A tool to help users pack the right amount of food for their trips. No more overpacking or running out of snacks!&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Machine Vision Tool&lt;/strong&gt;: I have an exciting idea in mind, but I'll keep the details under wraps for now. Stay tuned!&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Wrapping Up
&lt;/h2&gt;

&lt;p&gt;This project has been an incredible journey, and I'm excited to keep refining it. If you're a backpacker, I hope this app makes your adventures easier and more enjoyable. Check out the code &lt;a href="https://github.com/Kyle-Ski/leaf-n-go" rel="noopener noreferrer"&gt;over on GitHub&lt;/a&gt;, and let me know what you think—I'd love your feedback! &lt;/p&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://kyle.czajkowski.tech/blog/introducing-my-hiking-trip-planner-motivation-and-overview" rel="noopener noreferrer"&gt;my blog&lt;/a&gt; where I write about tech, outdoor adventures, and the intersection of both. For more content like this, visit &lt;a href="https://kyle.czajkowski.tech" rel="noopener noreferrer"&gt;kyle.czajkowski.tech&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>nextjs</category>
      <category>supabase</category>
      <category>typescript</category>
      <category>ai</category>
    </item>
    <item>
      <title>Troubleshooting Claude’s Remote Connection to MCP Servers</title>
      <dc:creator>Kyle Czajkowski</dc:creator>
      <pubDate>Mon, 15 Sep 2025 15:20:09 +0000</pubDate>
      <link>https://dev.to/kyleski/troubleshooting-claudes-remote-connection-to-mcp-servers-13d7</link>
      <guid>https://dev.to/kyleski/troubleshooting-claudes-remote-connection-to-mcp-servers-13d7</guid>
      <description>&lt;p&gt;I was very excited to hear about &lt;a href="https://www.anthropic.com/news/integrations" rel="noopener noreferrer"&gt;Anthropic’s announcement&lt;/a&gt; in May, that we now have the ability to add integrations to Claude. Connecting to remote MCP (Model Context Protocol) servers and not just local ones is a major step forward. AI systems like Claude are no longer limited by the age of their training data. They can pull in up-to-date context and use tools provided by these integrations (MCP servers).&lt;/p&gt;

&lt;h2&gt;
  
  
  Diagnosing the Initial Connection Failure
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://modelcontextprotocol.io/docs/getting-started/intro" rel="noopener noreferrer"&gt;Adding MCP servers to Claude desktop&lt;/a&gt; is relatively straightforward, so I jumped right in. I already have a remote MCP server running and a few examples from other companies I wanted to try. Since I’ve been exploring Cloudflare’s offerings lately, I decided to start with their &lt;a href="https://github.com/cloudflare/mcp-server-cloudflare/tree/main/apps/docs-vectorize" rel="noopener noreferrer"&gt;documentation server&lt;/a&gt;. After restarting Claude, I saw error messages saying that it couldn’t connect to the Cloudflare server. I double checked my config, everything looked correct, so I went to the &lt;a href="https://modelcontextprotocol.io/legacy/tools/debugging" rel="noopener noreferrer"&gt;troubleshooting documentation&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"cloudflare-docs"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"command"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"npx"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"args"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"mcp-remote"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"https://docs.mcp.cloudflare.com/sse"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Inspecting Claude Desktop Logs
&lt;/h2&gt;

&lt;p&gt;I walked through the debugging checklist in the MCP docs. The MCP inspector confirmed the Cloudflare server was up and running. Next I checked Claude’s logs:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;tail&lt;/span&gt; &lt;span class="nt"&gt;-n&lt;/span&gt; 20 &lt;span class="nt"&gt;-F&lt;/span&gt; ~/Library/Logs/Claude/mcp&lt;span class="k"&gt;*&lt;/span&gt;.log

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I was able to quickly see that I was running into an issue importing something from node:fs/promises.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;file:///Users/kyle/.npm/_npx/705d23756ff7dacc/node_modules/open/index.js:7
import fs, &lt;span class="o"&gt;{&lt;/span&gt;constants as fsConstants&lt;span class="o"&gt;}&lt;/span&gt; from &lt;span class="s1"&gt;'node:fs/promises'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
                ^^^^^^^^^
SyntaxError: The requested module &lt;span class="s1"&gt;'node:fs/promises'&lt;/span&gt; does not provide an &lt;span class="nb"&gt;export &lt;/span&gt;named &lt;span class="s1"&gt;'constants'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I noticed that this was coming from my .npm/_npx directory, so I wondered about my Node version. I was already on the latest Node (22.15.0) and npm was up to date too, but I ran an upgrade anyway:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; npm@latest

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then cleaned the cache&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm cache clean &lt;span class="nt"&gt;--force&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After reinstalling and cleaning, I restarted Claude Desktop and the server connected! Amazing! I could ask Claude about workers, durable objects, whatever I needed, and I would get the most up to date information.&lt;/p&gt;

&lt;h2&gt;
  
  
  Encountering the TransformStream Error
&lt;/h2&gt;

&lt;p&gt;When I tried to add another server, the connection failed again. The logs showed a different error in the mcp-remote package:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;file:///Users/kyle/.npm/_npx/705d23756ff7dacc/node_modules/mcp-remote/dist/chunk-YJSTSVFG.js:6264
var EventSourceParserStream &lt;span class="o"&gt;=&lt;/span&gt; class extends TransformStream &lt;span class="o"&gt;{&lt;/span&gt;
                              ^

ReferenceError: TransformStream is not defined
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This was odd because the mcp-remote package doesn’t using the TransformStream functionality. It’s a browser standard not implemented in Node.js. I double checked, and saw that my node and npm versions were still up to date. So this made me think that Claude was somehow invoking a version of node that I hadn’t used in a while.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ensuring Claude Uses the Right Node Binary
&lt;/h2&gt;

&lt;p&gt;Checking around the internet I found a &lt;a href="https://github.com/modelcontextprotocol/servers/issues/64" rel="noopener noreferrer"&gt;GitHub Issue thread&lt;/a&gt; that confirmed my suspicions. Apparently nvm does not always play nicely with host apps like Claude Desktop. The thread offered several workarounds.&lt;/p&gt;

&lt;p&gt;One reliable fix was to point directly to the Node binary instead of using npx:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;  
  &lt;/span&gt;&lt;span class="nl"&gt;"mcpServers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"YOUR SERVER NAME"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"command"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"/Users/username/.nvm/versions/node/v22.15.0/bin/node"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"args"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"mcp-remote"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"PATH TO THE MCP SERVER YOUR'E USING"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can also keep npx as the command and set the PATH explicitly:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;  
  &lt;/span&gt;&lt;span class="nl"&gt;"mcpServers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"YOUR SERVER NAME"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"command"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"npx"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"args"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"mcp-remote"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"PATH TO THE MCP SERVER YOUR'E USING"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"env"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"PATH"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"/Users/username/.nvm/versions/node/v20.15.0/bin:/bin"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Another option is to remove older Node versions below 18.20.4 from your system. That may not suit everyone but it ensures Claude Desktop always uses a compatible Node version.&lt;/p&gt;

&lt;p&gt;I hope this post offers a bit more insight into debugging remote MCP servers with Claude Desktop. My issues were resolved by ensuring Claude always runs the correct Node binary. These tips should help you avoid version mismatches and get your integrations up and running more smoothly. If you’d like to explore more MCP server examples, check out &lt;a href="https://blog.cloudflare.com/mcp-demo-day/" rel="noopener noreferrer"&gt;Cloudflare’s Demo Day&lt;/a&gt; write-up and &lt;a href="https://blog.cloudflare.com/thirteen-new-mcp-servers-from-cloudflare/" rel="noopener noreferrer"&gt;13 servers&lt;/a&gt; you can use today.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Cross-posted from &lt;a href="https://kyle.czajkowski.tech/blog/troubleshooting-claude-s-remote-connection-to-mcp-servers" rel="noopener noreferrer"&gt;my blog&lt;/a&gt;. Have you run into similar MCP server issues? I'd love to hear about your experiences in the comments!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;For more content like this, visit &lt;a href="https://kyle.czajkowski.tech" rel="noopener noreferrer"&gt;kyle.czajkowski.tech&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>mcp</category>
      <category>ai</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
