<?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: Ahmet BAKTIAYA</title>
    <description>The latest articles on DEV Community by Ahmet BAKTIAYA (@abktya).</description>
    <link>https://dev.to/abktya</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4179435%2Fac53575c-a59b-4f7c-834e-d6a3f03d502f.jpg</url>
      <title>DEV Community: Ahmet BAKTIAYA</title>
      <link>https://dev.to/abktya</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/abktya"/>
    <language>en</language>
    <item>
      <title>Use your local MCP tools from any browser or phone</title>
      <dc:creator>Ahmet BAKTIAYA</dc:creator>
      <pubDate>Mon, 12 Oct 2026 13:26:03 +0000</pubDate>
      <link>https://dev.to/abktya/use-your-local-mcp-tools-from-any-browser-or-phone-1kk7</link>
      <guid>https://dev.to/abktya/use-your-local-mcp-tools-from-any-browser-or-phone-1kk7</guid>
      <description>&lt;p&gt;Hi, I'm Ahmet.&lt;/p&gt;

&lt;p&gt;I built MCPtoAI because my MCP setup only worked while I was sitting at the computer it was running on.&lt;/p&gt;

&lt;p&gt;I wanted to access the same tools, files, and local MCP servers from my phone or another browser, use whichever AI model I preferred, and avoid uploading my API keys to yet another cloud service.&lt;/p&gt;

&lt;p&gt;So I started building MCPtoAI.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How it works:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A small agent runs on your computer (macOS or Windows desktop app, Linux CLI via &lt;code&gt;pip install mcptoai&lt;/code&gt;, or Docker).&lt;/p&gt;

&lt;p&gt;It establishes an outbound WebSocket connection to our relay, so there's no need to open inbound ports or configure port forwarding.&lt;/p&gt;

&lt;p&gt;You chat through the web app. The relay forwards requests to your device, where the agent communicates with the AI provider and executes tools locally.&lt;/p&gt;

&lt;p&gt;A few details that might be interesting:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;API keys stay on your device&lt;/strong&gt;, stored in the operating system's credential store. Model API calls are made directly from your machine.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multiple AI providers:&lt;/strong&gt; Anthropic, OpenAI, DeepSeek, and others, including OpenAI-compatible endpoints. You can switch models mid-conversation without reconfiguring your MCP tools.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tool permissions:&lt;/strong&gt; Every tool has Off / Ask / Allow settings. Ask mode prompts for each invocation and displays the full arguments before you approve or deny it, including from your phone.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;File access restrictions:&lt;/strong&gt; Built-in file tools are limited to a workspace directory you choose.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Long-running tasks:&lt;/strong&gt; Jobs can continue after you close the browser, and you can return to check their progress.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Restart safety:&lt;/strong&gt; Pending approvals aren't automatically authorised or executed after an agent restart.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Conversation history:&lt;/strong&gt; You can choose between cloud-backed history and keeping it on your device.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The desktop app, Device Agent, and Linux CLI are open source under the MIT licence:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/mcptoai/MCPtoAI" rel="noopener noreferrer"&gt;https://github.com/mcptoai/MCPtoAI&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The hosted web app and relay infrastructure are not open source.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;There are still limitations.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;There's no end-to-end encryption yet. Traffic uses TLS, but the relay can access message content in transit.&lt;/p&gt;

&lt;p&gt;Permissions are currently configured per tool rather than per argument. That means allowing a third-party MCP tool doesn't automatically restrict which arguments it can receive.&lt;/p&gt;

&lt;p&gt;Approval events are persisted locally, but I'm still working on a more complete, verifiable audit trail.&lt;/p&gt;

&lt;p&gt;I've documented the security model and its limitations here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/mcptoai/MCPtoAI/blob/main/docs/THREAT_MODEL.md" rel="noopener noreferrer"&gt;https://github.com/mcptoai/MCPtoAI/blob/main/docs/THREAT_MODEL.md&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here's a short demo (2 minutes):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=nAhHaHcHs1U" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=nAhHaHcHs1U&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'm still improving the project, and I'd really appreciate feedback, especially on the permission model, relay architecture, and security boundaries.&lt;/p&gt;

&lt;p&gt;I'd also be interested to hear which parts of setting up and using MCP people still find unnecessarily complicated.&lt;/p&gt;

&lt;p&gt;Thanks for taking a look!&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>mcp</category>
      <category>tools</category>
    </item>
  </channel>
</rss>
