Developer sandbox
Try the Fieldproxy API and MCP server right now
Public read-only keys for a sample workspace, Summit Heating & Air, a made-up HVAC company. No sign-up, no card, no call. Copy a curl command or add the MCP server to your AI client and ask it about the jobs.
Short answer
Can I try the Fieldproxy API without signing up?
Yes. Fieldproxy publishes two read-only keys for a sandbox workspace on this page. For the REST API, send POST https://api-uk.fieldproxy.ai/api/read with the key in the x-api-key header. For AI agents, add the MCP server at https://api-uk.fieldproxy.ai/mcp with the MCP key as Authorization: Bearer. The data is a made-up HVAC company with about 2,000 jobs, 400 customers and 2,400 invoices. You can read everything and change nothing.
The keys
Two public keys, both read only
These keys are meant to be public. They only read sample data, and the server refuses every write. If one stops working, reload this page for the current key.
REST API base
https://api-uk.fieldproxy.ai
Endpoint: POST /api/read. Hosted in the UK region.
MCP server
https://api-uk.fieldproxy.ai/mcp
Streamable HTTP. Works with any MCP client that accepts a URL and headers.
REST API key (x-api-key)
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOiJ0ZXN0IiwiZW1haWwiOiJ0ZXN0QGV4YW1wbGUuY29tIiwidGVuYW50X2lkIjoiZWxlcWlhIiwidHlwZSI6ImFwaV9rZXkiLCJqdGkiOiI0YzliYjgwZi0yY2U2LTQ4ODYtYjk2NS1kMjA2YWU4ODczMWEiLCJpYXQiOjE3OTM5NTU3NTEsImV4cCI6MTgyNTQ5MTc1MX0.SgIxGkXEqMPbikAoX4D7H4coOUvnlrsJYb-uA8_ixNA
Read only, business tables only. Expires November 6, 2027.
MCP key (Authorization: Bearer)
fpmcp.eleqia.pZWm5OR4qsYqP1Wb0DKsxm9bfs_vdI-DCHL5JJMPlxc
Scope data:read, 165 tables, 21 tools, no email or SMS. Expires February 4, 2027; replaced here before then.
REST API
Read sample records with curl
Every call is a JSON POST with one header. The body names a table and a condition. The condition must be a non-empty object of column and value pairs; it matches exact values.
One customer
curl -X POST https://api-uk.fieldproxy.ai/api/read \
-H "x-api-key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOiJ0ZXN0IiwiZW1haWwiOiJ0ZXN0QGV4YW1wbGUuY29tIiwidGVuYW50X2lkIjoiZWxlcWlhIiwidHlwZSI6ImFwaV9rZXkiLCJqdGkiOiI0YzliYjgwZi0yY2U2LTQ4ODYtYjk2NS1kMjA2YWU4ODczMWEiLCJpYXQiOjE3OTM5NTU3NTEsImV4cCI6MTgyNTQ5MTc1MX0.SgIxGkXEqMPbikAoX4D7H4coOUvnlrsJYb-uA8_ixNA" \
-H "content-type: application/json" \
-d '{"tableName": "st_customers", "condition": {"id": 1}}'{
"data": [
{ "id": "1", "name": "Daniel Powell", "type": "residential",
"phone": "(347) 555-9658", "email": "daniel.powell@example.com",
"address": "237 Grove Ct", "city": "Garden City", "state": "NY",
"tags": ["VIP"], "active": true, ... }
],
"rowCount": 1,
"table": "st_customers",
...
}Open jobs by status
curl -X POST https://api-uk.fieldproxy.ai/api/read \
-H "x-api-key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOiJ0ZXN0IiwiZW1haWwiOiJ0ZXN0QGV4YW1wbGUuY29tIiwidGVuYW50X2lkIjoiZWxlcWlhIiwidHlwZSI6ImFwaV9rZXkiLCJqdGkiOiI0YzliYjgwZi0yY2U2LTQ4ODYtYjk2NS1kMjA2YWU4ODczMWEiLCJpYXQiOjE3OTM5NTU3NTEsImV4cCI6MTgyNTQ5MTc1MX0.SgIxGkXEqMPbikAoX4D7H4coOUvnlrsJYb-uA8_ixNA" \
-H "content-type: application/json" \
-d '{"tableName": "st_jobs", "condition": {"status": "scheduled"}}'
# => every scheduled job (about 160 rows). Other statuses:
# pending, dispatched, in_progress, completed, canceledOne invoice
curl -X POST https://api-uk.fieldproxy.ai/api/read \
-H "x-api-key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOiJ0ZXN0IiwiZW1haWwiOiJ0ZXN0QGV4YW1wbGUuY29tIiwidGVuYW50X2lkIjoiZWxlcWlhIiwidHlwZSI6ImFwaV9rZXkiLCJqdGkiOiI0YzliYjgwZi0yY2U2LTQ4ODYtYjk2NS1kMjA2YWU4ODczMWEiLCJpYXQiOjE3OTM5NTU3NTEsImV4cCI6MTgyNTQ5MTc1MX0.SgIxGkXEqMPbikAoX4D7H4coOUvnlrsJYb-uA8_ixNA" \
-H "content-type: application/json" \
-d '{"tableName": "st_invoices", "condition": {"invoice_number": "41201"}}'
# => the invoice with its job_id, customer_id, status, due_date, total and balanceNeed filters, joins or totals? Use run_sql through the MCP server below. Full reference: REST API docs and openapi.json.
MCP server
Connect an AI agent in one command
Add the sandbox to your AI client, then ask questions in plain English. The agent calls describe_schema to learn the tables and run_sql to answer.
Claude Code
claude mcp add --transport http fieldproxy-sandbox https://api-uk.fieldproxy.ai/mcp \
--header "Authorization: Bearer fpmcp.eleqia.pZWm5OR4qsYqP1Wb0DKsxm9bfs_vdI-DCHL5JJMPlxc"OpenAI Codex
export FIELDPROXY_SANDBOX_KEY=fpmcp.eleqia.pZWm5OR4qsYqP1Wb0DKsxm9bfs_vdI-DCHL5JJMPlxc
codex mcp add fieldproxy-sandbox --url https://api-uk.fieldproxy.ai/mcp --bearer-token-env-var FIELDPROXY_SANDBOX_KEYCursor, VS Code or any MCP client
{
"mcpServers": {
"fieldproxy-sandbox": {
"url": "https://api-uk.fieldproxy.ai/mcp",
"headers": { "Authorization": "Bearer fpmcp.eleqia.pZWm5OR4qsYqP1Wb0DKsxm9bfs_vdI-DCHL5JJMPlxc" }
}
}
}Or call it directly
curl -X POST https://api-uk.fieldproxy.ai/mcp \
-H "Authorization: Bearer fpmcp.eleqia.pZWm5OR4qsYqP1Wb0DKsxm9bfs_vdI-DCHL5JJMPlxc" \
-H "content-type: application/json" \
-H "accept: application/json, text/event-stream" \
-d '{"jsonrpc": "2.0", "id": 1, "method": "tools/call",
"params": {"name": "run_sql",
"arguments": {"sql": "select count(*) as jobs from st_jobs"}}}'
# => {"rows": [{"jobs": "2076"}], "row_count": 1, ...}Claude.ai, Claude Desktop and ChatGPT
Their custom connectors normally sign in with OAuth to your own workspace, and most do not let you type a header. So the key route works in clients that accept headers: Claude Code, Cursor, VS Code, Codex and agent frameworks. To use the sandbox from a chat app, connect it through one of those, or see how OAuth works for Claude and ChatGPT on a real workspace.
Try these
Questions to ask the sandbox
Paste any of these into your AI client once the server is added.
“Call describe_schema, then tell me how many jobs are in each status.”
“Which technicians ran the most visits in the last 90 days, and how many were callbacks?”
“List unpaid invoices by customer, oldest first, with how many days overdue each one is.”
“Which open estimates have had no follow-up for 30 days or more?”
“Which customers own equipment that is more than 12 years old? Group it by customer.”
“Which service agreements bill next month, and for which customers?”
“How long is the drive between the two customers with the most jobs?”
What is inside
Summit Heating & Air: sample data only
A made-up residential and commercial HVAC company in New York. Every name, phone number and address is invented, and the emails use example.com.
Jobs
Appointments
Invoices
Estimates
Equipment
Customers
Technicians
Service agreements
Subcontractors
Projects
Main tables
The MCP key can read 165 tables. The ones most people start with are st_jobs, st_appointments, st_appointment_techs, st_customers, st_locations, st_invoices, st_estimates, st_estimate_items, st_equipment, st_agreements, st_technicians, st_subcontractors, st_projects, st_business_units, st_campaigns, st_calls. Call describe_schema for the full list with columns.
Tools on the sandbox MCP key
- describe_schema
- Lists every table and column the key can read.
- run_sql
- Runs one read-only SELECT on the sample database.
- search_freeform
- Finds records by a name, number or phrase.
- list_distinct_values
- Shows the values a column holds, such as job statuses.
- open_record
- Returns a link that opens one record in the Fieldproxy app.
- explain_change
- Explains why a number changed between two periods, broken into its biggest drivers.
- export_csv
- Saves a query result as a CSV link.
- generate_pdf
- Makes a PDF from a record.
- list_dashboards
- Lists the workspace dashboards (view_dashboard opens one).
- geocode_address
- Turns an address into coordinates (reverse_geocode goes back).
- drive_time
- Drive time between two places.
- calculate_route
- Plans a route across several stops.
21 tools in all on this key. A real workspace has 170+, including writes, messages, automations and app building: MCP tools reference.
Limits
What the sandbox cannot do
- Write data. Insert, update and delete calls are refused, and the MCP key has no write tools.
- Send email or text messages, or place calls.
- Read platform tables such as users and settings. Only business tables are open.
- Build apps, automations or agents.
- Run SQL functions that could reach other tables, such as sum() and avg(). count(), max(), group by and date filters work.
# Writes are refused on this key:
curl -X POST https://api-uk.fieldproxy.ai/api/insert -H "x-api-key: ..." \
-H "content-type: application/json" \
-d '{"tableName": "st_customers", "data": [{"name": "Test"}]}'
# => {"message": "API key is not authorized for 'insert' operations"}Next step
Get a workspace with write access
Your own workspace runs on your data, on its own Postgres database, in your region. An administrator creates keys with the operations and tables each system needs, and AI writes are proposed, confirmed by a person and undoable. API and MCP access are included on every plan.
For AI agents: /developers/llms.txt and /developers/capabilities.json. Keys checked November 6, 2026.
FAQ
The Fieldproxy sandbox, answered
- Can I try the Fieldproxy API without signing up?
- Yes. Fieldproxy publishes a read-only sandbox key at https://www.fieldproxy.ai/developers/sandbox. Send POST https://api-uk.fieldproxy.ai/api/read with the key in the x-api-key header and a body such as {"tableName": "st_customers", "condition": {"id": 1}}. There is no sign-up, no card and no call. The data is a made-up HVAC company.
- Is there a public MCP server I can test?
- Yes. Fieldproxy's MCP server runs at https://api-uk.fieldproxy.ai/mcp with a public read-only key listed at https://www.fieldproxy.ai/developers/sandbox. Add it to Claude Code, Cursor, Codex or any MCP client that accepts a URL and headers, send the key as Authorization: Bearer, and ask questions about the sample jobs, customers and invoices. It has 21 read-only tools, including run_sql and describe_schema.
- Is the sandbox data real?
- No. "Summit Heating & Air" is a made-up HVAC company. Every customer, job, invoice and technician in it is sample data, and the emails use example.com. It is shaped like a real service business so the answers look like the ones you would get on your own workspace.
- Can I write data in the sandbox?
- No. Both sandbox keys are read only. Insert, update and delete calls are refused, and the MCP key cannot propose changes, send email or send texts. A real workspace has keys with write access, and every AI write there is proposed, confirmed by a person and undoable.
- How do I get a key for my own workspace?
- Book a demo and Fieldproxy sets up a workspace on your own data. In your workspace, an administrator creates REST keys under Settings, Security, API keys (with an expiry, the operations they may use and an optional table list) and MCP keys under Settings, AI assistant. Claude, ChatGPT and Copilot can also sign in with OAuth. API and MCP access are included on every plan.
- When do the sandbox keys expire?
- The REST key expires on November 6, 2027. The MCP key expires on February 4, 2027, because MCP keys last at most 90 days, and it is replaced on this page before then. If a key stops working, reload the page for the current one.
Liked the sample? See it on your own data
Get your own custom field service management within a day. Tailored to your workflows.