MCP Client for Python
Project description
kl-mcp-client
SDK Python để gọi MCP Browser Server qua JSON-RPC HTTP.
Cài đặt
pip install kl-mcp-client
Thành phần
kl_mcp_client.client.MCPClient: sync JSON-RPC clientkl_mcp_client.tools.MCPTools: sync tools wrapperkl_mcp_client.asyncio.client.MCPClient: async JSON-RPC clientkl_mcp_client.asyncio.tools.MCPTools: async tools wrapper
Quickstart (sync)
from kl_mcp_client.tools import MCPTools
tools = MCPTools()
tools.connect_mcp("http://localhost:3000/mcp")
sid = tools.create_session("http://localhost:9222")['sessionId']
tools.open_page(sid, "https://example.com")
print(tools.get_html(sid))
Quickstart (async)
import asyncio
from kl_mcp_client.asyncio.tools import MCPTools
async def main():
tools = MCPTools()
tools.connect_mcp("http://localhost:3000/mcp")
sid = (await tools.create_session("http://localhost:9222"))["sessionId"]
await tools.open_page(sid, "https://example.com")
print(await tools.get_html(sid))
await tools.close()
asyncio.run(main())
Danh sách function (sync kl_mcp_client.tools.MCPTools)
Kết nối / core
connect_mcp(mcp_url=None, mcpUrl=None, headers=None, timeout=30, retries=2, proxies=None)close()
Session tools
create_session(cdpUrl)close_session(sessionId)list_sessions()open_page(sessionId, url)get_html(sessionId)click(sessionId, selector)get_bounding_box(sessionId, selector)click_to_text(sessionId, text)click_by_node_id(sessionId, nodeId)screenshot(sessionId)import_cookies(sessionId, cookies)click_bounding_box(sessionId, selector)upload_file(sessionId, selector, file_path)perform(sessionId, action, target=None, value=None, x=None, y=None, from_point=None, to_point=None)wait_for_selector(sessionId, selector, timeout=None, timeoutMs=None)scroll(sessionId, x=None, y=None, selector=None, position=None)evaluate(sessionId, expression)evaluate_stream(sessionId, expression, chunkSize=100)stream_pull(stream_id, offset=0, limit=100)get_cookies(sessionId)parse_html_by_prompt(html, prompt)viewport(sessionId, viewport=None)
Input tools
send_keys(sessionId, text, interval=None)type(sessionId, selector, text)send_text(sessionId, text, interval=None)clear_all(sessionId)send_combo(sessionId, text)
Tab tools
get_current_url(sessionId)list_tabs(sessionId)switch_tab(sessionId, tabId=None, targetId=None)close_tab(sessionId, tabId)new_tab(sessionId, url=None)switch_tab_by_title(sessionId, title)switch_tab_by_url(sessionId, url)current_tab(sessionId)
DOM tools
get_dom_tree(sessionId)get_clickable(sessionId)selector_map(sessionId, selector)get_clean_text(sessionId)
Element tools
find_all(sessionId, selector)find_element(sessionId, selector)find_element_by_xpath(sessionId, xpath)find_element_xpath(sessionId, xpath)find_element_by_text(sessionId, text)find_element_by_prompt(sessionId, prompt)
Browser tools
create_browser(payload=None)release_browser(pod_name)
Helper / tương thích ngược
cookies(sessionId)current_url(sessionId)set_viewport(sessionId, width, height, deviceScaleFactor=1.0, mobile=False)get_viewport(sessionId)drag_and_drop(sessionId, from_x, from_y, to_x, to_y)hover(sessionId, x, y)evaluate_stream_all(sessionId, expression, chunkSize=100, max_items=None)
Danh sách function async
kl_mcp_client.asyncio.tools.MCPTools hỗ trợ cùng API như bản sync, nhưng gọi bằng await.
Lưu ý
- Cần gọi
connect_mcp(...)trước khi gọi tools. upload_file(...)dùng endpoint/uploadđể lấyuploadId, sau đó gọi tooluploadFile.- Tool name map theo server tại
mcp-server/internal/interfaces/http/mcp.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
kl_mcp_client-2.1.19.tar.gz
(10.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kl_mcp_client-2.1.19.tar.gz.
File metadata
- Download URL: kl_mcp_client-2.1.19.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c38cbc6546a824111314e57fc86ea02bce3db58877263949d84b627a0e7f03af
|
|
| MD5 |
90cac7f00f1c5f7a33371ce1739c6134
|
|
| BLAKE2b-256 |
287be0a51988a78a05bc89005aac88958bde517e3855dc51e878f161c1ed4b19
|
File details
Details for the file kl_mcp_client-2.1.19-py3-none-any.whl.
File metadata
- Download URL: kl_mcp_client-2.1.19-py3-none-any.whl
- Upload date:
- Size: 12.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0cbd4db33a15eb9668e8eb0ed61db5dd1b9c21f9deb26f94fcdb0947665b26ee
|
|
| MD5 |
ab408a3cc187d584ec0d7fe1a754b9de
|
|
| BLAKE2b-256 |
f00b7184548092ed883b4a2dff338160536eb41e3e1b7471f1520f274db1f46f
|