Token导航 LogoToken导航TokenDH.com
Job URL Analyzer MCP Server logo
运维云端未说明官方级别未说明来源级核验

Job URL Analyzer MCP Server

MCP Server

一个基于FastAPI的微服务,用于分析职位URL并提取详细的招聘公司信息,支持数据增强和报告生成。

工具数

0

提示词数

0

GitHub Stars

2

资源数

0
报告生成Python云端部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

subslink326

提供方

subslink326

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

作业URL分析器MCP服务器

一个全面的基于FastAPI的微服务,用于分析作业URL并提取详细的公司信息。该服务使用现代异步Python构建,可以抓取招聘信息和公司网站,通过外部提供商的数据丰富来构建丰富的公司简介。

✨ 特性

  • 🕷️ 智能网络爬行:尊重robots.txt的爬行合规性和速率限制
  • 🧠 内容提取:使用Selectolax进行高级HTML解析,以实现快速、准确的数据提取
  • 🔗 数据丰富:可插入的丰富服务提供商(Crunchbase、LinkedIn、自定义API)
  • 📊 质量评分:提取数据的完整性和置信度指标
  • 📝 Markdown报告:漂亮、全面的公司分析报告
  • 🔍 可观测性:OpenTetry跟踪、Prometheus指标、结构化日志记录
  • 🚀 生产就绪:Docker、Kubernetes、健康检查、优雅关机
  • 🧪 测试良好:全面的测试套件,覆盖率超过80%

🏗️ 建筑

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   FastAPI App   │───▶│   Orchestrator  │───▶│   Web Crawler   │
└─────────────────┘    └─────────────────┘    └─────────────────┘
                                │                        │
                                ▼                        ▼
                       ┌─────────────────┐    ┌─────────────────┐
                       │ Content Extract │    │    Database     │
                       └─────────────────┘    │   (SQLAlchemy)  │
                                │             └─────────────────┘
                                ▼                        
                       ┌─────────────────┐    ┌─────────────────┐
                       │   Enrichment    │───▶│    Providers    │
                       │    Manager      │    │ (Crunchbase,etc)│
                       └─────────────────┘    └─────────────────┘
                                │                        
                                ▼                        
                       ┌─────────────────┐              
                       │ Report Generator│              
                       └─────────────────┘              

🚀 快速开始

先决条件

  • Python 3.11+
  • 诗歌(用于依赖管理)
  • Docker和Docker Compose(可选)

地方发展

  1. 克隆和设置
   git clone https://github.com/subslink326/job-url-analyzer-mcp.git
   cd job-url-analyzer-mcp
   poetry install
  1. 环境配置 *(可选)*
   # The application has sensible defaults and can run without environment configuration
   # To customize settings, create a .env file with your configuration
   # See src/job_url_analyzer/config.py for available settings
  1. 数据库设置
   poetry run alembic upgrade head
  1. 运行开发服务器
   poetry run python -m job_url_analyzer.main
   # Server starts at http://localhost:8000

Docker部署

  1. 发展
   docker-compose up --build
  1. 生产
   docker-compose -f docker-compose.prod.yml up -d

📡 API使用

分析作业URL

curl -X POST "http://localhost:8000/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://company.com/jobs/software-engineer",
    "include_enrichment": true,
    "force_refresh": false
  }'

响应示例

{
  "profile_id": "123e4567-e89b-12d3-a456-426614174000",
  "source_url": "https://company.com/jobs/software-engineer",
  "company_profile": {
    "name": "TechCorp",
    "description": "Leading AI company...",
    "industry": "Technology",
    "employee_count": 150,
    "funding_stage": "Series B",
    "total_funding": 25.0,
    "headquarters": "San Francisco, CA",
    "tech_stack": ["Python", "React", "AWS"],
    "benefits": ["Health insurance", "Remote work"]
  },
  "completeness_score": 0.85,
  "confidence_score": 0.90,
  "processing_time_ms": 3450,
  "enrichment_sources": ["crunchbase"],
  "markdown_report": "# TechCorp - Company Analysis Report\n..."
}

