Which action to use
Start here · Agent quickstart · llms.txt
| Action | Use this | When |
|---|
| Search | GET /a/{key}/search or GET /api/v1/listings | You know the filters, or you want compact JSON. |
|---|
| Find | GET /a/{key}/find?q= | You have a sentence. The response echoes type, state, amount, and dates so you can edit them. |
|---|
| Get | GET /a/{key}/listing/{id} or GET /api/v1/listings/{id} | You have an id and want one record. |
|---|
| Post | GET /a/{key}/post?title= or POST /api/v1/listings | You have something to list. |
|---|
| Intro | GET /a/{key}/intro/{id}?note= | You want a double opt-in intro. Preview first. confirm=1 sends. |
|---|
| Changes | GET /a/{key}/changes?since= or GET /api/v1/changes?since= | You want records verified since a date. |
|---|
| Entity | GET /a/{key}/entity/{id} | You want one company across datasets. |
|---|
| Watch | GET /a/{key}/watch?q=&email= | You want a daily email of new matches. |
|---|
| Wanted | POST /api/v1/wanted | Search is thin and the other side should find you. |
|---|
Machine view of /deals/yc-sandbox-banking
This page, for an agent
The same page as markdown, plus the API and MCP calls that belong to it.
API
Read the public card
GET /api/v1/listings/yc-sandbox-banking
Unlock the contact
POST /api/v1/listings/yc-sandbox-banking/unlock
Authorization: Bearer $TOKEN
Unlock uses one of 50 monthly unlocks, then one paid credit. A public-record card has no private contact.
Draft an intro
POST /api/v1/listings/yc-sandbox-banking/intro
Authorization: Bearer $TOKEN
Content-Type: application/json
{"subject":"Intro","body":"..."}
The first call drafts. Send only after the person confirms, with draft_id and confirm set to send.MCP
MCP server
{
"mcpServers": {
"highford": {
"url": "/mcp"
}
}
}Tools for this card
get_deal {"id":"yc-sandbox-banking"}
request_unlock {"id":"yc-sandbox-banking","token":"$TOKEN"}
draft_intro {"id":"yc-sandbox-banking","token":"$TOKEN"}JSON
{
"site": "Highford",
"page": "/deals/yc-sandbox-banking",
"markdown": "/deals/yc-sandbox-banking?format=md",
"api": [
{
"label": "Read the public card",
"request": "GET /api/v1/listings/yc-sandbox-banking"
},
{
"label": "Unlock the contact",
"request": "POST /api/v1/listings/yc-sandbox-banking/unlock\nAuthorization: Bearer $TOKEN\n\nUnlock uses one of 50 monthly unlocks, then one paid credit. A public-record card has no private contact."
},
{
"label": "Draft an intro",
"request": "POST /api/v1/listings/yc-sandbox-banking/intro\nAuthorization: Bearer $TOKEN\nContent-Type: application/json\n\n{\"subject\":\"Intro\",\"body\":\"...\"}\n\nThe first call drafts. Send only after the person confirms, with draft_id and confirm set to send."
}
],
"mcp": {
"url": "/mcp",
"calls": [
{
"label": "MCP server",
"request": "{\n \"mcpServers\": {\n \"highford\": {\n \"url\": \"/mcp\"\n }\n }\n}"
},
{
"label": "Tools for this card",
"request": "get_deal {\"id\":\"yc-sandbox-banking\"}\nrequest_unlock {\"id\":\"yc-sandbox-banking\",\"token\":\"$TOKEN\"}\ndraft_intro {\"id\":\"yc-sandbox-banking\",\"token\":\"$TOKEN\"}"
}
]
}
}Markdown
Reading this page…