Skip to main content
Glama
ffffhx

CPA Search MCP Server

by ffffhx

CPA Search MCP Server

License: MIT Node.js MCP

英語 | 中国語の説明

軽量で、依存関係のない Model Context Protocol (MCP) サーバー。リアルタイムのウェブ検索とウェブページのコンテンツ抽出を提供します。

既存のローカル CLIProxyAPI (CPA) インスタンス(http://127.0.0.1:8317)と、承認済みの Google Gemini、xAI Grok、Zhipu GLM アカウントをシームレスに再利用して、AI コーディングエージェント(Claude Code、Cursor、Codex、Windsurf、Trae)向けの構造化されたウェブリサーチを実行できます。


🌟 主な機能

  • ⚡ セットアップ不要 & 追コストなし: 既存のローカル CPA と Google/Grok/GLM 認証情報を直接そのまま使用します。

  • 🎯 マルチエンジン対応:

    • gemini: Google のディープウェブ検索とファクトチェック(デフォルト & 推奨)。

    • glm: Zhipu GLM による中国語・技技術系ファクト検索。

    • grok: xAI によるリアルタイムのウェブ & X/Twitter 検索。

    • duckduckgo: API キーなしで利用できる無料の公開検索エンジンへのフォールバック。

    • auto: エンジンを英知的に自動ルーティングし、フェイルオーバするモード。

  • 🌐 ウェブページコンテンツ抽出: 内蔵の fetch_webpage ツールで生 HTML を取得し、余分なタグを除去して読めるテキストを抽出します。

  • 🔌 ユニバーサル互換性: Claude Code、Cursor、Codex、Windsurf、Trae をはじめ、あらゆる標準 MCP クライアントで動作します。

  • 🚀 依存関係なし: 純粋な Node.js ESM 標準ライブラリによる実装。起動が即時、メモリ専有量も最小限です。


Related MCP server: DuckDuckGo MCP Server

📦 クックスタート

1. Claude Code に登録する

ターミナルで以下のコマンドを実行します:

claude mcp add --scope user cpa-search node "C:/Users/aa182/Documents/Codex/2026-08-22/new-chat-2/repositories/cpa-search-mcp/index.mjs"

状態を確認します:

claude mcp list

2. Cursor / Windsurf / Trae / Codex で設定する

MCP 設定ファイル(例: claude_desktop_config.json や Cursor MCP 設定)に以下を追加します:

{
  "mcpServers": {
    "cpa-search": {
      "command": "node",
      "args": [
        "C:/Users/aa182/Documents/Codex/2026-08-22/new-chat-2/repositories/cpa-search-mcp/index.mjs"
      ]
    }
  }
}

ツール

1. cpa_search

最新の事実、ドキュメント、技術ニュースをウェブで検索します。

  • パラメータ:

    • query (string, 必須): 検索クエリまたは調査トピック。

    • engine (string, 任意): gemini | glm | grok | duckduckgo | auto。

2. fetch_webpage

任意のURLからHTMLを取得し、クリーンなテキストを抽出します。

  • パラメタ:

    • url (string, 必須): ウェブページのURL (http/https)。


環境変数(任意)

変数

デフォルト

説明

CPA_BASE_URL

http://127.0.0.1:8317

ローカル CPA プロキンのアドレス

CPA_API_KEY

(Built-in のローカルキー)

CPA 認証キー

CPA_SEARCH_MODEL

gemini-3.7-flash-high

検索に使用するデフォルト AIモデル

HTTPS_PROXY

http://127.0.0.1:7897

外行きネットワークプロキシ


. テスチ

自動化されたエンドツーエンドのテストスイートを実行します:

node test.mjs

ライセンス

MIT License © 2026 ffffhx

Available Tools

2 tools
fetch_webpageC

直接抓取指定 URL 网页的完整正文内容并转换为易读的文本

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes需要抓取的完整网页网址(例如 https://docs.example.com)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavior. It mentions fetching the 'complete main content' and converting to text, but omits any mention of handling dynamic content, authentication, timeouts, or error cases. This is a significant gap for a web-fetching tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no unnecessary words. It is concise and gets to the point, though it could slightly benefit from structuring key constraints more explicitly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with a single parameter and no output schema, the description should cover potential failure modes and limitations. It lacks any mention of what happens on failure, unsupported URL types, or rate limits. Given the lack of annotations, this is incomplete for safe agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so the url parameter is already well-documented. The description does not add extra semantic meaning beyond what the schema provides, matching the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'fetch' and the resource 'webpage', and adds that it converts content to readable text. It is specific enough, though it doesn't explicitly contrast with sibling tool cpa_search, which appears to be a different operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives, nor any prerequisites or exclusions. The description simply states what it does, leaving the agent to infer when it is appropriate.

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. 2 tool updatesv1.0.0
    • First observedcpa_search
    • First observedfetch_webpage

TDQS

B3.4/5.0

Scored across 2 tools

Disambiguation5/5

两个工具功能明确分离:cpa_search用于搜索并返回结果,fetch_webpage用于抓取特定URL的内容。没有重叠或模糊边界,代理可以轻松区分何时使用哪个工具。

Naming Consistency4/5

两个工具均使用snake_case,且都包含动作词(search, fetch),但cpa_search以名词cpa开头,而fetch_webpage以动词开头,存在轻微不一致。不过整体模式简单且可预测,不影响理解。

Tool Count3/5

仅2个工具对于搜索服务器而言显得单薄,但结合其功能(搜索+网页抓取)已覆盖核心需求。未超出合理范围,但处于评分的下限。

Completeness4/5

搜索和网页抓取共同构成完成查询-获取详情的基本流程,没有明显缺失的关键操作。但缺少如历史记录、批量处理等扩展功能,仍有小幅度提升空间。

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables comprehensive web searching and content extraction using multiple search engines (Bing, Brave, DuckDuckGo) without API keys. Provides tools for full web searches with content extraction, quick search summaries, and single webpage content retrieval.
    1,168
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to perform web searches, extract webpage content, and conduct end-to-end search-and-extract operations using multiple search providers and content extraction methods.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides AI coding agents with a live web search tool that returns extracted, answer-ready text from web pages. Enables real-time information retrieval without any local installation or maintenance.
    4 npm
    MIT