IntegrateIntegrate
Integrations

Samsung SmartThings Integration

Manage SmartThings locations, rooms, devices, commands, scenes, and rules

The Samsung SmartThings integration provides access to manage SmartThings locations, rooms, devices, commands, scenes, and rules through the Integrate MCP server.

Installation

The Samsung SmartThings integration is included with the SDK:

import { smartthingsIntegration } from "integrate-sdk/server";

Setup

1. Create a Samsung SmartThings OAuth App

  1. Create an OAuth application for Samsung SmartThings
  2. Configure your redirect URI
  3. Note your Client ID and Client Secret

2. Configure the Integration on Your Server

Add the Samsung SmartThings integration to your server configuration. The integration automatically reads SMARTTHINGS_CLIENT_ID and SMARTTHINGS_CLIENT_SECRET from your environment variables:

import { createMCPServer, smartthingsIntegration } from "integrate-sdk/server";

export const { client: serverClient } = createMCPServer({
  apiKey: process.env.INTEGRATE_API_KEY,
  integrations: [
    smartthingsIntegration({
      scopes: ["r:locations:*", "x:locations:*", "r:devices:*", "x:devices:*", "r:scenes:*", "x:scenes:*", "r:rules:*", "x:rules:*"], // Optional
    }),
  ],
});

You can override the environment variables by passing explicit values:

smartthingsIntegration({
  clientId: process.env.CUSTOM_SMARTTHINGS_ID,
  clientSecret: process.env.CUSTOM_SMARTTHINGS_SECRET,
      scopes: ["r:locations:*", "x:locations:*", "r:devices:*", "x:devices:*", "r:scenes:*", "x:scenes:*", "r:rules:*", "x:rules:*"], // Optional
});

3. Client-Side Usage

The default client automatically includes all integrations. You can use it directly:

import { client } from "integrate-sdk";

await client.authorize("smartthings");
const result = await client.smartthings.listLocations({});

console.log(result);

If you're using a custom client, add the integration to the integrations array:

import { createMCPClient, smartthingsIntegration } from "integrate-sdk";

const customClient = createMCPClient({
  integrations: [smartthingsIntegration()],
});

Configuration Options

Prop

Type

Default Scopes

These defaults are applied unless you override scopes in the integration config:

  • r:locations:*
  • x:locations:*
  • r:devices:*
  • x:devices:*
  • r:scenes:*
  • x:scenes:*
  • r:rules:*
  • x:rules:*

Tools

smartthings_list_locations

List locations

No parameters.

smartthings_get_location

Get location

Prop

Type

smartthings_list_rooms

List rooms

Prop

Type

smartthings_get_room

Get room

Prop

Type

smartthings_list_devices

List devices

Prop

Type

smartthings_get_device

Get device

Prop

Type

smartthings_get_device_status

Get device status

Prop

Type

smartthings_execute_device_command

Execute device command

Prop

Type

smartthings_list_scenes

List scenes

Prop

Type

smartthings_execute_scene

Execute scene

Prop

Type

smartthings_list_rules

List rules

Prop

Type

smartthings_get_rule

Get rule

Prop

Type

smartthings_create_rule

Create rule

Prop

Type

smartthings_update_rule

Update rule

Prop

Type

smartthings_delete_rule

Delete rule

Prop

Type

Notes

  • Category: Lifestyle
  • Authentication mode: OAuth

On this page