Build your first MCP server for Claude changedconnectors/building/quickstart
Nearest release: v2.1.283, published under an hour after upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Upstream edited this page at 25 Sep 2026 18:00 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 22 Oct 2026 18:07 UTC.
Upstream edited
Recorded here
Lines+12added
Lines−12removed
From line
2
where the diff opens
First seen
25 Sep 2026
this site's first read of the page
Recorded edits3to this page, all time
The whole hunk
from line 2, old and new numbered
/
from line 2
22
33> Build a minimal MCP server with one tool in JavaScript, run it on your machine, and connect it to Claude Code so Claude calls your tool.
44
5An MCP server is a program that gives Claude tools it can call, and people who use Claude see it as a connector. In this quickstart you write one in about 50 lines of JavaScript with no build step: a server with a single `roll_dice` tool that runs on your machine, which you then connect to [Claude Code](https://code.claude.com/docs/en/setup), Anthropic's command-line coding tool, and watch Claude call. At the end you have a working server you understand line by line, ready to grow into your own product's tools, wrap in a [plugin](/docs/plugins/quickstart), or host for people on claude.ai.
5An MCP server is a program that gives Claude tools it can call, and people who use Claude see it as a connector. In this quickstart you write one in about 50 lines of JavaScript with no build step: a server with a single `roll_dice` tool that runs on your machine, which you then connect to [Claude Code](https://code.claude.com/docs/en/setup), Anthropic's command-line coding tool, and watch Claude call. At the end you have a working server you understand line by line, ready to grow into your own product's tools, wrap in a [plugin](/docs/plugins/quickstart.md), or host for people on claude.ai.
66
77This quickstart is for developers who haven't built an MCP server before and want to see every piece working before they add authentication, hosting, and real tools.
88
99> [!NOTE]
1010>
11> * If you already have a server and want to know what Claude's client supports, see [Build an MCP server for Claude](/docs/connectors/building/index)
12> * If your server is running and you want to try it in Claude, see [Test your connector](/docs/connectors/building/testing)
13> * If you want to package skills and an existing connector rather than write a server, see [Build your first plugin](/docs/plugins/quickstart)
11> * If you already have a server and want to know what Claude's client supports, see [Build an MCP server for Claude](/docs/connectors/building/index.md)
12> * If your server is running and you want to try it in Claude, see [Test your connector](/docs/connectors/building/testing.md)
13> * If you want to package skills and an existing connector rather than write a server, see [Build your first plugin](/docs/plugins/quickstart.md)
1414
1515## Before you begin
1616
from line 263
263263
264264Once the server has a public URL, these pages cover each step:
265265
266* [Add a connector by URL](/docs/connectors/custom/add-unlisted#add-a-connector-by-url): add the server to your own Claude account as a custom connector
267* [Test in Claude as a custom connector](/docs/connectors/building/testing#test-in-claude-as-a-custom-connector): check the connection, the tool list, and a real call from a chat, including how to expose a server that's still on your machine through a tunnel
268* [Authentication for connectors](/docs/connectors/building/authentication): add sign-in before real users connect, because this quickstart server lets anyone who can reach it call its tools
269* [Publish to the directory](/docs/directory/publish): submit the server for review so people can find it in Claude
266* [Add a connector by URL](/docs/connectors/custom/add-unlisted.md#add-a-connector-by-url): add the server to your own Claude account as a custom connector
267* [Test in Claude as a custom connector](/docs/connectors/building/testing.md#test-in-claude-as-a-custom-connector): check the connection, the tool list, and a real call from a chat, including how to expose a server that's still on your machine through a tunnel
268* [Authentication for connectors](/docs/connectors/building/authentication.md): add sign-in before real users connect, because this quickstart server lets anyone who can reach it call its tools
269* [Publish to the directory](/docs/directory/publish.md): submit the server for review so people can find it in Claude
270270
271271## Clean up
272272
from line 280
280280
281281## Next steps
282282
283* [Add an interactive UI to your MCP server](/docs/connectors/building/mcp-apps/quickstart): give `roll_dice` a small UI that shows the dice inside the conversation
284* [Build an MCP server for Claude](/docs/connectors/building/index): plan a real server around what Claude's client supports, including authentication, result size limits, and timeouts
285* [Test your connector](/docs/connectors/building/testing): add your hosted server to Claude as a custom connector and debug connection failures
286* [Build your first plugin](/docs/plugins/quickstart): bundle your connector with a skill that teaches Claude when to use it, and submit both to the directory
283* [Add an interactive UI to your MCP server](/docs/connectors/building/mcp-apps/quickstart.md): give `roll_dice` a small UI that shows the dice inside the conversation
284* [Build an MCP server for Claude](/docs/connectors/building/index.md): plan a real server around what Claude's client supports, including authentication, result size limits, and timeouts
285* [Test your connector](/docs/connectors/building/testing.md): add your hosted server to Claude as a custom connector and debug connection failures
286* [Build your first plugin](/docs/plugins/quickstart.md): bundle your connector with a skill that teaches Claude when to use it, and submit both to the directory
287287
No line in this hunk matches that.