跳转到主要内容

概述

本指南演示了在 Claude Code 中使用 Anysite MCP 工具的实际工作流程和示例。这些示例展示了如何利用基于 CLI 的集成进行开发、自动化和团队协作。

基本使用

使用 MCP 启动会话

配置完成后,只需启动 Claude Code,MCP 服务器将自动连接:
claude
您的 Anysite 工具立即可用。尝试:
我可以使用哪些 MCP 工具?
Claude 将列出来自已连接 MCP 服务器的所有可用 Anysite 工具。

快速数据提取

示例:LinkedIn 个人资料分析
从此 LinkedIn 个人资料提取信息:
https://linkedin.com/in/satyanadella

重点关注:
- 当前职位和公司
- 职业发展
- 教育背景
Claude 将使用 linkedin_user MCP 工具获取和分析数据。

作用域管理示例

示例 1:个人用户作用域设置

用于您在所有项目中使用的工具:
# 添加到用户作用域(在任何地方可用)
claude mcp add --transport http --scope user anysite "https://mcp.anysite.io/mcp?api_key=YOUR_KEY"
用例: 您是一位经常在多个项目中提取 LinkedIn 数据的研究人员。 好处:
  • 配置一次,随处使用
  • 无需每个项目单独设置
  • 个人 API 密钥保持私密

示例 2:团队项目作用域设置

用于具有版本控制配置的共享团队项目:
# 导航到项目目录
cd my-team-project

# 使用项目作用域添加
claude mcp add --scope project anysite "https://mcp.anysite.io/mcp" \
  --env API_KEY=$ANYSITE_API_KEY

# 将 .mcp.json 提交到 git
git add .mcp.json
git commit -m "Add Anysite MCP configuration"
团队成员然后:
# 拉取项目
git pull

# 设置他们自己的 API 密钥
export ANYSITE_API_KEY="their_key_here"

# Claude Code 自动使用项目配置
claude
好处:
  • 共享配置
  • 个人 API 密钥(不提交)
  • 一致的团队设置

示例 3:临时本地设置

用于快速测试或临时工作:
# 使用本地作用域添加(默认)
claude mcp add --transport http anysite "https://mcp.anysite.io/mcp?api_key=TEMP_KEY"

# 用于此会话
claude

# 完成后移除
claude mcp remove anysite
用例: 使用试用 API 密钥测试或处理临时概念验证。

开发工作流程

工作流程 1:竞争情报研究

设置:
# 创建研究项目
mkdir competitor-research
cd competitor-research

# 使用项目作用域添加 Anysite
claude mcp add --scope project anysite "YOUR_URL"
在 Claude Code 中使用:
我正在研究 CRM 领域的竞争对手。对于每家公司,获取:

1. LinkedIn 公司页面:
   - https://linkedin.com/company/salesforce
   - https://linkedin.com/company/hubspot
   - https://linkedin.com/company/zoho

2. 提取:
   - 公司规模
   - 增长趋势
   - 最新动态
   - 关键高管

3. 创建比较表
使用脚本自动化:
#!/bin/bash
# research.sh

companies=(
  "salesforce"
  "hubspot"
  "zoho"
)

for company in "${companies[@]}"; do
  echo "Researching $company..." >> research.log
  claude <<EOF
Extract company information from https://linkedin.com/company/$company
Save key metrics to ${company}_data.json
EOF
done

工作流程 2:潜在客户生成管道

项目结构:
lead-gen/
├── .mcp.json          # 项目配置
├── leads.csv          # 输入:要研究的 URL
├── scripts/
│   └── process_leads.sh
└── output/
    └── enriched_leads.json
设置:
cd lead-gen
claude mcp add --scope project anysite "YOUR_URL"
处理脚本:
#!/bin/bash
# scripts/process_leads.sh

while IFS=, read -r name linkedin_url; do
  echo "Processing: $name"

  claude <<EOF
Extract profile data from: $linkedin_url
Output JSON format:
{
  "name": "$name",
  "current_role": "",
  "company": "",
  "location": "",
  "experience_years": 0,
  "skills": []
}
EOF
done < leads.csv

工作流程 3:内容监控仪表板

为不同来源设置多个服务器:
# Anysite 用于社交数据
claude mcp add --scope user anysite "ANYSITE_URL"

