diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..34a1009
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,21 @@
+# Generated by https://smithery.ai. See: https://smithery.ai/docs/build/project-config
+FROM node:lts-alpine
+
+WORKDIR /app
+
+# Install build tools and dependencies
+RUN apk add --no-cache python3 make g++
+
+# Copy package files and config
+COPY package.json package-lock.json tsconfig.json ./
+COPY src ./src
+COPY bin ./bin
+
+# Install dependencies and build
+RUN npm ci && npm run build
+
+# Set execution permissions
+RUN chmod +x bin/stdio
+
+# Start command uses stdio transport
+ENTRYPOINT ["node", "dist/stdio.js"]
diff --git a/README.md b/README.md
index c91137c..a8464cb 100644
--- a/README.md
+++ b/README.md
@@ -1,15 +1,7 @@
-
-
-
-
-👉 [Visit the DatoCMS homepage](https://www.datocms.com) or see [What is DatoCMS?](#what-is-datocms)
-
----
-
-
-
## DatoCMS MCP Server
+[](https://smithery.ai/server/@datocms/mcp)
+
A local Model Context Protocol (MCP) server that provides AI assistants with tools to interact with the [DatoCMS Content Management API](https://www.datocms.com/docs/content-management-api). This server enables LLMs to explore and execute DatoCMS API operations through structured documentation and safe execution capabilities.
### Key Features
@@ -120,6 +112,14 @@ Follow Windsurf MCP [documentation](https://docs.windsurf.com/windsurf/cascade/m
+### Installing via Smithery
+
+To install DatoCMS MCP Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@datocms/mcp):
+
+```bash
+npx -y @smithery/cli install @datocms/mcp --client claude
+```
+
### Configuration
The DatoCMS MCP server supports one optional environment variable:
@@ -168,57 +168,4 @@ The DatoCMS MCP server provides the following tools:
#### Execution Tools (require an API token with appropriate permission)
- **cma_js_client_resource_action_readonly_method_execute**: Perform an read-only operation to the project
-- **cma_js_client_resource_action_destructive_method_execute**: Perform destructive operation to the project (create, update, destroy, etc.)
-
-
-## License
-
-The package is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
-
-
-
----
-
-# What is DatoCMS?
-
-
-
-[DatoCMS](https://www.datocms.com/) is the REST & GraphQL Headless CMS for the modern web.
-
-Trusted by over 25,000 enterprise businesses, agencies, and individuals across the world, DatoCMS users create online content at scale from a central hub and distribute it via API. We ❤️ our [developers](https://www.datocms.com/team/best-cms-for-developers), [content editors](https://www.datocms.com/team/content-creators) and [marketers](https://www.datocms.com/team/cms-digital-marketing)!
-
-**Why DatoCMS?**
-
-- **API-First Architecture**: Built for both REST and GraphQL, enabling flexible content delivery
-- **Just Enough Features**: We believe in keeping things simple, and giving you [the right feature-set tools](https://www.datocms.com/features) to get the job done
-- **Developer Experience**: First-class TypeScript support with powerful developer tools
-
-**Getting Started:**
-
-- ⚡️ [Create Free Account](https://dashboard.datocms.com/signup) - Get started with DatoCMS in minutes
-- 🔖 [Documentation](https://www.datocms.com/docs) - Comprehensive guides and API references
-- ⚙️ [Community Support](https://community.datocms.com/) - Get help from our team and community
-- 🆕 [Changelog](https://www.datocms.com/product-updates) - Latest features and improvements
-
-**Official Libraries:**
-
-- [**Content Delivery Client**](https://github.com/datocms/cda-client) - TypeScript GraphQL client for content fetching
-- [**REST API Clients**](https://github.com/datocms/js-rest-api-clients) - Node.js/Browser clients for content management
-- [**CLI Tools**](https://github.com/datocms/cli) - Command-line utilities for schema migrations (includes [Contentful](https://github.com/datocms/cli/tree/main/packages/cli-plugin-contentful) and [WordPress](https://github.com/datocms/cli/tree/main/packages/cli-plugin-wordpress) importers)
-
-**Official Framework Integrations**
-
-Helpers to manage SEO, images, video and Structured Text coming from your DatoCMS projects:
-
-- [**React Components**](https://github.com/datocms/react-datocms)
-- [**Vue Components**](https://github.com/datocms/vue-datocms)
-- [**Svelte Components**](https://github.com/datocms/datocms-svelte)
-- [**Astro Components**](https://github.com/datocms/astro-datocms)
-
-**Additional Resources:**
-
-- [**Plugin Examples**](https://github.com/datocms/plugins) - Example plugins we've made that extend the editor/admin dashboard
-- [**Starter Projects**](https://www.datocms.com/marketplace/starters) - Example website implementations for popular frameworks
-- [**All Public Repositories**](https://github.com/orgs/datocms/repositories?q=&type=public&language=&sort=stargazers)
-
-
+- **cma_js_client_resource_action_destructive_method_execute**: Perform destructive operation to the project (create, update, destroy, etc.)
\ No newline at end of file
diff --git a/smithery.yaml b/smithery.yaml
new file mode 100644
index 0000000..f657d11
--- /dev/null
+++ b/smithery.yaml
@@ -0,0 +1,19 @@
+# Smithery configuration file: https://smithery.ai/docs/build/project-config
+
+startCommand:
+ type: stdio
+ commandFunction:
+ # A JS function that produces the CLI command based on the given config to start the MCP on stdio.
+ |-
+ (config) => ({ command: 'node', args: ['dist/stdio.js'], env: config.datocmsApiToken ? { DATOCMS_API_TOKEN: config.datocmsApiToken } : {} })
+ configSchema:
+ # JSON Schema defining the configuration options for the MCP.
+ type: object
+ required: []
+ properties:
+ datocmsApiToken:
+ type: string
+ default: ""
+ description: Your DatoCMS API token for project. Leave empty for read-only usage.
+ exampleConfig:
+ datocmsApiToken: ""