⚙️ 配置

环境变量

变量描述默认值
DEBUG启用调试模式false
HOST服务器主机0.0.0.0
PORT服务器端口8000
DATABASE_URL数据库连接字符串sqlite+aiosqlite:///./data/job_analyzer.db
MAX_CONCURRENT_REQUESTS最大并发HTTP请求数10
REQUEST_TIMEOUTHTTP请求超时(秒)30
CRAWL_DELAY请求之间的延迟(秒)1.0
RESPECT_ROBOTS_TXT尊重robots.txttrue
ENABLE_CRUNCHBASE启用Crunchbase富集false
CRUNCHBASE_API_KEYCrunchbase API密钥""
DATA_RETENTION_DAYS数据保留期90

📊 监控

指标端点

  • 健康检查: GET /health
  • 普罗米修斯指标: GET /metrics

主要绩效指标

  • job_analyzer_requests_total -API请求总数
  • job_analyzer_analysis_success_total -成功的分析
  • job_analyzer_completeness_score -数据完整性分布
  • job_analyzer_crawl_requests_total -按状态抓取请求
  • job_analyzer_enrichment_success_total -提供商的扩展成功

🧪 测试

运行测试

# Unit tests
poetry run pytest

# With coverage
poetry run pytest --cov=job_url_analyzer --cov-report=html

# Integration tests only
poetry run pytest -m integration

# Skip slow tests
poetry run pytest -m "not slow"

🚀 部署

Kubernetes

# Apply manifests
kubectl apply -f kubernetes/

# Check deployment
kubectl get pods -l app=job-analyzer
kubectl logs -f deployment/job-analyzer

生产检查表

  • \[\]已配置环境变量
  • \[\]已应用数据库迁移
  • \[\]已配置SSL证书
  • \[\]设置监控仪表板
  • \[\]已配置日志聚合
  • \[\]已实施备份策略
  • \[\]已配置速率限制
  • \[\]已设置资源限制

🔧 发展

项目结构

job-url-analyzer/
├── src/job_url_analyzer/          # Main application code
│   ├── enricher/                  # Enrichment providers
│   ├── main.py                    # FastAPI application
│   ├── config.py                  # Configuration
│   ├── models.py                  # Pydantic models
│   ├── database.py                # Database models
│   ├── crawler.py                 # Web crawler
│   ├── extractor.py               # Content extraction
│   ├── orchestrator.py            # Main orchestrator
│   └── report_generator.py        # Report generation
├── tests/                         # Test suite
├── alembic/                       # Database migrations
├── kubernetes/                    # K8s manifests
├── monitoring/                    # Monitoring configs
├── docker-compose.yml             # Development setup
├── docker-compose.prod.yml        # Production setup
└── Dockerfile                     # Container definition

代码质量

该项目使用:

  • 黑色 用于代码格式化
  • 拉夫 对于linting
  • MyPy 用于类型检查
  • 预承诺 质量闸门挂钩
# Setup pre-commit
poetry run pre-commit install

# Run quality checks
poetry run black .
poetry run ruff check .
poetry run mypy src/

📝 最近更改

依赖关系更新

  • 固定的:替换不存在 aiohttp-robotparser 依赖与 robotexclusionrulesparser 用于robots.txt解析
  • 改进的:安装过程现在可以开箱即用,无需 .env 文件配置

🤝 贡献

  1. 分叉存储库
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 进行更改
  4. 添加新功能的测试
  5. 确保所有测试通过(poetry run pytest)
  6. 提交您的更改(git commit -m 'Add amazing feature')
  7. 推到分支(git push origin feature/amazing-feature)
  8. 打开拉取请求

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🆘 支持

  • 文档:此README和内联代码注释
  • 问题:GitHub错误报告和功能请求问题
  • 讨论:GitHub问题和社区讨论

______________________________________________________________________

内置于❤️ 使用FastAPI、SQLAlchemy和现代Python工具。

目录标签

目录标签

报告生成Python云端部署职位分析本地部署数据爬取公司信息提取数据增强

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明noneremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP