书签管理服务器

一个用于与Instapaper交互的MCP服务器,优化AI代理的书签管理、内容组织和文章分析功能。

  • by 00Green27
  • C#
  • 本地部署
  • 更新于
在 GitHub 查看 00Green27/instapaper-mcp

使用说明

instapeach mcp

用于与Instapaper交互的MCP服务器。针对AI代理进行了优化——通过工具和资源管理书签、组织内容和分析文章。


快速开始

1.配置凭据

cd src/Instapaper.Mcp.Server
dotnet user-secrets set "Instapaper:ConsumerKey" "your_app_key"
dotnet user-secrets set "Instapaper:ConsumerSecret" "your_app_secret"
dotnet user-secrets set "Instapaper:Username" "your_email"
dotnet user-secrets set "Instapaper:Password" "your_password"

或者通过环境变量:

  • Instapaper__ConsumerKey
  • Instapaper__ConsumerSecret
  • Instapaper__Username
  • Instapaper__Password

2.建造

dotnet build

3.跑步

dotnet run --project src/Instapaper.Mcp.Server --no-build -v quiet

4.MCP客户端集成

发展 --添加到您的MCP客户端配置中(例如。, claude_desktop_config.json):

{
  "mcpServers": {
    "instapaper": {
      "command": "dotnet",
      "args": [
        "run",
        "--project",
        "/path/to/instapaper-mcp/src/Instapaper.Mcp.Server",
        "--no-build",
        "-v",
        "quiet"
      ],
      "env": {
        "Instapaper__ConsumerKey": "your_key",
        "Instapaper__ConsumerSecret": "your_secret",
        "Instapaper__Username": "your_email",
        "Instapaper__Password": "your_password"
      }
    }
  }
}

生产 --直接使用已发布的DLL:

dotnet publish src/Instapaper.Mcp.Server -c Release -o ./publish
{
  "mcpServers": {
    "instapaper": {
      "command": "dotnet",
      "args": ["/absolute/path/to/Instapaper.Mcp.Server.dll"],
      "env": {
        "Instapaper__ConsumerKey": "your_key",
        "Instapaper__ConsumerSecret": "your_secret",
        "Instapaper__Username": "your_email",
        "Instapaper__Password": "your_password"
      }
    }
  }
}

配置

变量 描述
Instapaper__ConsumerKey 应用程序API密钥
Instapaper__ConsumerSecret 应用程序API机密
Instapaper__Username instpaper帐户电子邮件
Instapaper__Password Instapaper帐户密码
Instapaper__AccessToken 访问令牌(可选,用于OAuth)
Instapaper__AccessTokenSecret 访问令牌密钥(可选,适用于OAuth)

工具

工具 说明
list_bookmarks 列出/搜索书签(文件夹、限制、查询)
add_bookmark 添加新书签或注释
archive_bookmark 将书签移动到存档
unarchive_bookmark 从存档还原书签
mark_bookmark 将书签标记为重要
unmark_bookmark 删除重要标记
move_bookmarks 将书签移动到另一个文件夹
list_folders 列出所有文件夹
create_folder 创建新文件夹
delete_folder 删除文件夹
reorder_folders 重新排序文件夹

资源

资源提供对Instapaper数据的只读访问:

  • instapaper://bookmarks/unread --未读书签
  • instapaper://bookmarks/archive --已存档书签
  • instapaper://bookmarks/starred --带星号的书签
  • instapaper://folders --文件夹列表
  • instapaper://bookmark/{id} --书签的全文和元数据

示例工作流

分析未读文章

“显示上周未读的书签,并按标题突出显示最有趣的书签”

按主题组织

“为‘AI’、‘DevOps’、‘Security’创建文件夹,并将未读书签组织到其中”

每周文摘

“生成过去7天未读文章的简短摘要,并附上要点”

档案清理

“查找旧的存档书签(超过6个月),并建议删除哪些书签”


码头工人

塑造形象

docker build -t instapaper-mcp:latest .

运行容器

docker run -d \
  --name instapaper-mcp \
  -e Instapaper__ConsumerKey="your_key" \
  -e Instapaper__ConsumerSecret="your_secret" \
  -e Instapaper__Username="your_email" \
  -e Instapaper__Password="your_password" \
  instapaper-mcp:latest

Docker Compose

# Create .env file with your credentials first
docker-compose up -d

故障排除

问题 解决
401未经授权 验证凭据;令牌自动刷新
速率限制 Instapaper API限制请求-请稍候几分钟
未找到书签 检查书签ID(使用 list_bookmarks)