Developing an MCP

Learning new trends

LLMs and MCPs. From a fun hackathon project to a real scientific collaboration.

I was a bit skeptical about LLMs until I learnt about MCP servers, which are basically collections of tools that LLMs can use to interact with the world, and avoid hallucination!

I was recommended to do a course about MCPs from Huggingface, and conveniently, right when I was finishing the course, they organised an MCP hackathon!

With some colleagues from my lab we decided to join. Since I was working on a project where I want to tag all nf-core module with EDAM ontologies, we thought that this would be a very good task for an LLM agent, so we created it!

We didn't have much time to dedicate to this, we decided to book three days to learn and experiment, and we ended up with a very nice product that was working better than just ChatGPT.
As it usually happens during hackathons, having a team of people focused on a single project and collaborating together really boosts learning and making progress. [Side note: we did the submission wrong, otherwise I am sure we would have won 😂]

Some weeks later, during the 2025 ISMB/ECCB, we found out that a team of the Bioconductor and EDAM communities was working on a similar task, they wanted to tag Bioconductor packages with ontology terms. We talked and thought that it was a great opportunity for collaboration! And we created the edamMCP.

⚙️ Some technical aspects:

  • The original agent used some custom Python functions, and the smolagents library.
  • The edammcp MCP uses FastMCP to build the server and other libraries such as sentence-transformers for concept embedding.
  • Everything is open source 🔓
  • This is still under development, reach out if you would like to participate!