内容
# Inky MCP 服务器
[](https://www.npmjs.com/package/inky-mcp-server)
[](https://www.npmjs.com/package/inky-mcp-server)
Inky 的 MCP(模型上下文协议)服务器,提供对存储在 Pinecone 中的个性化编码规则的访问。该服务器充当 Cursor IDE 与 Inky 后端 API 之间的桥梁。
📦 **发布于 npmjs:** [https://www.npmjs.com/package/inky-mcp-server](https://www.npmjs.com/package/inky-mcp-server)
## 概述
Inky MCP 服务器允许您直接从 Cursor IDE 访问个性化的软件规则。它连接到托管的 Inky API 端点,并从 Pinecone 数据库中检索规则。
## 功能
- ✅ 列出所有编码规则
- ✅ 按仓库过滤规则
- ✅ 安全的 API 密钥身份验证
- ✅ 兼容 JSON-RPC 2.0 协议
- ✅ 与 Cursor IDE 兼容
## 安装
该软件包可在 npmjs 上找到:[inky-mcp-server](https://www.npmjs.com/package/inky-mcp-server)
### 使用 npx(推荐)
```bash
npx -y inky-mcp-server
```
### 使用 npm
```bash
npm install -g inky-mcp-server
```
### 使用 pnpm
```bash
pnpm add -g inky-mcp-server
```
### 使用 yarn
```bash
yarn global add inky-mcp-server
```
## 配置
### 1. 获取您的 API Token
首先,您需要从 Inky 账户生成一个 MCP 访问令牌。该令牌的格式为 `inky_...`。
### 2. 配置 Cursor IDE
将以下配置添加到 Cursor 设置中。配置文件的具体位置取决于您的操作系统:
**macOS/Linux:** `~/.cursor/mcp.json`
**Windows:** `%APPDATA%\Cursor\mcp.json`
**选项 1: HTTP 传输(推荐 - 直接 API 访问)**
```json
{
"mcpServers": {
"inky": {
"url": "https://your-domain.com/api/mcp",
"headers": {
"Authorization": "Bearer inky_YOUR_TOKEN_HERE"
}
}
}
}
```
**选项 2: Stdio 传输(使用 MCP 服务器包)**
```json
{
"mcpServers": {
"inky": {
"command": "npx",
"args": ["-y", "inky-mcp-server"],
"env": {
"API_KEY": "inky_YOUR_TOKEN_HERE",
"INKY_API_URL": "https://your-domain.com"
}
}
}
}
```
### 环境变量
- `API_KEY`(必填):您的 Inky MCP 访问令牌(以 `inky_` 开头)
- `INKY_API_URL`(可选):您的 Inky API 基本 URL。默认为:
- `NEXT_PUBLIC_APP_URL` 环境变量
- `http://localhost:3000` 如果未设置
## 使用
配置完成后,MCP 服务器将在 Cursor IDE 中可用。您可以使用它:
### 列出所有规则
查询所有编码规则:
```
列出所有我的编码规则
```
### 按仓库过滤
获取特定仓库的规则:
```
显示仓库 [repository_id] 的规则
```
## API 参考
MCP 服务器使用 JSON-RPC 2.0 协议与 Inky 后端 API 通信。
### 工具
#### `list_rules`
列出所有用户的规则,可选地按仓库过滤。
**参数:**
- `repository_id`(可选):按仓库 ID 过滤规则
**示例请求:**
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "list_rules",
"arguments": {
"repository_id": "repo_123"
}
},
"id": 1
}
```
**示例响应:**
```json
{
"jsonrpc": "2.0",
"result": {
"content": [
{
"type": "text",
"text": "[{\"id\":\"rule_123\",\"name\":\"TypeScript 最佳实践\",\"content\":\"...\",\"version\":1,\"is_active\":true,\"repository_id\":\"repo_123\",\"created_at\":\"2024-01-01T00:00:00Z\"}]"
}
]
},
"id": 1
}
```
## 开发
### 从源代码构建
```bash
cd packages/mcp-server
pnpm install
pnpm build
```
### 在开发模式下运行
```bash
pnpm dev
```
### 测试
您可以使用主仓库中包含的 Postman 集合(`postman-mcp-collection.json`)测试 MCP 服务器。
## 架构
```
┌─────────────┐
│ Cursor IDE │
└──────┬──────┘
│ stdio
│
┌──────▼──────────────────┐
│ Inky MCP 服务器 │
│ (此软件包) │
└──────┬──────────────────┘
│ HTTP POST
│ Bearer Token
│
┌──────▼──────────────────┐
│ Inky 后端 API │
│ /api/mcp │
└──────┬──────────────────┘
│
┌──────▼──────────────────┐
│ Pinecone 数据库 │
│ (用户规则) │
└──────────────────────────┘
```
## 安全
- API 令牌通过环境变量传递(绝不硬编码)
- 所有 API 请求都使用 Bearer 令牌身份验证
- 令牌在数据库中经过哈希处理并安全存储
- 每个用户只能访问自己的规则
## 故障排除
### 服务器无法启动
**错误:** `Error: API_KEY 环境变量是必需的`
**解决方案:** 确保您已在 Cursor MCP 配置中设置了 `API_KEY` 环境变量。
### 连接错误
**错误:** `后端 API 错误`
**解决方案:**
1. 验证您的 `INKY_API_URL` 是否正确
2. 检查您的 API 令牌是否有效
3. 确保后端 API 可访问
### 未返回规则
**解决方案:**
1. 验证您是否在 Inky 账户中创建了规则
2. 检查您的 API 令牌是否属于正确的用户
3. 尝试先列出规则而不使用仓库过滤器
## 许可证
MIT
## 支持
有关问题和疑问,请参阅 Inky 主仓库。