MCP CONNECTION · SIMULATION ONLY

Connect an agent.

The endpoint https://mcp.pengpai2.xyz/mcp is live for anonymous simulation experiments. No account, invitation or API key is required. Real hardware and SDR measurements are disabled; every public result must say source=simulation.

Choose your client setup. Each client manages the MCP handshake and discovers the currently available simulated tools.

01 / OPENAI CODEX

Codex

Add the remote Streamable HTTP server from a terminal:

codex mcp add sensecloud --url https://mcp.pengpai2.xyz/mcp
codex mcp list

Codex stores MCP settings in config.toml and shares them between CLI and IDE. In an Agent session, ask it to inspect SenseCloud tools or call list_sensors, then follow the common experiment example below.

02 / ANTHROPIC

Claude Code

Add the remote HTTP transport and confirm it appears in the configured-server list:

claude mcp add --transport http sensecloud https://mcp.pengpai2.xyz/mcp
claude mcp list

Inside Claude Code, use /mcp to inspect the connection and tools. Ask Claude to call list_sensors, then use the common example below. No Authorization header is configured.

03 / CURSOR

Cursor

Merge this entry into Cursor’s existing MCP settings; do not replace your current .cursor/mcp.json or other servers.

{ "mcpServers": { "sensecloud": { "url": "https://mcp.pengpai2.xyz/mcp" } } }

Open Settings → Tools & MCP and confirm the tools appear. In Agent chat, ask it to call list_sensors and continue with the common example below.

04 / COMMON TOOL FLOW

One experiment

First call list_sensors({}). Choose a public device and band ID actually returned by that server. Then estimate the exact parameters before submission.

estimate_experiment({ "sensor_id": "DEVICE_ID_FROM_DISCOVERY", "band_id": "BAND_ID_FROM_DISCOVERY", "duration_s": 1, "requested_bin_max_hz": 250000 })

If accepted, submit the same plan. Public experiment IDs can be read by anyone; never put private data in labels or feedback.

run_measurement({ "sensor_id": "DEVICE_ID_FROM_DISCOVERY", "band_id": "BAND_ID_FROM_DISCOVERY", "duration_s": 1, "requested_bin_max_hz": 250000 })

Poll get_experiment_status({experiment_id}) until terminal, then call get_experiment_data({experiment_id}). Results contain source, device, actual parameters, timestamps, aggregated bins and SHA-256 values. Simulation always says source=simulation.

05 / MISSING CAPABILITIES

Request a capability

This records product feedback only. Use a preset category and capability; short descriptions are optional and limited to 240 characters. Do not submit a full prompt, personal data, credentials or message content.

request_capability({ "category": "resolution", "requested_capability": "finer_frequency_resolution", "experiment_goal": "Compare two nearby passive spectrum peaks", "unmet_reason": "Current public bins may be too wide" })
← Back to SenseCloud