# 监控 Reddit
claude <<EOF
在这些 subreddit 中跟踪提及"our-product"的内容:
- r/technology
- r/startups
- r/SaaS

每 6 小时检查一次并总结情绪
EOF
自动化监控:
#!/bin/bash
# monitor.sh - 通过 cron 运行

claude <<EOF
监控这些 Reddit 帖子的新评论:
$(cat monitored_posts.txt)

如果情绪显著变化,将摘要发送到 monitor@company.com
EOF

CI/CD 集成

示例 1:自动化个人资料验证

GitHub Actions 工作流程:
# .github/workflows/verify-profiles.yml
name: Verify Team Profiles

on:
  schedule:
    - cron: '0 9 * * 1'  # 每周一上午 9 点
  workflow_dispatch:

jobs:
  verify:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Setup Claude Code
        run: |
          # 安装 Claude Code
          curl -sSL https://claude.ai/install.sh | bash

      - name: Configure MCP
        env:
          ANYSITE_API_KEY: ${{ secrets.ANYSITE_API_KEY }}
        run: |
          claude mcp add --scope local anysite \
            "https://mcp.anysite.io/mcp?api_key=$ANYSITE_API_KEY"

      - name: Verify Profiles
        run: |
          claude <<EOF
          验证 team_profiles.json 中的所有 LinkedIn 个人资料是否仍然活跃。
          检查:
          - 个人资料是否仍然存在
          - 职位变更
          - 公司变更

          将差异输出到 profile_changes.md
          EOF

      - name: Create Issue if Changes
        if: success()
        run: |
          if [ -s profile_changes.md ]; then
            gh issue create \
              --title "Team Profile Changes Detected" \
              --body-file profile_changes.md \
              --label "hr,automated"
          fi

示例 2:数据管道集成

Airflow DAG:
# dags/linkedin_enrichment_dag.py

from airflow import DAG
from airflow.operators.bash import BashOperator
from datetime import datetime, timedelta

default_args = {
    'owner': 'data-team',
    'depends_on_past': False,
    'start_date': datetime(2024, 1, 1),
    'retries': 2,
    'retry_delay': timedelta(minutes=5),
}

dag = DAG(
    'linkedin_enrichment',
    default_args=default_args,
    schedule_interval='@daily',
    catchup=False
)

# 配置 MCP
setup_mcp = BashOperator(
    task_id='setup_mcp',
    bash_command='''
        claude mcp add --scope local anysite "$ANYSITE_MCP_URL"
    ''',
    dag=dag
)

# 增强潜在客户
enrich_data = BashOperator(
    task_id='enrich_leads',
    bash_command='''
        claude <<EOF
        从 /data/new_leads.csv 读取潜在客户
        对于每个 LinkedIn URL,提取:
        - 个人资料数据
        - 当前公司信息
        - 最近活动

        输出到 /data/enriched_leads.json
        EOF
    ''',
    dag=dag
)

# 加载到数据库
load_db = BashOperator(
    task_id='load_to_database',
    bash_command='python scripts/load_enriched_data.py',
    dag=dag
)

setup_mcp >> enrich_data >> load_db

多工作区管理

管理多个项目

场景: 您在不同的项目上工作,需要不同的 MCP 配置。
# 项目 A:营销研究
cd ~/projects/marketing-research
claude mcp add --scope project anysite-marketing "URL1"

# 项目 B:销售情报
cd ~/projects/sales-intel
claude mcp add --scope project anysite-sales "URL2"

# 个人工具(在任何地方可用)
claude mcp add --scope user anysite-personal "URL3"
检查当前配置:
# 在任何项目中
claude mcp list

# 输出显示:
# anysite-personal (user scope) ✔ connected
# anysite-marketing (project scope, if in marketing-research/) ✔ connected

切换上下文

# 在营销项目上工作
cd ~/projects/marketing-research
claude  # 使用 marketing-research/.mcp.json + 用户作用域

# 切换到销售项目
cd ~/projects/sales-intel
claude  # 使用 sales-intel/.mcp.json + 用户作用域

# 个人工作
cd ~/documents
claude  # 仅使用用户作用域

高级技术

使用脚本批量处理

处理多个 LinkedIn 个人资料:
#!/bin/bash
# batch_linkedin_extract.sh

