Google Jobs MCP Server
SerpAPI 統合により Google Jobs の検索機能を提供する、Model Context Protocol(MCP)サーバー実装です。多言語サポート、柔軟な検索パラメータ、スマートなエラー処理を備えています。
https://github.com/user-attachments/assets/8f6739e1-7db7-4171-88b4-59c6290a4c72
✨ 特徴
🌍 多言語サポート
自動言語検出とフォールバックにより、英語、中国語、日本語、韓国語の完全なローカリゼーションをサポートします。
🔍 柔軟な検索オプション
包括的な検索パラメータには以下が含まれます:
職種とキーワード
半径フィルタリングによる場所
雇用形態(フルタイム、パートタイムなど)
給与範囲フィルター
投稿日フィルタリング
結果の並べ替え
💡 スマートなエラー処理
包括的な入力検証
役立つエラーメッセージと提案
自動検索絞り込み提案
レート制限の処理
📊 豊富な求人詳細
詳細な求人情報のフォーマット
会社の特典とハイライト
給与情報(入手可能な場合)
直接申請リンク
求人掲載タイムスタンプ
🔄高度な機能
ページネーションのサポート
複数の並べ替えオプション
地理的半径検索
雇用形態のフィルタリング
🔑 SERP API セットアップガイド
始める前に、SERP API キーを取得する必要があります。
SERP APIウェブサイトにアクセスしてアカウントを作成してください
登録後、ダッシュボードに移動します。
「APIキー」セクションを見つけます
APIキーをコピーする
新規ユーザーは100回のAPI呼び出しが無料
API 使用の詳細:
無料枠: 月間100回の検索
有料プランは月額50ドルからで、検索回数は5000回まで。
成功したAPI呼び出しに基づく課金
複数の支払い方法: クレジットカード、PayPal など。
使用制限:
リクエストレート: 2 リクエスト/秒
IP制限: なし
同時リクエスト数: 5
レスポンスキャッシュ時間: 1時間
👩🔧 NVM/NPM を使用した MCP サーバー接続の問題の解決策
私の構成ソリューションを見るにはクリックしてください👉 https://github.com/modelcontextprotocol/servers/issues/76
🚀 クイックスタート
依存関係をインストールします:
npm install環境を構成する:
claude_desktop_config.jsonを次の内容で変更します (システムに応じてパスを調整します)。
{
"google-jobs": {
"command": "D:\\Program\\nvm\\node.exe",
"args": ["D:\\github_repository\\path_to\\dist\\index.js"],
"env": {
"SERP_API_KEY": "your-api-key"
}
}
}サーバーを構築します。
npm run buildサーバーを起動します。
npm startトラブルシューティング
API キーの問題:
構成内のキーを確認する
SERP APIダッシュボードでキーのステータスを確認する
キーに残りのクォータがあることを確認する
検索の問題:
検索パラメータの形式を検証する
ネットワーク接続を確認する
国/言語コードのサポートを確認する
📦 インストール
Related MCP server: Scrapeless MCP Server
Smithery経由でインストール
Smithery経由で Claude Desktop に Google Jobs を自動的にインストールするには:
npx -y @smithery/cli install @chanmeng666/google-jobs-server --client claude手動インストール
@chanmeng666/google-jobs-server
# Using npm
npm i @chanmeng666/google-jobs-server
# or
npm install @chanmeng666/google-jobs-server
# Using yarn
yarn add @chanmeng666/google-jobs-server
# Using pnpm
pnpm add @chanmeng666/google-jobs-server評価の実行
evalsパッケージはmcpクライアントをロードし、index.tsファイルを実行するため、テスト間でリビルドする必要はありません。npxコマンドの先頭に環境変数をロードすることもできます。完全なドキュメントはこちらでご覧いただけます。
OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts src/index.ts💻 技術スタック
📖 APIドキュメント
サーバーはモデルコンテキストプロトコルを実装し、次のパラメータを持つ求人検索ツールを公開します。
query: 検索クエリ文字列(必須)location: 勤務地(オプション)posted_age: 投稿日フィルター(オプション)employment_type: 職種フィルター(オプション)salary: 給与範囲フィルター(オプション)radius: 地理的な検索半径(オプション)hl: 言語コード(オプション)page: ページ番号(オプション)sort_by: 並べ替え順(オプション)
🔧 開発
# Run in development mode
npm run dev
# Run type checking
npm run typecheck
# Build for production
npm run build📝 ライセンス
このプロジェクトはMIT ライセンスです。
🙋♀ 著者
Chan Mengによって作成および管理されています。
Available Tools
1 toolsearch_jobsB
Google Jobs API search tool.
Supported search parameters:
Basic Search: Job title or keywords
Location: City or region
Time Filter: Recently posted jobs
Job Type: Full-time, part-time, contract, internship
Salary Range: Filter by compensation
Geographic Range: Set search radius
Language: Multi-language support
All parameters except 'query' are optional and can be freely combined.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search keywords (Required, e.g., 'software engineer', 'data analyst', 'product manager') | |
| location | No | Job location (Optional, e.g., 'New York', 'London', 'Tokyo') | |
| posted_age | No | Posting date filter (Optional) Options: - "today": Posted today - "3days": Last 3 days - "week": Last week - "month": Last month | |
| employment_type | No | Job type (Optional) Options: - "FULLTIME": Full-time - "PARTTIME": Part-time - "CONTRACTOR": Contractor - "INTERN": Internship - "TEMPORARY": Temporary | |
| salary | No | Salary range (Optional) Format examples: - "$50K+": Above $50,000 - "$100K+": Above $100,000 - "$150K+": Above $150,000 | |
| radius | No | Search radius (Optional) Format examples: - "10mi": Within 10 miles - "20mi": Within 20 miles - "50mi": Within 50 miles | |
| hl | No | Result language (Optional) Options: - "en": English - "zh-CN": Chinese - "ja": Japanese - "ko": Korean | en |
| page | No | Page number (Optional, default: 1) - 10 results per page - Supports pagination | |
| sort_by | No | Sort order (Optional) Options: - "date": Sort by date - "relevance": Sort by relevance - "salary": Sort by salary | relevance |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes the search parameters and their optionality, which is useful, but it doesn't mention rate limits, authentication requirements, error handling, or what the output looks like (e.g., format, pagination details beyond '10 results per page' in the schema). For a tool with 9 parameters and no annotations, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, starting with the tool's purpose and followed by a structured list of parameters. Every sentence adds value, with no redundant information. However, the bulleted list could be slightly more concise, and the final sentence about optional parameters is necessary but adds length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (9 parameters, no output schema, no annotations), the description is partially complete. It covers the search parameters well but lacks details on behavioral aspects like rate limits, authentication, and output format. Without annotations or an output schema, the description should do more to compensate, but it provides a functional overview that is adequate for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, meaning all parameters are well-documented in the input schema itself. The description adds value by summarizing the supported search parameters in a bulleted list and noting their optionality, but it doesn't provide additional semantic context beyond what the schema already covers (e.g., no examples of combined usage). This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for jobs using the Google Jobs API with specific search parameters. It provides a verb ('search') and resource ('jobs'), making the purpose immediately understandable. However, since there are no sibling tools mentioned, it doesn't need to differentiate from alternatives, so a 5 is not warranted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through the list of supported search parameters and notes that all parameters except 'query' are optional. This provides some context for when to use certain features, but it doesn't offer explicit guidance on when to use this tool versus alternatives (none mentioned) or any prerequisites. The guidance is functional but not strategic.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
search_jobs
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool 'search_jobs' has a clearly defined and distinct purpose for job searching.
The tool name 'search_jobs' follows a consistent verb_noun pattern. Since there is only one tool, there is no inconsistency to evaluate, and the naming is straightforward and descriptive.
A single tool is too few for a server named 'Google Jobs MCP Server', which implies a broader domain of job-related operations. While search is a core function, the lack of tools for actions like retrieving job details, applying, or managing saved jobs makes the set feel incomplete and thin.
The tool surface is severely incomplete for a jobs domain. It only provides search functionality, missing essential operations such as getting detailed job information, applying to jobs, saving or bookmarking jobs, or filtering by employer. This will likely cause agent failures when trying to perform common job-related tasks beyond basic searching.
Maintenance
Related MCP Connectors
A Model Context Protocol server for Wix AI tools
MCP server for Google search results via SERP API
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Official SerpApi MCP server for Google, Bing, and other search engines.
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables LLMs to perform web searches using Google's Custom Search API through a standardized interface.147MIT
- AlicenseCqualityCmaintenanceA Model Context Protocol server implementation that enables AI assistants like Claude to perform Google searches and retrieve web data directly through natural language requests.1423 npm169MIT
- FlicenseCqualityCmaintenanceA Model Context Protocol server that enables LLMs to perform Google searches via the Serper API, allowing models to retrieve current information from the web.1339-
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI assistants to perform web searches using Google Search API, returning up to 20 search results in JSON format.2Apache 2.0