|
1 | 1 | --- |
2 | | -description: Install the Seam SDKs to call the Seam API and connect the Seam Docs MCP server to search Seam's docs and device database from Claude. |
| 2 | +description: Install the Seam SDKs to call the Seam API in the programming language of your choice. |
3 | 3 | --- |
4 | 4 |
|
5 | | -# Installation |
| 5 | +# SDK Installation |
6 | 6 |
|
7 | | -There are two ways to start working with Seam: |
8 | | - |
9 | | -- **Seam SDKs** — Install one of the official SDKs to call the Seam API from your application. |
10 | | -- **Seam Docs MCP Server** — Connect Claude or another MCP-compatible client to read the Seam documentation directly. |
11 | | - |
12 | | -You can use either or both, depending on your workflow. |
13 | | - |
14 | | -## Seam SDKs |
| 7 | +{% hint style="success" %} |
| 8 | +**Building this integration with Claude?** Install the [Seam Docs MCP server](mcp-installation.md) first. It connects Claude directly to Seam's API reference, integration guides, and 400+ device models so Claude can guide you through implementation step by step — no copy-pasting from the docs. |
| 9 | +{% endhint %} |
15 | 10 |
|
16 | 11 | Install one of the Seam SDKs in the programming language of your choice. Seam supports many programming languages, such as the following: |
17 | 12 |
|
18 | | -* JavaScript / TypeScript ([npm](https://www.npmjs.com/package/seam), [GitHub](https://github.com/seamapi/javascript)) |
19 | | -* Python ([pip](https://pypi.org/project/seam/), [GitHub](https://github.com/seamapi/python)) |
20 | | -* Ruby Gem ([rubygem](https://rubygems.org/gems/seam), [GitHub](https://github.com/seamapi/ruby)) |
21 | | -* PHP ([packagist](https://packagist.org/packages/seamapi/seam), [GitHub](https://github.com/seamapi/php)) |
22 | | -* C# ([nuget](https://www.nuget.org/packages/Seam), [GitHub](https://github.com/seamapi/csharp)) |
| 13 | +- JavaScript / TypeScript ([npm](https://www.npmjs.com/package/seam), [GitHub](https://github.com/seamapi/javascript)) |
| 14 | +- Python ([pip](https://pypi.org/project/seam/), [GitHub](https://github.com/seamapi/python)) |
| 15 | +- Ruby Gem ([rubygem](https://rubygems.org/gems/seam), [GitHub](https://github.com/seamapi/ruby)) |
| 16 | +- PHP ([packagist](https://packagist.org/packages/seamapi/seam), [GitHub](https://github.com/seamapi/php)) |
| 17 | +- C# ([nuget](https://www.nuget.org/packages/Seam), [GitHub](https://github.com/seamapi/csharp)) |
23 | 18 |
|
24 | 19 | {% tabs %} |
25 | 20 | {% tab title="JavaScript" %} |
| 21 | + |
26 | 22 | ```bash |
27 | 23 | npm i seam |
28 | 24 | ``` |
| 25 | + |
29 | 26 | {% endtab %} |
30 | 27 |
|
31 | 28 | {% tab title="Python" %} |
| 29 | + |
32 | 30 | ```bash |
33 | 31 | pip install seam |
34 | 32 | # For some development environments, use pip3 in this command instead of pip. |
35 | 33 | ``` |
| 34 | + |
36 | 35 | {% endtab %} |
37 | 36 |
|
38 | 37 | {% tab title="Ruby" %} |
| 38 | + |
39 | 39 | ```bash |
40 | 40 | bundle add seam |
41 | 41 | ``` |
| 42 | + |
42 | 43 | {% endtab %} |
43 | 44 |
|
44 | 45 | {% tab title="PHP" %} |
| 46 | + |
45 | 47 | ```bash |
46 | 48 | composer require seamapi/seam |
47 | 49 | ``` |
| 50 | + |
48 | 51 | {% endtab %} |
49 | 52 |
|
50 | 53 | {% tab title="C#" %} |
51 | 54 | Install using [nuget](https://www.nuget.org/packages/Seam). |
52 | 55 | {% endtab %} |
53 | 56 |
|
54 | 57 | {% endtabs %} |
55 | | - |
56 | | -## Seam Docs MCP Server |
57 | | - |
58 | | -The **Seam Docs MCP Server** is a public, read-only [Model Context Protocol](https://modelcontextprotocol.io/) server that gives Claude and other MCP-compatible clients access to Seam's developer documentation and device database. Connect it once, then ask Claude questions about the Seam API, capabilities, webhooks, SDK usage, and the 400+ supported device models — across smart locks, thermostats, access control systems, and noise sensors. Claude grounds its answers in the most up-to-date Seam docs. |
59 | | - |
60 | | -The server is intended for developers integrating with Seam who want Claude to answer Seam questions accurately, whether they're looking up an API endpoint, checking which lock models support mobile keys, or finding the right integration guide. It is read-only: it cannot control devices, manage access codes, create resources, or perform any other write operations against the Seam API. |
61 | | - |
62 | | -### Server Details |
63 | | - |
64 | | -| Property | Value | |
65 | | -| ---------------- | --------------------------- | |
66 | | -| Server URL | `https://mcp.seam.co/mcp` | |
67 | | -| Transport | Streamable HTTP | |
68 | | -| Authentication | None — the server is public | |
69 | | - |
70 | | -{% hint style="info" %} |
71 | | -No API key, account, or sign-up is required to use the Seam Docs MCP server. It only reads and returns Seam's public documentation. |
72 | | -{% endhint %} |
73 | | - |
74 | | -### What You Can Ask |
75 | | - |
76 | | -Once connected, you can ask Claude questions like the following, and Claude will fetch the answer from the Seam docs and device database: |
77 | | - |
78 | | -* "How do I unlock a Schlage Encode lock with the Seam API?" |
79 | | -* "Show me the webhook payload for `lock.locked`." |
80 | | -* "What's the difference between an access code and an access grant?" |
81 | | -* "Which smart lock models support mobile keys and remote unlock?" |
82 | | -* "Compare August and Yale lock features for a hospitality deployment." |
83 | | -* "Find the right integration guide for property management workflows." |
84 | | -* "Does Seam support Salto KS access control systems?" |
85 | | -* "How do I create a Connect Webview from the Python SDK?" |
86 | | - |
87 | | -### Connect From Claude.ai |
88 | | - |
89 | | -1. Sign in to [claude.ai](https://claude.ai). |
90 | | -2. Open **Settings → Connectors**. |
91 | | -3. Click **Add custom connector**. |
92 | | -4. Set the **URL** to `https://mcp.seam.co/mcp`. |
93 | | -5. Set the **Name** to `Seam Docs`. |
94 | | -6. Save. No authentication is required. |
95 | | - |
96 | | -The connector is now available to Claude in any new conversation. |
97 | | - |
98 | | -### Connect From Claude Desktop |
99 | | - |
100 | | -1. Open Claude Desktop and go to **Settings → Connectors**. |
101 | | -2. Click **Add custom connector**. |
102 | | -3. Set the **URL** to `https://mcp.seam.co/mcp`. |
103 | | -4. Set the **Name** to `Seam Docs`. |
104 | | -5. Save and restart Claude Desktop if prompted. |
105 | | - |
106 | | -### Connect From Claude Code |
107 | | - |
108 | | -Run the following command from your terminal: |
109 | | - |
110 | | -```bash |
111 | | -claude mcp add --transport http seam-docs https://mcp.seam.co/mcp |
112 | | -``` |
113 | | - |
114 | | -Or add the following entry to your Claude Code MCP configuration file: |
115 | | - |
116 | | -```json |
117 | | -{ |
118 | | - "mcpServers": { |
119 | | - "seam-docs": { |
120 | | - "type": "http", |
121 | | - "url": "https://mcp.seam.co/mcp" |
122 | | - } |
123 | | - } |
124 | | -} |
125 | | -``` |
126 | | - |
127 | | -### Available Tools |
128 | | - |
129 | | -The Seam Docs MCP server exposes three read-only tools: |
130 | | - |
131 | | -| Tool | Display Name | Description | |
132 | | -| ------------------- | ----------------- | -------------------------------------------------------------------------------------------- | |
133 | | -| `search_docs` | Search Seam Docs | Semantic search across all Seam documentation and the 400+ supported device models, ranked by relevance. | |
134 | | -| `get_doc` | Get Doc Page | Fetch the full content of any Seam documentation or device page. | |
135 | | -| `list_doc_sections` | List Doc Sections | Browse the Seam documentation tree to discover available content. | |
136 | | - |
137 | | -Claude selects the appropriate tool automatically based on your prompt. |
138 | | - |
139 | | -### Troubleshooting |
140 | | - |
141 | | -* **403 Forbidden on connection** — The server only accepts requests from approved origins (`mcp.seam.co`, `claude.ai`, `app.claude.ai`, and `localhost`). Requests from other origins are rejected. |
142 | | -* **Empty search results** — If `search_docs` returns nothing, broaden your query. Use Seam API resource names (for example, `access_codes`) rather than SDK-specific method names, and use generic capability terms (for example, "mobile keys") when searching for devices. |
143 | | -* **Connection refused** — Confirm that your network allows outbound HTTPS to `mcp.seam.co`. Some corporate firewalls block custom MCP endpoints. |
144 | | - |
145 | | -### Support |
146 | | - |
147 | | -For questions or issues with the Seam Docs MCP server, contact [support@seam.co](mailto:support@seam.co). |
0 commit comments