input_file="linkedin_urls.txt"
output_dir="./extracted_data"
mkdir -p "$output_dir"

while IFS= read -r url; do
  # 从 URL 提取个人资料 ID
  profile_id=$(echo "$url" | sed 's/.*linkedin.com\/in\///' | sed 's/\/.*//')

  echo "Processing: $profile_id"

  # 使用 Claude Code 和 MCP
  claude <<EOF > "${output_dir}/${profile_id}.json"
从以下链接提取 LinkedIn 个人资料数据:$url

输出为 JSON,包含以下字段:
{
  "profile_id": "$profile_id",
  "extracted_at": "$(date -Iseconds)",
  "data": {
    "name": "",
    "headline": "",
    "location": "",
    "current_position": {},
    "experience": [],
    "education": [],
    "skills": []
  }
}
EOF

  # 速率限制
  sleep 2

done < "$input_file"

echo "批量处理完成。提取了 $(ls -1 "$output_dir" | wc -l) 个个人资料。"

基于 MCP 数据的条件逻辑

#!/bin/bash
# conditional_analysis.sh

company_url="https://linkedin.com/company/target-company"

# 提取数据并分析
result=$(claude <<EOF
分析此公司:$company_url

确定是否:
1. 快速增长(员工增长 >20%)
2. 在科技行业
3. 位于美国

仅输出:YES 或 NO
EOF
)

if [ "$result" = "YES" ]; then
  echo "公司符合条件。正在生成详细报告..."

  claude <<EOF
为以下公司创建全面的公司报告:$company_url
包括竞争分析和市场定位。
保存到:reports/$(date +%Y%m%d)_target_company.md
EOF

  # 通知团队
  echo "Report ready" | mail -s "New Target Company Report" team@company.com
else
  echo "公司不符合条件。跳过详细分析。"
fi

与数据分析工具集成

使用 Claude Code 的 Python 脚本:
#!/usr/bin/env python3
# analyze_linkedin_data.py

import subprocess
import json
import pandas as pd

def extract_profile(linkedin_url):
    """使用 Claude Code MCP 提取 LinkedIn 个人资料"""

    prompt = f"""
    从以下链接提取个人资料数据:{linkedin_url}
    仅输出有效的 JSON,不需要解释。
    """

    result = subprocess.run(
        ['claude'],
        input=prompt,
        capture_output=True,
        text=True
    )

    return json.loads(result.stdout)

def main():
    # 加载要分析的个人资料列表
    with open('profiles_list.txt', 'r') as f:
        urls = [line.strip() for line in f]

    # 提取数据
    profiles = []
    for url in urls:
        print(f"Extracting: {url}")
        data = extract_profile(url)
        profiles.append(data)

    # 创建 DataFrame
    df = pd.DataFrame(profiles)

    # 分析
    print("\n=== 个人资料分析 ===")
    print(f"总个人资料数:{len(df)}")
    print(f"平均经验:{df['years_experience'].mean():.1f} 年")
    print(f"\n前 5 项技能:")
    print(df['skills'].explode().value_counts().head())

    # 导出结果
    df.to_csv('linkedin_analysis.csv', index=False)
    print("\n结果已保存到 linkedin_analysis.csv")

if __name__ == '__main__':
    main()

调试和监控

调试模式使用

启用调试输出:
# 使用调试标志运行
claude --mcp-debug

# 或设置环境变量
export CLAUDE_MCP_DEBUG=1
claude
调试输出显示:
[MCP] Connecting to: anysite (http)
[MCP] Transport: http
[MCP] URL: https://mcp.anysite.io/mcp?api_key=***
[MCP] Connection established
[MCP] Tools discovered: 15
[MCP] Tools: linkedin_user, linkedin_company, instagram_profile, ...

监控 MCP 使用情况

检查服务器状态脚本:
#!/bin/bash
# check_mcp_status.sh

echo "=== MCP 服务器状态 ==="
echo

# 列出所有服务器
echo "已配置的服务器:"
claude mcp list

echo
echo "测试与 anysite 的连接:"
claude mcp get anysite

# 记录到文件
{
  echo "Status check at: $(date)"
  claude mcp list
  echo "---"
} >> mcp_status.log
定期运行:
# 添加到 crontab
0 */4 * * * /path/to/check_mcp_status.sh

