返回市场
透镜-MCP

透镜-MCP

作者:daoleno2 星标更新:2025-09-15

项目介绍

Lens Protocol MCP 服务器

提供针对代理优化的Lens Protocol数据和功能访问的模型上下文协议(MCP)服务器。

🛠️ 可用工具

lens_search

当你需要在Lens Protocol中查找或发现任何内容时

  • 查找:账户、帖子、用户名、应用和组
  • 自然语言:"加密货币账户","DeFi帖子","热门应用"
  • 示例lens_search(query="vitalik", type="accounts", show="concise")

lens_profile

当你想要了解关于Lens Protocol账户的所有信息时

  • 综合分析:身份、社交联系、影响力及活动(包括帖子)
  • 包含选项basicsocialinfluenceactivity(包括帖子),network
  • 示例lens_profile(who="0x...", include=["basic", "activity"], analyze="influence")

lens_content

当你想要理解内容的表现以及人们对它的看法时

  • 内容分析:帖子、反应、评论、互动指标
  • 自然查询:"此帖子的反应","用户发布的热门帖子"
  • 示例lens_content(about="reactions", target="post_123", include=["likes", "comments"])

lens_ecosystem

当你想要探索更广泛的Lens Protocol生态系统时

  • 生态系统视图:热门内容、热门应用、平台统计数据
  • 社区洞察:应用、组、生态系统健康状况、增长领域
  • 示例lens_ecosystem(view="trending", timeframe="7d", show="detailed")

资源(数据访问)

  • lens://account/{address} - 账户/个人资料信息
  • lens://post/{id} - 帖子/发布数据
  • lens://app/{address} - 应用信息
  • lens://group/{address} - 组信息

📋 响应格式

简洁(默认)

优化用于AI理解的自然语言摘要:

🔍 找到5个与"区块链"匹配的账户:
• vitalik.lens (0x1234...)
• ethereum.lens (0x5678...)
• defi.lens (0x9abc...)
... 还有2个

详细

摘要+完整的JSON数据以供全面上下文:

🔍 找到5个与"区块链"匹配的账户:
• vitalik.lens (0x1234...)
...

{
  "items": [...],
  "pageInfo": {...}
}

原始

直接的JSON输出用于程序化使用:

{
  "items": [...],
  "pageInfo": {...}
}

🎯 使用示例

搜索账户

{
  "name": "lens_search",
  "arguments": {
    "query": "vitalik",
    "type": "accounts",
    "show": "concise",
    "limit": 10
  }
}

分析带有活动和社会数据的个人资料

{
  "name": "lens_profile",
  "arguments": {
    "who": "0x...",
    "include": ["basic", "activity", "social"],
    "show": "detailed"
  }
}

理解内容互动

{
  "name": "lens_content",
  "arguments": {
    "what": "此帖子的反应",
    "about": "reactions", 
    "target": "post_123",
    "include": ["likes", "comments"]
  }
}

探索生态系统趋势

{
  "name": "lens_ecosystem",
  "arguments": {
    "view": "trending",
    "timeframe": "7d",
    "show": "detailed"
  }
}

安装

bun install

使用

启动服务器

本地(stdio)模式

bun start

远程HTTP模式

bun start:http
# 或自定义端口
PORT=8080 bun start:http

该服务器支持stdio(用于本地使用)和HTTP(用于远程访问)传输方式。

配置

设置环境变量:

  • LENS_ENVIRONMENT:设置为"testnet"用于测试网,默认为主网
  • PORT:HTTP服务器端口(默认:3000)

MCP客户端配置

本地服务器配置

将此服务器添加到你的MCP客户端配置中:

{
  "mcpServers": {
    "lens-protocol": {
      "command": "bun",
      "args": ["index.ts"],
      "cwd": "/path/to/lens-mcp"
    }
  }
}

远程服务器配置

对于远程HTTP访问:

{
  "mcpServers": {
    "lens-protocol-remote": {
      "transport": {
        "type": "http",
        "url": "https://lens-mcp.wooo.guru/mcp"
      }
    }
  }
}

开发

在开发模式下运行

# stdio模式
bun dev

# HTTP模式  
bun dev:http

测试

# 运行单元测试
bun test

# 运行集成测试  
bun test:integration

# 运行所有测试
bun test:all

Docker部署

# 使用Docker构建并运行
docker build -f docker/Dockerfile -t lens-mcp .
docker run -p 3000:3000 lens-mcp

# 或使用docker-compose
docker-compose -f docker/docker-compose.yml up

🏗️ 架构与设计原则

构建于

  • @lens-protocol/client@canary - 官方Lens Protocol TypeScript SDK
  • @modelcontextprotocol/sdk - MCP服务器实现
  • Bun - 快速JavaScript运行时和包管理器

设计原则

  1. 工作流程导向:工具符合自然任务划分
  2. 上下文高效:内置令牌限制和智能分页
  3. 自然语言:默认返回语义摘要
  4. 可操作错误:错误消息包含具体指导
  5. 多种格式:选择concisedetailedraw输出

限制

  • 公共客户端模式下的搜索功能有限(需要经过认证的会话)
  • 部分高级功能需要认证,而此服务器尚未实现
  • 速率限制取决于Lens Protocol API限制

贡献

  1. 分叉仓库
  2. 创建功能分支
  3. 进行更改
  4. 使用bun test.ts进行测试
  5. 提交拉取请求

许可证

MIT许可证