This is the first post in the series about MCP. It's based on the talk I have at JavaScript London.
It's available as a video on YouTube.
MCP stands for Model Context Protocol. It's an... protocol developed by Antropic (the company behind Claude) which loosely speaking allows an LLM to connect to 3rd party services to read data and... perform actions.
I've created a project in Linear (a popular project management app).
But what happens if I ask Claude What is assigned to me in Linear?
Claude won't know! It makes total sense. LLMs are trained on vasts sets of data - websites, books, images, videos, music even. But they don't have access to your private data. It's great! You don't want to expose it to everyone.
But we like the power of LLMs don't we? Often, we do want to talk to our data. And this is a problem that MCP solves.
Claude Desktop supports MCP servers. It calls them connectors (1). There's a connector for Linear.
So what will happens if we repeat the same prompt now?
This time Claude brings us our own data from Linear. In fact, it called Linear's MCP tool called list_my_issues
which returned a JSON array. Claude parsed an array and presented it nicely on the screen.
Can we a go a step further and write into Linear from Claude using MCP?
Let's try!
And it did create a ticket in linear by calling another MCP tool - create_issue
.
This is how. The diagram below is taken from somewhere on https://modelcontextprotocol.io/
.
list_my_issues
and crate_an_issue
Connectors (a.k.a remote MCP servers) are only available in Claude Desktop if you have a paid subscription. But you can use a free subscription with local servers. I didn't use them as an example to simplify the blog post/video. But I'll cover them in the next chapters.
Technically, Claude Code is an MCP Host.
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way. My personal thoughts tend to change, hence the articles in this blog might not provide an accurate reflection of my present standpoint.
© Mike Borozdin