Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Create and manage residential and mobile proxies: geo targeting, usage limits, spend reports.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
Authorizationต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ที่อยู่นี้ต้องใส่ key ใน header ของคำขอ ซึ่งเมนูเพิ่ม connector ใส่ให้ไม่ได้ ใช้ Claude Code, Cursor หรือ VS Code แทน
พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http 2extract https://mcp.2extract.com/mcp --header 'Authorization: Bearer {api_key}'เติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"2extract": {
"url": "https://mcp.2extract.com/mcp",
"headers": {
"Authorization": "Bearer {api_key}"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"2extract": {
"type": "http",
"url": "https://mcp.2extract.com/mcp",
"headers": {
"Authorization": "Bearer {api_key}"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ที่อยู่นี้ต้องใส่ key ใน header ของคำขอ ซึ่งเมนูเพิ่ม connector ใส่ให้ไม่ได้ ใช้ Claude Code, Cursor หรือ VS Code แทน
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
Authorization จำเป็น HTTP headerค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ชื่อและคำอธิบายเครื่องมือตามที่ server ตอบมาเมื่อ 7 พ.ย. 2569 ผู้ทำเป็นคนเขียน ไม่ใช่เรา แสดงเป็นข้อความล้วน
buildConnectionStringBuild a ready-to-use username and connection string for a proxy resource. The tool retrieves the proxy credential and account prefix automatically, validates geo, network, and session parameters, and encodes them in the correct order. Returns the host, port, username, password, a
createProxyResourceCreate a new residential or mobile proxy resource on the account. Check getAccountBalance and require can_create_proxy to be true; usage is billed according to the selected plan (tariff_id from listProxyPlans). The name must be unique on the account and cannot be changed later. L
deactivateProxyResourceDeactivate a proxy resource, stopping its traffic without deleting it. Reactivate later with updateProxyResource (status active). Use deleteProxyResource to permanently remove instead. Returns the updated proxy with status inactive. Response fields: docs://proxies/updateProxyReso
deleteProxyResourcePermanently delete a proxy resource. This action is irreversible — the proxy and all its settings will be removed. User confirmation is required before proceeding. To stop traffic but keep the proxy for later, use deactivateProxyResource instead. Returns a snapshot of the deleted
getAccountBalanceGet the current account balance, overdraft limit, and proxy username prefix. Returns funds_available in USD, can_create_proxy (whether proxy creation is allowed), and the prefix that starts every proxy username. Overdraft-enabled accounts also return credit_limit in USD and may r
getAccountTrafficUsageGet daily traffic and spend for the account over a date range, broken down by proxy. Returns, for each date with traffic, the bytes downloaded and uploaded and the USD spent per proxy resource ID; dates with no traffic are omitted. Pass user_proxy_list_id to report on one proxy.
getProxyResourceGet full details of a specific proxy resource, including IP/host whitelists not present in listProxyResources. Returns the proxy with its password, IP whitelist, and target host whitelist. Response fields: docs://proxies/getProxyResource.
listAccountBalanceHistoryGet balance transaction history for the account over a date range. Returns paginated ledger entries (top-ups, debits, refunds) with signed USD amount, source, and timestamp. For the current balance, use getAccountBalance. Response fields: docs://account/listAccountBalanceHistory.
listGeoCountriesList all available countries for proxy geo targeting, optionally filtered by name. Returns each country's numeric id (for createProxyResource countries) and ISO code (for buildConnectionString country_code). Response fields: docs://geo/listGeoCountries.
listProxyPlansList tariff plans for a proxy type. Use the numeric id when calling createProxyResource. Returns each plan's id, title, price, currency, and traffic type (package or pay as you go). Response fields: docs://plans/listProxyPlans.
listProxyResourcesList proxy resources in the account, with optional filters by name and status, and tariff, limits, traffic, and spend detail. Returns paginated proxies without passwords, plus totals for traffic and spend across the whole filtered set. Use getProxyResource for one proxy's passwor
regenerateProxyPasswordGenerate a new password for a proxy resource. The old password is immediately invalidated — any running traffic using it will be interrupted. User confirmation is required before proceeding. Returns the complete proxy with the new password. Response fields: docs://proxies/regener
searchGeoCitiesSearch cities within a country and optional region (region_code from searchGeoRegions). Use search to narrow results — city lists can be large. Returns each city's extract_parameter, the value for buildConnectionString's city. Response fields: docs://geo/searchGeoCities.
searchGeoISPSearch the ISP catalog for mobile ISP targeting (mobile proxies only). Always resolve the code through this tool — never accept a real-world ASN number as a substitute. Returns each carrier's name and catalog code, the value for buildConnectionString's isp. Response fields: docs:
searchGeoRegionsSearch regions/states within a country, identified by its ISO country_code (from listGeoCountries). Returns each region's extract_parameter, the value for buildConnectionString's state, and its numeric code, used as searchGeoCities' region_code. Response fields: docs://geo/search
searchGeoZipsSearch ZIP codes within a country, for use in proxy username params. Returns ZIP values to pass as buildConnectionString's zip; ZIP targeting cannot be combined with state or city. Response fields: docs://geo/searchGeoZips.
setProxyIpWhitelistReplace the IP whitelist for a proxy resource, restricting authentication to the given IPs. This controls who can authenticate; to control which domains the proxy can reach, use setProxyTargetHosts. Returns the updated proxy with the applied IP whitelist. Response fields: docs://
setProxyLimitsSet the traffic or spending limit on a proxy resource to control costs. A proxy has one limit: this call replaces any existing limit, and total_limit 0 removes it. The counter resets daily or monthly according to time_period. Returns the updated proxy with the applied limits. To
setProxyTargetHostsReplace the target host whitelist for a proxy resource, restricting its traffic to the given domains. This controls where the proxy can connect; to control who can authenticate, use setProxyIpWhitelist. Returns the updated proxy with the applied target host whitelist. Response fi
updateProxyResourceUpdate description, countries, status, IP whitelist, or limits in one call. Name and proxy_type are not mutable through this MCP tool. For single-field changes, prefer setProxyIpWhitelist, setProxyLimits, or deactivateProxyResource. Returns the complete updated proxy without its
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน 2extract.com แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 1043 ms (HTTP 200)
ไม่ต้องล็อกอิน
อ่านคำอธิบายเครื่องมือ 20 ตัวแล้ว ไม่พบคำสั่งแอบแฝงถึง AI
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: Authorization
รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.0.2) เข้า registry 17 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Tethered Trust
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Fit, compatibility and recall checks for AI agents before they buy: verdicts, evidence, receipts.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
VS Code asks for the API key on install and does not store it in the config. Cursor installs with a placeholder: replace 2xt_your_api_key in mcp.json with your key.
Remote Model Context Protocol server for 2extract. It lets an AI agent create and manage residential and mobile proxies, pick geo targeting down to city, ZIP or carrier, set traffic and spend limits, and report on usage and cost.
This is a hosted server. There is nothing to install or run locally: your MCP client connects to the URL below with your 2extract API key.
| Endpoint | https://mcp.2extract.com/mcp |
| Transport | Streamable HTTP |
| Auth | Authorization: Bearer 2xt_... (2extract API key) |
proxies:read, proxies:write, balance:read, stats:read, geo:read. Write scopes do not include read access, so most workflows need both proxies:read and proxies:write.A read-only key (no proxies:write) is enough for reporting and lookups.
claude mcp add --transport http 2extract https://mcp.2extract.com/mcp \
--header "Authorization: Bearer 2xt_your_api_key"
The key is read from the EXTRACT_API_KEY environment variable; Codex adds Bearer itself:
export EXTRACT_API_KEY=2xt_your_api_key
codex mcp add 2extract --url https://mcp.2extract.com/mcp --bearer-token-env-var EXTRACT_API_KEY
Or edit ~/.codex/config.toml (or .codex/config.toml in a trusted project):
[mcp_servers.2extract]
url = "https://mcp.2extract.com/mcp" bearer_token_env_var = "EXTRACT_API_KEY"
gemini mcp add -s user --transport http \
--header "Authorization: Bearer 2xt_your_api_key" \ 2extract https://mcp.2extract.com/mcp
Or edit ~/.gemini/settings.json (or .gemini/settings.json in a project):
{
"mcpServers": { "2extract": { "httpUrl": "https://mcp.2extract.com/mcp", "headers": { "Authorization": "Bearer 2xt_your_api_key" } } } }
opencode.json in your project (or ~/.config/opencode/opencode.json). The key is read from the EXTRACT_API_KEY environment variable:
{
"$schema": "https://opencode.ai/config.json", "mcp": { "2extract": { "type": "remote", "url": "https://mcp.2extract.com/mcp", "enabled": true, "headers": { "Authorization": "Bearer {env:EXTRACT_API_KEY}" } } } }
claude_desktop_config.json:
{
"mcpServers": { "2extract": { "type": "http", "url": "https://mcp.2extract.com/mcp", "headers": { "Authorization": "Bearer 2xt_your_api_key" } } } }
~/.cursor/mcp.json or .cursor/mcp.json:
{
"mcpServers": { "2extract": { "url": "https://mcp.2extract.com/mcp", "headers": { "Authorization": "Bearer 2xt_your_api_key" } } } }
.vscode/mcp.json (the key is requested on first use and not stored in the file):
{
"inputs": [ { "type": "promptString", "id": "2extract-api-key", "description": "2extract API key", "password": true } ], "servers": { "2extract": { "type": "http", "url": "https://mcp.2extract.com/mcp", "headers": { "Authorization": "Bearer ${input:2extract-api-key}" } } } }
Open the Cline panel, click MCP Servers, then Configure MCP Servers, and add to cline_mcp_settings.json:
{
"mcpServers": { "2extract": { "type": "streamableHttp", "url": "https://mcp.2extract.com/mcp", "headers": { "Authorization": "Bearer 2xt_your_api_key" }, "disabled": false } } }
Keep "type": "streamableHttp": without it Cline falls back to the older SSE transport.
Any client that supports remote MCP servers works. Give it the endpoint URL, the Streamable HTTP transport and the Authorization header.
| Tool | What it does | Scope |
|---|---|---|
getAccountBalance | Available funds, whether a new proxy can be created, and the proxy username prefix | balance:read |
getAccountTrafficUsage | Traffic and spend over a period, for the account or one proxy | stats:read |
listAccountBalanceHistory | Deposits and charges over a period | stats:read |
| Tool | What it does | Scope |
|---|---|---|
listGeoCountries | Countries available for targeting | geo:read |
searchGeoRegions | Regions and states within a country | geo:read |
searchGeoCities | Cities within a country or region | geo:read |
searchGeoZips | ZIP and postal codes within a country | geo:read |
searchGeoISP | Mobile carriers for ISP targeting | geo:read |
| Tool | What it does | Scope |
|---|---|---|
listProxyPlans | Available plans and their prices | proxies:read |
| Tool | What it does | Scope |
|---|---|---|
listProxyResources | Every proxy on the account, with traffic and spend | proxies:read |
getProxyResource | Full detail for one proxy | proxies:read |
createProxyResource | Create a proxy (billable) | proxies:write |
updateProxyResource | Change description, status, geo, whitelist or limits | proxies:write |
deactivateProxyResource | Stop traffic without deleting the proxy | proxies:write |
deleteProxyResource | Permanently remove a proxy (asks for confirmation) | proxies:write |
regenerateProxyPassword | Issue a new password (asks for confirmation) | proxies:write |
setProxyLimits | Cap traffic or spend per day or month | proxies:write |
setProxyIpWhitelist | Restrict which IP addresses can use the proxy | proxies:write |
setProxyTargetHosts | Restrict which domains the proxy can reach (wildcards like *.example.com) | proxies:write |
buildConnectionString | Ready-to-use username and connection string with geo, carrier and sticky-session parameters | proxies:read, balance:read |
Confirmation for destructive tools happens in your client. If the client does not ask, any key with proxies:write can run them, so scope keys accordingly.
| Prompt | Arguments | What it does |
|---|---|---|
create-proxy-resource | purpose, proxy_type?, country? | Creates a proxy for a stated job and returns a connection string |
build-connection-string | proxy_id?, purpose? | Builds a connection string for an existing proxy |
monthly-cost-report | period | Traffic and spend per proxy for a period, with outliers flagged. Read-only |
cleanup-unused-proxies | none | Finds proxies with no traffic in 30 days and deactivates them after you confirm. Never deletes |
serp_us proxy."The server source code is not published. This repository holds the public listing, client configuration examples and the registry manifest (server.json).