Kinsta MCP服务器
    ](https://www.npmjs.com/package/kinsta-mcp) ](https://www.npmjs.com/package/kinsta-mcp)  ](https://nodejs.org/)
A. 模型上下文协议(MCP) 服务器 谢斯塔 WordPress托管平台。
该服务器允许AI助手(如Claude)通过 API金斯塔.
快速开始
先决条件
- Node.js v22或更高版本
- 具有API访问权限的Kinsta帐户
- Kinsta API密钥(请参见 生成API密钥)
步骤1:生成Kinsta API密钥
- 登录到 MyKinsta
- 首选 您的姓名>公司设置>API密钥
- 点击 创建API密钥
- 选择过期时间并为密钥命名
- 点击 生成 并复制密钥(只显示一次)
你也需要你的 公司ID,可以在MyKinsta的“公司设置”下找到。
步骤2:配置MCP客户端
选择与您的MCP客户端匹配的设置:
克劳德桌面(推荐)
添加到您的 claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 窗户: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"kinsta": {
"command": "npx",
"args": ["-y", "kinsta-mcp"],
"env": {
"KINSTA_API_KEY": "your-api-key",
"KINSTA_COMPANY_ID": "your-company-id"
}
}
}
}克劳德代码(CLI)
添加到您的Claude Code MCP设置中(~/.claude/mcp.json 或项目级别):
{
"mcpServers": {
"kinsta": {
"command": "npx",
"args": ["-y", "kinsta-mcp"],
"env": {
"KINSTA_API_KEY": "your-api-key",
"KINSTA_COMPANY_ID": "your-company-id"
}
}
}
}光标
在游标设置中,添加MCP服务器:
{
"mcpServers": {
"kinsta": {
"command": "npx",
"args": ["-y", "kinsta-mcp"],
"env": {
"KINSTA_API_KEY": "your-api-key",
"KINSTA_COMPANY_ID": "your-company-id"
}
}
}
}配置参考
环境变量
| 变量 | 必填 | 默认 | 描述 |
|---|---|---|---|
KINSTA_API_KEY | 是 | - | Kinsta API密钥(承载令牌) |
KINSTA_COMPANY_ID | 是 | - | 您的Kinsta公司ID |
KINSTA_API_BASE_URL | 没有 | https://api.kinsta.com/v2 | API基本URL(用于测试的覆盖) |
特性
工具
服务器提供 83工具 按类别组织:
连接性
| 工具 | 说明 |
|---|---|
kinsta.ping | 检查服务器状态和API凭据配置 |
认证
| 工具 | 说明 |
|---|---|
kinsta.auth.validate | 验证当前Kinsta API密钥并返回帐户信息(如果有效) |
运营
| 工具 | 说明 |
|---|---|
kinsta.operations.status | 通过操作ID检查异步Kinsta操作的状态 |
公司
| 工具 | 说明 |
|---|---|
kinsta.company.users | 列出Kinsta公司的所有用户 |
kinsta.company.regions | 列出Kinsta公司的所有可用部署区域 |
kinsta.company.api-keys | 列出您的Kinsta公司的所有API密钥 |
kinsta.company.activity-logs | 列出公司活动日志(支持过滤和分页) |
kinsta.company.plugins | 列出所有网站的WordPress插件(支持搜索/过滤/分页) |
kinsta.company.themes | 列出所有网站的WordPress主题(支持搜索/过滤/分页) |
站点
| 工具 | 说明 |
|---|---|
kinsta.sites.list | 列出所有WordPress网站(可选包括环境详细信息) |
kinsta.sites.get | 按ID获取特定Kinsta站点的详细信息 |
kinsta.sites.create | 创建一个新的WordPress网站(返回 operation_id) |
kinsta.sites.create-plain | 创建一个没有安装WordPress的新纯(空)网站(返回 operation_id) |
kinsta.sites.clone | 克隆现有站点(返回 operation_id) |
kinsta.sites.delete | 永久删除Kinsta网站(无法撤消) |
kinsta.sites.reset | 将网站重置为新的WordPress安装(破坏性) |
环境
| 工具 | 说明 |
|---|---|
kinsta.environments.list | 列出站点的所有环境 |
kinsta.environments.create | 为网站创建一个新的WordPress环境(返回 operation_id) |
kinsta.environments.create-plain | 为站点创建一个新的纯(空)环境(返回 operation_id) |
kinsta.environments.clone | 克隆现有环境(返回 operation_id) |
kinsta.environments.push | 将一个环境推到另一个环境(破坏性;返回 operation_id) |
kinsta.environments.delete | 删除环境(无法撤消) |
kinsta.environments.php-allocation | 更改环境的PHP worker分配(返回 operation_id) |
kinsta.environments.php-allocation-site | 更改站点中所有环境的PHP worker分配(返回 operation_id) |
kinsta.environments.webroot | 更改环境的webroot子文件夹(返回 operation_id) |
kinsta.environments.files | 列出环境文件系统中的文件 |
kinsta.environments.redirects | 列出环境的重定向规则(支持过滤/分页) |
kinsta.environments.redirects.update | 为环境创建、更新或删除重定向规则 |
kinsta.environments.ssh.status | 获取环境的SSH/SFTP状态 |
kinsta.environments.ssh.toggle | 为环境启用或禁用SSH/SFTP访问 |
kinsta.environments.ssh.password-access | 启用或禁用基于SSH密码的访问 |
kinsta.environments.ssh.generate-password | 生成新的SSH/SFTP密码 |
kinsta.environments.ssh.password | 获取当前SSH/SFTP密码 |
kinsta.environments.ssh.ip-allowlist | 获取SSH IP分配列表 |
kinsta.environments.ssh.ip-allowlist.update | 更新SSH IP分配列表 |
kinsta.environments.ssh.config | 获取环境的SSH连接配置 |
kinsta.environments.ssh.password-expiration | 更改SSH密码过期时间间隔 |
kinsta.environments.wp-cli | 在环境中运行WP-CLI命令(必须以开头 wp ) |
kinsta.environments.phpmyadmin | 获取环境的phpMyAdmin登录令牌 |
站点工具
| 工具 | 说明 |
|---|---|
kinsta.tools.clear-cache | 清除环境的服务器缓存(返回 operation_id) |
kinsta.tools.restart-php | 为某个环境重新启动PHP(返回 operation_id) |
kinsta.tools.php-version | 更改环境的PHP版本(返回 operation_id) |
kinsta.tools.denied-ips | 获取环境中被拒绝(阻止)的IP地址列表 |
kinsta.tools.denied-ips.update | 更新环境中被拒绝(阻止)的IP地址列表 |
插件和主题
| 工具 | 说明 |
|---|---|
kinsta.plugins.list | 列出环境的所有插件 |
kinsta.plugins.update | 更新单个插件(返回 operation_id) |
kinsta.plugins.bulk-update | 一次更新多个插件(返回 operation_id) |
kinsta.plugins.list-wp | 从WordPress.org存储库中列出带有详细信息的插件 |
kinsta.themes.list | 列出环境的所有主题 |
kinsta.themes.update | 更新单个主题(返回 operation_id) |
kinsta.themes.bulk-update | 一次更新多个主题(返回 operation_id) |
kinsta.themes.list-wp | 从WordPress.org存储库中列出主题及其详细信息 |
领域
| 工具 | 说明 |
|---|---|
kinsta.domains.list | 列出环境的所有自定义域 |
kinsta.domains.add | 将自定义域添加到环境中 |
kinsta.domains.delete | 从环境中删除自定义域 |
kinsta.domains.verification | 获取域的DNS验证记录 |
kinsta.domains.set-primary | 为环境设置主域 |
DNS(Kinsta DNS)
| 工具 | 说明 |
|---|---|
kinsta.dns.domains | 列出贵公司的所有DNS域 |
kinsta.dns.records | 列出域的DNS记录 |
kinsta.dns.records.create | 创建新的DNS记录 |
kinsta.dns.records.update | 更新现有DNS记录 |
kinsta.dns.records.delete | 删除DNS记录 |
边缘缓存和CDN
| 工具 | 说明 |
|---|---|
kinsta.edge-cache.clear | 清除环境的边缘缓存(返回 operation_id) |
kinsta.edge-cache.toggle | 为环境启用或禁用边缘缓存 |
kinsta.cdn.clear-cache | 清除环境的CDN缓存(返回 operation_id) |
kinsta.cdn.image-optimization | 配置CDN映像优化设置 |
SFTP用户
| 工具 | 说明 |
|---|---|
kinsta.sftp-users.list | 列出环境的其他SFTP/SSH用户帐户 |
kinsta.sftp-users.toggle | 启用或禁用其他SFTP/SSH帐户 |
kinsta.sftp-users.add | 添加新的附加SFTP/SSH用户帐户 |
kinsta.sftp-users.remove | 删除其他SFTP/SSH用户帐户 |
备份
| 工具 | 说明 |
|---|---|
kinsta.backups.list | 列出环境的所有备份 |
kinsta.backups.downloadable | 列出环境的可下载备份 |
kinsta.backups.create | 创建手动备份(返回 operation_id) |
kinsta.backups.restore | 从备份还原环境(破坏性;返回 operation_id) |
kinsta.backups.delete | 删除备份(无法撤消) |
分析
| 工具 | 说明 |
|---|---|
kinsta.analytics.visits | 获取某个日期范围内环境的访问者分析 |
kinsta.analytics.visits-usage | 获取访问者使用分析(计费访问) |
kinsta.analytics.bandwidth | 获取特定日期范围内环境的带宽分析 |
kinsta.analytics.bandwidth-usage | 获取带宽使用分析(计费带宽) |
kinsta.analytics.cdn-bandwidth | 获取特定日期范围内环境的CDN带宽分析 |
kinsta.analytics.cdn-bandwidth-usage | 获取CDN带宽使用分析(计费CDN带宽) |
kinsta.analytics.disk-space | 获取环境的磁盘空间使用情况分析 |
日志
| 工具 | 说明 |
|---|---|
kinsta.logs.get | 获取环境的日志文件内容 |
资源
服务器将数据作为MCP资源公开:
静态资源
| 资源URI | 描述 |
|---|---|
kinsta://sites | 列出您Kinsta公司的所有WordPress网站 |
kinsta://regions | 列出可用部署区域 |
资源模板
| 资源URI | 描述 |
|---|---|
kinsta://sites/{site_id} | 特定站点的详细信息 |
kinsta://sites/{site_id}/environments | 特定站点的环境 |
提示
服务器为常见工作流提供指导性提示:
| 提示 | 描述 |
|---|---|
deploy-site | 在Kinsta上创建新WordPress网站的指南 |
manage-backups | 备份列表、创建、还原、下载和删除工作流指南 |
push-environment | 在环境之间推动变更的指南(例如,上线) |
setup-domain | 向Kinsta环境添加自定义域的指南 |
发展
设置
# Clone the repo
git clone https://github.com/jacob-hartmann/kinsta-mcp.git
cd kinsta-mcp
# Use the Node.js version from .nvmrc
# (macOS/Linux nvm): nvm install && nvm use
# (Windows nvm-windows): nvm install 22 && nvm use 22
nvm install
nvm use
# Install dependencies
pnpm install
# Copy .env.example and configure
cp .env.example .env
# Edit .env with your API key and company ID本地运行
# Development mode (auto-reload)
pnpm dev
# Production build
pnpm build
# Production run
pnpm start调试
您可以使用 MCP检查员 要调试服务器,请执行以下操作:
# Run from source
pnpm inspect
# Run from built output
pnpm inspect:distpnpm inspect 负载 .env 自动通过 dotenv (参见 .env.example).
如果你看到 Ignored build scripts: esbuild...,跑 pnpm approve-builds 并允许 esbuild. 在CI中,我们安装依赖项时禁用了生命周期脚本(pnpm install --ignore-scripts)然后明确地仅重建 esbuild 用于生产建设工作。
贡献
欢迎投稿!请参阅 贡献.md 了解如何为这个项目做出贡献的指导方针。
安全
看 安全.md 用于安全策略和报告漏洞。
支持
这是一个“按原样”提供的社区项目 没有保证的支持。参见 支持.md 了解详情。
许可证
麻省理工学院©雅各布·哈特曼
