agentql
AgentQL MCPサーバー
ベースURL: https://api.agentql.com
カテゴリ | 開発者ツール |
ツール | 4 |
認証 | APIキー |
インストール
クイックスタート (推奨)
API_KEY=YOUR_API_KEY \
uvx mcparmory-agentqlpipを使用する場合
pip install mcparmory-agentql
API_KEY=YOUR_API_KEY \
mcparmory-agentqlMCPクライアントの設定
MCPクライアントの設定(例: Claude Desktop, Cursor, Codex)に追加します:
{
"mcpServers": {
"agentql": {
"command": "uvx",
"args": ["mcparmory-agentql"],
"env": {
"API_KEY": "YOUR_API_KEY"
}
}
}
}Related MCP server: Playwright MCP Server
認証情報
以下の環境変数を設定してください(MCPクライアントの env 設定、シェルでのエクスポート、または .env ファイル経由):
API_KEY— APIキー認証 (X-API-Key) 認証情報をバージョン管理にコミットしないでください。
ローカルでの実行
まず、.env に認証情報を設定します(上記の 認証情報 を参照)。
pip install -r requirements.txt
python server.pyMCPクライアントへの接続
.mcp.json を編集し、<SERVER_DIR> をこのディレクトリへの絶対パスに置き換えてから、MCPクライアントの設定に追加します。
例(サーバーが /home/user/mcp-servers/agentql にある場合):
{
"mcpServers": {
"agentql": {
"command": "python",
"args": ["/home/user/mcp-servers/agentql/server.py"]
}
}
}Docker
事前構築済みイメージ (推奨)
docker run -p 8000:8000 \
-e API_KEY=YOUR_API_KEY \
ghcr.io/mcparmory/agentql:latestソースからビルド
まず、.env に認証情報を設定します(上記の 認証情報 を参照)。
docker build -t agentql .
docker run -p 8000:8000 --env-file .env agentql実行前に、ポート8000が空いていることを確認してください。### MCPクライアント設定 (Docker)
Dockerの場合は、MCPクライアント設定でSSEトランスポートを使用します:
{
"mcpServers": {
"agentql": {
"type": "sse",
"url": "http://localhost:8000/sse"
}
}
}ファイル
.env- 認証情報およびサーバー設定.mcp.json- MCPクライアント設定テンプレートDockerfile- コンテナビルドLICENSE- この生成コードのMITライセンスrequirements.txt- Python依存関係README.md- このファイルserver.py- MCPサーバーのエントリポイント_auth.py- 認証ハンドラー_models.py- リクエスト/レスポンスモデル_validators.py- 入力バリデーション
注意: . で始まるファイルは、macOS/Linuxではデフォルトで非表示になっています。.env や .mcp.json を表示するには、ターミナルで ls -a を使用するか、ファイルマネージャーで「隠しファイルを表示」を有効にしてください。
Available Tools
4 toolscreate_browser_sessionA
Creates a new Tetra browser session with configurable user agent, profile, proxy, and lifecycle settings. Returns session details needed to connect and interact with the browser.
| Name | Required | Description | Default |
|---|---|---|---|
| browser_ua_preset | No | The operating system user agent preset the browser will identify as, affecting how websites perceive the client environment. | |
| browser_profile | No | The browser profile determining capability and detection resistance: 'light' prioritizes speed with minimal overhead, 'stealth' enables full anti-detection features, and 'tf-browser' uses a custom TF Browser configuration. | |
| shutdown_mode | No | Controls session teardown behavior on disconnect: 'on_disconnect' immediately stops the session when all connections close, while 'on_inactivity_timeout' keeps the session alive to allow reconnection until the inactivity timeout elapses. | |
| inactivity_timeout_seconds | No | How long the session remains alive without active connections before being shut down, applicable when shutdown_mode is 'on_inactivity_timeout'. Accepts values between 5 seconds and 86400 seconds (24 hours). | |
| proxy | No | Proxy server configuration to route browser traffic through for this session, such as host, port, protocol, and credentials. | |
| sub_user_id | No | An optional identifier used to associate this session with a specific sub-user within your account, useful for tracking and auditing sessions across multiple users. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions configurable lifecycle settings and return of session details but lacks disclosure of side effects, destruction behavior, or authentication requirements. Basic transparency but not deep.
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?
Two concise sentences, front-loaded with action and resource, no redundant information. Every word adds value.
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?
With 6 parameters (all described), no output schema, and no annotations, the description is brief. It does not detail return values or side effects, which would be helpful for a creation tool that returns connection details. Adequate but leaves gaps.
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?
Schema description coverage is 100%, so parameters are well-documented in schema. The description adds a high-level summary of configurable aspects but does not provide additional meaning beyond what schema already offers.
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 creates a new Tetra browser session, lists configurable aspects (user agent, profile, proxy, lifecycle), and mentions return value. It distinguishes from sibling tools which are about usage and data querying.
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?
No explicit guidance on when to use this tool vs alternatives or when not to use it. The description only explains what it does without any usage context or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_usageA
Retrieves current API key usage statistics and subscription details for the authenticated account. Useful for monitoring consumption limits and understanding remaining quota.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must stand alone. It states it retrieves data but omits whether it's read-only, rate limits, or response structure. Basic but not comprehensive.
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?
Two short sentences, front-loaded with the action, no wasted words. Efficient and clear.
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?
No output schema, so description should detail return values; it does not specify what 'usage statistics' includes. Also missing idempotency and auth details beyond 'authenticated account'.
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?
No parameters exist, schema coverage is 100%. Baseline 3 per guidelines since schema covers all; description adds nothing beyond what schema already conveys.
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 it retrieves API key usage statistics and subscription details, with a specific verb and resource. The sibling tools (browser sessions, webpage data) are distinct, so no confusion.
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?
Explicitly says 'useful for monitoring consumption limits and understanding remaining quota', giving clear context. Does not mention when not to use, but siblings are unrelated, so no conflict.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_session_usageA
Retrieve a paginated list of Tetra browser session usage records for the authenticated user, with optional filtering by user, session, time range, and status.
| Name | Required | Description | Default |
|---|---|---|---|
| sub_user_id | No | Filter results to only include sessions belonging to a specific sub-user under the authenticated account. | |
| session_id | No | Filter results to a specific browser session by its unique session identifier. | |
| start_after | No | Return only sessions that started after this timestamp, specified in ISO 8601 date-time format. | |
| end_before | No | Return only sessions that ended before this timestamp, specified in ISO 8601 date-time format. | |
| status | No | Filter sessions by their current lifecycle status; use 'running' for active sessions or 'ended' for completed sessions. | |
| limit | No | Maximum number of session records to return per page; must be between 1 and 1000. | |
| page | No | Page number to retrieve for paginated results; must be 1 or greater. |
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. It correctly identifies a paginated read operation with optional filtering, but lacks details on pagination behavior (e.g., default limit, total count) or any rate limits. Adequate but not comprehensive.
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 a single sentence with no redundancy. It front-loads the key action and resource, and efficiently lists the optional filters.
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?
With no output schema, the description should explain what each session usage record contains, but it does not. It also omits pagination details like how to iterate or interpret paginated responses. The tool is adequately described for its input, but incomplete for expected output.
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?
Schema description coverage is 100%, so the baseline is 3. The description adds little beyond the schema, simply summarizing the filter categories (user, session, time range, status) that are already in the parameter descriptions.
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 retrieves a paginated list of session usage records for the authenticated user, with optional filters. It distinguishes from siblings like create_browser_session (creates sessions) and query_webpage_data (queries page data).
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 mentions the tool is for the authenticated user and lists optional filters, but does not explicitly state when to use it over alternatives or provide when-not scenarios. The context signals help, but more explicit guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_webpage_dataB
Extracts structured data from a webpage using an AgentQL query or a natural language prompt. Accepts either a live URL or raw HTML as the data source.
| Name | Required | Description | Default |
|---|---|---|---|
| content-type | Yes | MIME type of the request body, required to correctly parse the payload. | |
| query | No | An AgentQL (AQL) query string specifying the exact data fields to extract from the page. If omitted, a query will be auto-generated from the prompt. | |
| prompt | No | A natural language description of the data to extract, used to auto-generate an AgentQL query when no explicit query is provided. | |
| url | No | The fully qualified URL of the webpage to load and query. Either url or html must be provided as the data source. | |
| html | No | Raw HTML content of the webpage to query, used as an alternative to providing a live URL. | |
| mode | No | Controls the response generation strategy: 'fast' prioritizes speed, 'standard' prioritizes accuracy and completeness. | |
| wait_for | No | Number of seconds to wait for dynamic page content to load before capturing the snapshot. Maximum allowed wait time is 10 seconds. | |
| is_scroll_to_bottom_enabled | No | When enabled, the browser scrolls to the bottom of the page before capturing the snapshot, useful for triggering lazy-loaded content. | |
| is_screenshot_enabled | No | When enabled, a screenshot of the page is captured during the query session, which may be useful for debugging or visual verification. | |
| browser_profile | No | Determines the browser profile used for the session: 'light' uses a fast headless browser, 'stealth' applies anti-detection techniques for bot-protected pages. | |
| proxy | No | Optional proxy configuration to route the browser session through a specific proxy server, useful for geo-restricted or access-controlled pages. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It fails to disclose critical behaviors such as whether the tool is read-only, rate limits, authentication needs, or error handling. Important details like what happens if both url and html are given are omitted.
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 a single 19-word sentence that packs the core purpose and data source options. Every word earns its place; no redundancy.
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?
With 11 parameters, no output schema, and no annotations, the description is too minimal. It omits what the output looks like, error scenarios, and behavioral nuances. A more comprehensive description is needed for this complex tool.
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?
Schema description coverage is 100%, and the description adds minimal extra meaning beyond the schema (e.g., 'AgentQL query or natural language prompt' is already in schema). Baseline 3 is appropriate as the description does not compensate for any missing schema detail.
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 'Extracts structured data from a webpage' using a query or prompt, and specifies data sources (URL or raw HTML). This is a specific verb+resource that distinguishes it from sibling tools like create_browser_session.
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 for data extraction but does not explicitly compare with siblings or give when-not-to-use guidance. It mentions query vs prompt options, which helps, but lacks exclusions or alternatives.
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.
4 tool updates
v1.0.7- First observed
create_browser_session - First observed
get_usage - First observed
list_session_usage - First observed
query_webpage_data
TDQS
Scored across 4 tools
Each tool targets a distinct functionality: browser session creation, API usage statistics, session usage records, and webpage data extraction. No overlap in purposes.
All tool names follow a consistent verb_noun snake_case pattern (create_browser_session, get_usage, list_session_usage, query_webpage_data).
4 tools is slightly below average but reasonable for the focused domain of browser automation and data extraction. Could benefit from additional lifecycle management tools.
Missing session deletion/closure (only create is provided) and session updating. Usage tracking is well covered, and webpage querying is present, but lifecycle is incomplete.
Maintenance
Related MCP Connectors
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Web search, browser automation, scraping, crawling and CAPTCHA solving for AI agents.
Automate cloud browsers to navigate websites, interact with elements, and extract structured data.…
Live web access for agents: scrape, SERP search, crawl/map, 100+ collectors, datasets, proxies.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceProvides tools to scrape, extract structured data, and crawl webpages, with access to browser automation agents like OpenAI's CUA, Anthropic's Claude Computer Use, and Browser Use for complex web tasks.-
- AlicenseNot gradedqualityDmaintenanceProvides browser automation capabilities using Playwright, enabling users to navigate websites, extract content, take screenshots, and interact with web pages through natural language prompts.17 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to perform intelligent browser automation with session-based context analysis, including navigation, form filling, and content extraction through natural language.MIT
- FlicenseNot gradedqualityBmaintenanceEnables natural language web data extraction into structured JSON via browser automation, supporting field-based and goal-based modes with optional vision.1-