NickGnd

NickGnd

Tidewave has just been announced by José Valim

Hey :waving_hand:
Tidewave has just been announced by José Valim :fire:

Watch Tidewave transform Claude Desktop into an agent by running a MCP server in your web app!

https://x.com/josevalim/status/1917296901268910405

It implements the MCP server protocol to introspect your running application and interact with it, I’m curious to try it out with bigger phoenix applications.

Repo: GitHub - tidewave-ai/tidewave_phoenix: Tidewave for Phoenix · GitHub

Enjoy :v:

Most Liked

josevalim

josevalim

Creator of Elixir

Great questions!

That particular example had the MCP tell the precise LiveView active on the page, which is not as straight-forward to get from a browser MCP (doable but then you had to write your own JS traversal scripts). This reveals the two important parts about Tidewave: it runs inside your application, so it has access to everything your application does, and it is fine-tuned for your specific web framework.

For example, one of the tools Tidewave offers is access to the database. Surely you can do this with another MCP, but your app already has access to the database, with all of the credentials and configs you would need, and that saves you work. Plus the tool has the ability to query your database using SQL or using your language’s query builder. And this applies to everything: access to background queue? Check, Access to the APIs you talk to? Check. Most of it is powered by the project_eval tool, where we evaluate code within your running application instance.

Another tool that we offer is to get the package documentation. Many people are asking for llms.txt (which I agree are useful) but, when working on a project, all of the packages and their documentations are already available on your machine, with the exact version your application uses. This also applies to getting the location where packages are installed or the file+line of where modules and functions are defined. Those are all things that could be done separately but, because Tidewave is literally running within your web app, we can ask the language runtime/compiler, which will just do a better/faster job.

arcanemachine

arcanemachine

Nice. I’ve been watching things crop up over the last hour or so and didn’t want to spoil anything by revealing the surpise. But I also don’t use Twitter, so I didn’t see the announcement. :partying_face:

https://github.com/tidewave-ai/tidewave_phoenix

I’ve got to figure out how to get all this stuff working in NeoVim (it’s not in the list of supported editors… yet).

Between this and the launch of Qwen3 yesterday (which seems to work well on powerful CPUs, may not need a huge GPU to use it), I’m pretty excited to see if I can get my hands on some sort of “agentic” coding experience that doesn’t send all my code to some Big Data oligarchs (without having to drop $$$ on a GPU farm).

14
Post #2
slouchpie

slouchpie

I got tidewave working with Claude in Emacs today.

I needed this PR Fix endpoint parsing function by peaceful-james · Pull Request #26 · lizqwerscott/mcp.el · GitHub
and this package GitHub - karthink/gptel: A simple, extensible LLM client for Emacs · GitHub

but it is certainly working.

It is relatively straightforward if you just follow the READMEs in both of those repos.

11
Post #7

Where Next?

Popular in AI / LLMs Top

dominicletz
Hey there, I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first. ...
New
water
interesting thread Please wake me up when I can run it locally. I prefer privacy over convenience. This thread/fork split from: AI is...
New
New
samoloth
Hi, recently I’ve discovered Matt Pocock’s skills for AI agents. They look extremely reasonable, especially after hearing his explanation...
New
calebjosue
What sort of libraries are available to integrate LLMs into your Phoenix Web Framework applications? e.g. Mistral, since these guys have ...
New
benja123
I just wanted to say that I recently got back into Elixir after many years of barely touching it (not really by choice). Funnily enough, ...
New
asianfilm
For those who haven’t seen it, here is a research paper from August that found that LLMs perform twice as well with Elixir than with Pyth...
New
Exadra37
:tada: My last project is now live: AI Intent Driven Development (IDD) guidelines and instructions for AI Coding Agents, AI Coding Assist...
New
AstonJ
Watched this earlier and thought it was worth sharing. For those not aware Geoffrey Hinton is considered one of the godfathers of AI, yet...
New
nickurban
Cursor Cloud Agents are quite good at writing Elixir now, but only with a custom configuration. It took me a while to get this working p...
New

Other popular topics Top

9mm
I am constructing a JSON object (map) and I need to conditionally set a field. I’m trying to write proper elixir-way code… and I’m at a l...
New
Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
JeremM34
Hello, how can I check the Phoenix version ? Thanks !
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
dblack
I’ve got an issue with an app and I’ve no idea of how to troubleshoot it. I’m hoping someone here might have seen something similar. I p...
New
shijith.k
I am trying to start a new phoenix project with elixir 1.9, but mix phx.new does not work. It says that ** (Mix) The task "phx.new" could...
New
openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
PeterCarter
There are pre-rolled solutions for other frameworks that do work. However, Phoenix does not seem to have these. Have people had good expe...
New
JakeBecker
TL;DR: I’ve just released an implementation of Microsoft’s IDE-independent Language Server Protocol for Elixir. It adds language support ...
1144 54120 245
New
lanycrost
Hi everyone! I need implement if…else if…else condition from my elixir code, and anymore of this control flow structures not work proper...
New

Latest on Elixir Forum

Elixir Forum

We're in Beta

About us Mission Statement