# Build a tool for Jarvis
URL: https://jarvis.ceo/docs/mcp/build-a-server
Status: beta

If the tool you want does not exist, build it. Any server that speaks MCP works with Jarvis. How to scaffold one and point Jarvis at it.

> [beta] MCP support is part of Jarvis, in early access. Download the beta, or join the waitlist for full access.

If a tool you want does not exist yet, build it. Any server that speaks MCP works with Jarvis, with no Jarvis-specific code.

## The shape of a server

An MCP server exposes a set of tools, each with a name, a description, and typed inputs, and runs over stdio (a local command) or HTTP. Use the official MCP SDKs to scaffold one in TypeScript or Python.

## Point Jarvis at it

Run your server, then add it as a custom server in Settings, MCP Servers. For a local stdio server, that is just the command that starts it.

```json
{
  "mcpServers": {
    "my-tool": {
      "command": "node",
      "args": ["/path/to/my-tool/server.js"],
      "env": { "MY_API_KEY": "..." }
    }
  }
}
```

> [note] Keep tool descriptions clear and specific. Jarvis decides when to use a tool from its description, so good descriptions make it reliable.

Related: Connect an MCP server (https://jarvis.ceo/docs/mcp/connect-a-server), Skills (https://jarvis.ceo/docs/pantry/skills), MCP specification (modelcontextprotocol.io) (https://jarvis.ceohttps://modelcontextprotocol.io)
