QUICKSTART
Your first skill call in 3 steps
Get an API key, find a skill, call it. That's it.
1
Get an API key
Create a free account, then generate a key from your dashboard.
Your key looks like as_k_abc123... — copy it, you'll only see it once.
2
Find a skill
Search by what you need in plain English. Semantic search handles the rest.
const res = await fetch("https://api.agentsource.co/v1/agent/search?q=extract+pdf+tables", {
headers: { "X-API-Key": "as_k_YOUR_KEY" },
});
const { data } = await res.json();
console.log(data[0].name); // "PDF Table Extractor"See response
response
{
"data": [
{
"slug": "pdf-table-extractor",
"name": "PDF Table Extractor",
"short_description": "Extract structured tables from PDF documents",
"trust": { "score": 92, "total_calls": 14280 },
"tool_count": 3
}
]
}3
Call it
Send a JSON-RPC request through the MCP proxy. Your agent now has a new superpower.
const result = await fetch("https://proxy.agentsource.co/v1/mcp/pdf-table-extractor", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": "as_k_YOUR_KEY",
},
body: JSON.stringify({
jsonrpc: "2.0",
id: 1,
method: "tools/call",
params: {
name: "extract_tables",
arguments: { url: "https://example.com/report.pdf" },
},
}),
});
const { result: tables } = await result.json();
console.log(tables); // [{ headers: [...], rows: [...] }]See response
response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{
"type": "text",
"text": "[{\"headers\": [\"Quarter\", \"Revenue\", \"Growth\"], \"rows\": [[\"Q1\", \"$2.4M\", \"12%\"], [\"Q2\", \"$2.8M\", \"17%\"]]}]"
}
]
}
}