{"id":"russellluo-cmcp","name":"cmcp","homepage":null,"repo_url":"https://github.com/RussellLuo/cmcp","category":"devtools","subcategories":[],"tags":["mcp","model-context-protocol","cli","python","json-rpc","stdio-transport","http-transport","sse-transport"],"what_it_does":"cmcp is a Python CLI utility that acts as a 'curl for Model Context Protocol (MCP) servers', letting users list and call MCP prompts/resources/tools over multiple transports (STDIO for running local MCP servers, and HTTP/SSE for remote MCP servers). It also supports configuration via mcp.json for managing server commands/URLs and default headers/env vars.","use_cases":["Use an MCP server from the command line for debugging and testing","List and call MCP tools/prompts/resources without writing code","Interact with local MCP servers via STDIO transport","Interact with remote MCP servers via HTTP (and deprecated SSE)","Manage repeated MCP server connection details via .cmcp/mcp.json or ~/.cmcp/mcp.json"],"not_for":["User-facing production applications that require a managed API service","Use cases needing OAuth/OIDC-based user authentication flows","High-volume/low-latency programmatic integrations where a native SDK is required"],"best_when":"You want to quickly inspect or exercise MCP servers from automation scripts or during development using a simple CLI interface.","avoid_when":"You need strong, standardized auth flows (OAuth scopes, SSO), explicit client-side rate-limit management, or guaranteed non-deprecated transports.","alternatives":["Use an MCP client library in your language (e.g., MCP Python SDK) instead of the CLI","Write a small wrapper around JSON-RPC to call MCP endpoints directly (for HTTP transport)","Use other MCP CLI tools/clients that support the transports you need"],"af_score":53.8,"security_score":44.5,"reliability_score":30.0,"package_type":"mcp_server","discovery_source":["github"],"priority":"high","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-03-30T15:35:19.280734+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":false,"mcp_server_url":null,"has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["Per-request/connection headers (e.g., Header1:value) for HTTP transport","Environment variables passed through to local MCP server configuration (env field in mcp.json)"],"oauth":false,"scopes":false,"notes":"Authentication is handled indirectly by the MCP server or transport (e.g., custom headers for HTTP; env vars for STDIO-managed servers). The CLI itself does not specify OAuth/scopes."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"Open-source Python package; no pricing information provided."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":53.8,"security_score":44.5,"reliability_score":30.0,"mcp_server_quality":55.0,"documentation_accuracy":70.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":75.0,"rate_limit_clarity":10.0,"tls_enforcement":60.0,"auth_strength":45.0,"scope_granularity":20.0,"dependency_hygiene":55.0,"secret_handling":45.0,"security_notes":"The CLI supports passing secrets via headers (HTTP) and env vars (mcp.json), but there is no documentation here about redacting secrets in logs/output. TLS usage depends on the user-provided URL scheme (not described in README). No OAuth/scoped authorization is described.","uptime_documented":0.0,"version_stability":55.0,"breaking_changes_history":40.0,"error_recovery":25.0,"idempotency_support":"false","idempotency_notes":"No explicit idempotency guarantees are documented; tool calls may be stateful depending on the MCP server.","pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["Arguments and JSON payloads are provided via CLI parsing; quoting/escaping mistakes can cause malformed parameters.","SSE transport is marked deprecated; prefer HTTP unless you must use SSE.","When using mcp.json, ensure headers/env values are correct for the targeted MCP server and transport."]}}