GoLang Client Support?


We are currently running a small POC and would like to have a Pure GoLang client (No C++ dependencies), when trying to connect to MemGraph with https://github.com/neo4j/neo4j-go-driver/tree/1.8 we are getting the following error:

Server responded with unsupported version 1


  • What are the actual versions of the protocol that MemGraph supports?
  • Are there any plans to support newer version?
  • How about a pure GoLang or Rust client, anything on the roadmap?

Regards and thanks in advance for any help,

1 Like

Hi @syepes! Welcome to Memgraph!

To quickly answer questions:

  • Memgraph supports Bolt v1. I think v1.7 of the Go driver should work with Memgraph (didn’t test by myself).
  • We try our best to be compatible with the latest versions, but it’s not always possible. At the moment, being compliant with the newest version doesn’t have a high priority.
  • We have plans to release Go and Rust relatively soon (by the end of this year), but they are going to be C based because we don’t have the capacity to build native clients yet.

What are the benefits of having “pure” Go or Rust client? Could you please explain in more detail?

Thank you!

1 Like

Wanted to try memgraph with the platform we are developing but I hit the same error of unsupported version.

@buda I can answer this question: Advantages in my mind are (and why we are using pure go version of neo4j driver): no external dependencies, easier cross-compile, and generally better go development experience with just pure go code.

Waht is the timeline for bolt v4 support? Would love to try memgraph before we are too deep into development.

1 Like

Hi @attt!

In the meantime, we started and finished the implementation of support for Bolt v4. Release with the support included is going to happen probably early next week, so please stay tuned about that :smiley:

1 Like

Hi @attt!
Hope it’s not too late but we released the newest version of Memgraph which you can downloada here:

It should work with all the newest Neo4j drivers including Go. The only specific requirement for Go drivers is setting the --bolt-server-name-for-init config inside the /etc/memgraph/memgraph.conf. It should work with Memgraph/1.2 as the server name.

Feel free to contact us if you have any problems with the driver!