From 4442e206648c94eef1e339ddb537f7960dae65ee Mon Sep 17 00:00:00 2001 From: Ivan Despot <66276597+g-despot@users.noreply.github.com> Date: Fri, 14 Nov 2025 18:28:59 +0100 Subject: [PATCH] Add initial MCP docs --- .../best-practices/code-generation.md | 1 + docs/weaviate/mcp/index.mdx | 49 +++++++++++++++++++ sidebars.js | 20 +++----- tests/docker-compose-mcp.yml | 31 ++++++++++++ 4 files changed, 89 insertions(+), 12 deletions(-) create mode 100644 docs/weaviate/mcp/index.mdx create mode 100644 tests/docker-compose-mcp.yml diff --git a/docs/weaviate/best-practices/code-generation.md b/docs/weaviate/best-practices/code-generation.md index 9847e5bc9..024f64e6b 100644 --- a/docs/weaviate/best-practices/code-generation.md +++ b/docs/weaviate/best-practices/code-generation.md @@ -1,5 +1,6 @@ --- title: AI-based Weaviate code generation +sidebar_label: AI-based code generation sidebar_position: 50 description: "Tips and techniques for using generative AI models to write better Weaviate-related code." image: og/docs/howto.jpg diff --git a/docs/weaviate/mcp/index.mdx b/docs/weaviate/mcp/index.mdx new file mode 100644 index 000000000..fc6b4e1ce --- /dev/null +++ b/docs/weaviate/mcp/index.mdx @@ -0,0 +1,49 @@ +--- +title: Weaviate MCP server +sidebar_label: MCP +# tags: ["mcp"] +--- + +## Docker Compose setup + +```yaml +services: + weaviate-auth: + image: docker.io/semitechnologies/weaviate:1.35.0-dev-cca9917.arm64@sha256:aff8c1f53e2ddaa8dfbbb6f222099c84135195d4d03b3521c006566df0aba322 + restart: on-failure:0 + ports: + - "8080:8080" + - "9000:9000" + - "50051:50051" + environment: + PERSISTENCE_DATA_PATH: "./data-auth" + ENABLE_MODULES: "backup-filesystem" + API_BASED_MODULES_DISABLED: "true" + BACKUP_FILESYSTEM_PATH: "/var/lib/backups" + AUTHENTICATION_APIKEY_ENABLED: "true" + AUTHENTICATION_APIKEY_ALLOWED_KEYS: "viewer-key,editor-key,admin-key,custom-key" + AUTHENTICATION_APIKEY_USERS: "viewer-user,editor-user,admin-user,custom-user" + AUTHENTICATION_DB_USERS_ENABLED: "true" + AUTHORIZATION_RBAC_ENABLED: "true" + AUTHORIZATION_RBAC_ROOT_USERS: "admin-user" +``` + +## Claude Desktop config + +```json title="claude_desktop_config.json" +{ + "mcpServers": { + "Weaviate": { + "command": "/Users/ivandespot/.local/bin/mcp-proxy", + "args": [ + "http://localhost:9001/mcp", + "--headers", + "Authorization", + "Bearer admin-key", + "--transport", + "streamablehttp" + ] + } + } +} +``` diff --git a/sidebars.js b/sidebars.js index 1174abea5..8fefd9633 100644 --- a/sidebars.js +++ b/sidebars.js @@ -93,17 +93,15 @@ const sidebars = { type: "doc", id: "weaviate/best-practices/index", }, - items: [] + items: [], }, { type: "category", - label: "AI-based code generation", - link: { - type: "doc", - id: "weaviate/best-practices/code-generation", - }, - items: [] - } + label: "Vibe coding", + collapsed: false, + collapsible: false, + items: ["weaviate/best-practices/code-generation", "weaviate/mcp/index"], + }, ], modelProvidersSidebar: [ { @@ -687,9 +685,7 @@ const sidebars = { type: "doc", id: "weaviate/client-libraries/java/index", }, - items: [ - "weaviate/client-libraries/java/java-v6", - ], + items: ["weaviate/client-libraries/java/java-v6"], }, { type: "doc", @@ -1452,7 +1448,7 @@ const sidebars = { items: [ "integrations/compute-infrastructure/modal/index", "integrations/compute-infrastructure/replicate/index", - "integrations/compute-infrastructure/replicated/index" + "integrations/compute-infrastructure/replicated/index", ], }, { diff --git a/tests/docker-compose-mcp.yml b/tests/docker-compose-mcp.yml new file mode 100644 index 000000000..02857794f --- /dev/null +++ b/tests/docker-compose-mcp.yml @@ -0,0 +1,31 @@ +services: + weaviate-auth: + image: docker.io/semitechnologies/weaviate:1.35.0-dev-cca9917.arm64@sha256:aff8c1f53e2ddaa8dfbbb6f222099c84135195d4d03b3521c006566df0aba322 + restart: on-failure:0 + ports: + - "8081:8080" + - "6061:6060" + - "9001:9000" + - "2113:2112" + - "7103:7101" + - "50052:50051" + environment: + LOG_LEVEL: "debug" + QUERY_DEFAULTS_LIMIT: 20 + PERSISTENCE_DATA_PATH: "./data-auth" + ENABLE_MODULES: backup-filesystem,generative-dummy,reranker-dummy + API_BASED_MODULES_DISABLED: "true" + BACKUP_FILESYSTEM_PATH: "/var/lib/backups" + CLUSTER_GOSSIP_BIND_PORT: "7102" + CLUSTER_DATA_BIND_PORT: "7103" + CLUSTER_HOSTNAME: "weaviate-auth-test" + RAFT_JOIN: "weaviate-auth-test" + RAFT_BOOTSTRAP_EXPECT: "1" + DISABLE_TELEMETRY: "true" + DISABLE_RECOVERY_ON_PANIC: "true" + AUTHENTICATION_APIKEY_ENABLED: "true" + AUTHENTICATION_APIKEY_ALLOWED_KEYS: "viewer-key,editor-key,admin-key,custom-key" + AUTHENTICATION_APIKEY_USERS: "viewer-user,editor-user,admin-user,custom-user" + AUTHENTICATION_DB_USERS_ENABLED: "true" + AUTHORIZATION_RBAC_ENABLED: "true" + AUTHORIZATION_RBAC_ROOT_USERS: "admin-user"