脚本中的错误处理

#!/bin/bash
# robust_extraction.sh

extract_with_retry() {
  local url=$1
  local max_attempts=3
  local attempt=1

  while [ $attempt -le $max_attempts ]; do
    echo "Attempt $attempt of $max_attempts"

    output=$(claude <<EOF 2>&1
从以下链接提取数据:$url
输出为 JSON
EOF
    )

    # 检查提取是否成功
    if echo "$output" | jq . > /dev/null 2>&1; then
      echo "$output"
      return 0
    fi

    echo "提取失败,正在重试..."
    attempt=$((attempt + 1))
    sleep 5
  done

  echo "ERROR: Failed after $max_attempts attempts"
  return 1
}

# 使用
if result=$(extract_with_retry "https://linkedin.com/in/profile"); then
  echo "$result" > output.json
  echo "成功"
else
  echo "无法提取数据" >&2
  exit 1
fi

最佳实践

1. 作用域选择策略

用户作用域

用于:
  • 个人 API 密钥
  • 您在任何地方使用的工具
  • 跨项目工具
示例:
claude mcp add --scope user \
  anysite "URL"

项目作用域

用于:
  • 团队协作
  • 版本控制的配置
  • 项目特定设置
示例:
claude mcp add --scope project \
  anysite "URL" \
  --env API_KEY=$KEY

本地作用域

用于:
  • 临时设置
  • 测试
  • 敏感凭据
示例:
claude mcp add \
  anysite-test "URL"

2. 安全检查清单

  • ✅ 对 API 密钥使用环境变量
  • ✅ 将配置文件添加到 .gitignore
  • ✅ 定期轮换密钥
  • ✅ 对敏感密钥使用 --scope local
  • ✅ 使用 claude mcp list 审计配置
  • ✅ 移除未使用的服务器
  • ❌ 永远不要将 API 密钥提交到版本控制
  • ❌ 不要公开分享直接 URL

3. 性能优化

速率限制:
# 在请求之间添加延迟
for url in "${urls[@]}"; do
  claude <<< "Extract: $url"
  sleep 2  # 遵守 API 速率限制
done
批量类似请求:
# 而不是多次调用
claude <<EOF
在一个请求中提取所有这些个人资料:
1. linkedin.com/in/profile1
2. linkedin.com/in/profile2
3. linkedin.com/in/profile3
EOF
缓存结果:
# 保存提取的数据
output_file="cache/profile_${profile_id}.json"

if [ ! -f "$output_file" ]; then
  # 仅在未缓存时提取
  claude <<< "Extract: $url" > "$output_file"
fi

常见模式

模式 1:每日自动化报告

#!/bin/bash
# daily_report.sh

date=$(date +%Y-%m-%d)
report_file="reports/daily_${date}.md"

claude <<EOF > "$report_file"
生成每日情报报告:

1. 检查这些 LinkedIn 公司页面的更新:
   - https://linkedin.com/company/competitor1
   - https://linkedin.com/company/competitor2

2. 监控 r/industry 中的 Reddit 帖子以了解热门话题

3. 分析情绪和关键主题

4. 以 markdown 格式的执行摘要输出
EOF

# 发送报告邮件
mail -s "Daily Intelligence Report - $date" \
  -a "$report_file" \
  executives@company.com < /dev/null

模式 2:交互式研究会话

# 启动研究会话
claude

# 然后交互式:
  1. 提取目标公司个人资料
  2. 获取关键员工列表
  3. 分析他们的背景
  4. 识别共同模式
  5. 生成招聘策略建议

模式 3:数据验证管道

#!/bin/bash
# validate_data.sh

input_csv="leads.csv"
output_csv="validated_leads.csv"

# 验证每个 LinkedIn URL
while IFS=, read -r id name linkedin_url; do
  # 检查个人资料是否存在且可访问
  status=$(claude <<EOF
检查此 LinkedIn 个人资料是否有效且可访问:
$linkedin_url

仅输出:VALID 或 INVALID
EOF
  )

  echo "$id,$name,$linkedin_url,$status" >> "$output_csv"
done < "$input_csv"

资源

需要帮助?

获取支持

联系我们的支持团队获取 Claude Code MCP 工作流程帮助