From 35d1bc5ecc90bcb4fcf2967237aef8b9985c6831 Mon Sep 17 00:00:00 2001 From: Henry Mao <1828968+calclavia@users.noreply.github.com> Date: Thu, 30 Jan 2025 00:03:08 +0800 Subject: [PATCH 1/3] Add Dockerfile --- Dockerfile | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..3856678 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,29 @@ +# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile +# Start from the latest golang base image for building +FROM golang:1.18-alpine AS builder + +# Set the Current Working Directory inside the container +WORKDIR /app + +# Copy go mod and sum files +COPY go.mod go.sum ./ + +# Download all dependencies. Dependencies will be cached if the go.mod and go.sum files are not changed +RUN go mod download + +# Copy the source from the current directory to the Working Directory inside the container +COPY . . + +# Build the Go app +RUN go build -o metoro-mcp-server . + +# Start a new stage from scratch for the final build +FROM alpine:latest + +WORKDIR /root/ + +# Copy the Pre-built binary file from the previous stage +COPY --from=builder /app/metoro-mcp-server . + +# Command to run the executable +CMD ["./metoro-mcp-server"] From 722340203840b9ed073c0eac0b1e98196928516a Mon Sep 17 00:00:00 2001 From: Henry Mao <1828968+calclavia@users.noreply.github.com> Date: Thu, 30 Jan 2025 00:03:09 +0800 Subject: [PATCH 2/3] Add Smithery configuration --- smithery.yaml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 smithery.yaml diff --git a/smithery.yaml b/smithery.yaml new file mode 100644 index 0000000..e140ce8 --- /dev/null +++ b/smithery.yaml @@ -0,0 +1,21 @@ +# Smithery configuration file: https://smithery.ai/docs/config#smitheryyaml + +startCommand: + type: stdio + configSchema: + # JSON Schema defining the configuration options for the MCP. + type: object + required: + - metoroAuthToken + - metoroApiUrl + properties: + metoroAuthToken: + type: string + description: The authentication token for accessing Metoro services. + metoroApiUrl: + type: string + description: The API URL for Metoro services. + commandFunction: + # A function that produces the CLI command to start the MCP on stdio. + |- + (config) => ({command: './metoro-mcp-server', args: [], env: { METORO_AUTH_TOKEN: config.metoroAuthToken, METORO_API_URL: config.metoroApiUrl }}) From f7aaadebbf5e88e0ed1b26c18794277b9772b3d5 Mon Sep 17 00:00:00 2001 From: Henry Mao <1828968+calclavia@users.noreply.github.com> Date: Thu, 30 Jan 2025 00:03:10 +0800 Subject: [PATCH 3/3] Update README --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index ac920f7..f4f3e1f 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,7 @@ ![GitHub license](https://img.shields.io/github/license/metoro-io/metoro-mcp-server) ![GitHub contributors](https://img.shields.io/github/contributors/metoro-io/metoro-mcp-server) ![GitHub last commit](https://img.shields.io/github/last-commit/metoro-io/metoro-mcp-server) +[![smithery badge](https://smithery.ai/badge/metoro-mcp-server)](https://smithery.ai/server/metoro-mcp-server) [![GoDoc](https://pkg.go.dev/badge/github.com/metoro-io/metoro-mcp-server.svg)](https://pkg.go.dev/github.com/metoro-io/metoro-mcp-server) [![Go Report Card](https://goreportcard.com/badge/github.com/metoro-io/metoro-mcp-server)](https://goreportcard.com/report/github.com/metoro-io/metoro-mcp-server) ![Tests](https://github.com/metoro-io/metoro-mcp-server/actions/workflows/go-test.yml/badge.svg) @@ -43,6 +44,14 @@ https://github.com/user-attachments/assets/b3f21e9a-45b8-4c17-8d8c-cff560d8694f 4. Navigate to the repository directory: `cd metoro-mcp-server` 5. Build the server executable: `go build -o metoro-mcp-server` +### Installing via Smithery + +To install the Metoro MCP Protocol for Claude Desktop automatically via [Smithery](https://smithery.ai/server/metoro-mcp-server): + +```bash +npx -y @smithery/cli install metoro-mcp-server --client claude +``` + ### If you already have a Metoro Account: Copy your auth token from your Metoro account in [Settings](https://us-east.metoro.io/settings) -> Users Settings. Create a file in `~/Library/Application Support/Claude/claude_desktop_config.json` with the following contents: