Connections: what each agent asked for
curl --request GET \
--url http://localhost:3000/api/v1/insights/connections \
--header 'Authorization: Bearer <token>'import requests
url = "http://localhost:3000/api/v1/insights/connections"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('http://localhost:3000/api/v1/insights/connections', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "3000",
CURLOPT_URL => "http://localhost:3000/api/v1/insights/connections",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "http://localhost:3000/api/v1/insights/connections"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("http://localhost:3000/api/v1/insights/connections")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:3000/api/v1/insights/connections")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"days": 0,
"clients": [
{
"client": "<string>",
"events": 0,
"tools": [
{
"name": "<string>",
"calls": 0,
"failed": 0
}
],
"contexts": [
{
"context": "<string>",
"count": 0
}
],
"refusals": {
"total": 0,
"reasons": [
{
"code": "<string>",
"count": 0
}
]
},
"fetches": 0,
"searches": 0
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"detail": "<unknown>"
}
}API Reference
Connections: what each agent asked for
Per agent (an API key or OAuth client, by name), over the last 30 days: the MCP tools it called and how many failed, the brand contexts it asked for, the uses it was refused and why, and the files it fetched and searches it made. A tool call keeps its name and outcome, never its arguments.
Scope: write.
GET
/
api
/
v1
/
insights
/
connections
Connections: what each agent asked for
curl --request GET \
--url http://localhost:3000/api/v1/insights/connections \
--header 'Authorization: Bearer <token>'import requests
url = "http://localhost:3000/api/v1/insights/connections"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('http://localhost:3000/api/v1/insights/connections', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "3000",
CURLOPT_URL => "http://localhost:3000/api/v1/insights/connections",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "http://localhost:3000/api/v1/insights/connections"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("http://localhost:3000/api/v1/insights/connections")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:3000/api/v1/insights/connections")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"days": 0,
"clients": [
{
"client": "<string>",
"events": 0,
"tools": [
{
"name": "<string>",
"calls": 0,
"failed": 0
}
],
"contexts": [
{
"context": "<string>",
"count": 0
}
],
"refusals": {
"total": 0,
"reasons": [
{
"code": "<string>",
"count": 0
}
]
},
"fetches": 0,
"searches": 0
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"detail": "<unknown>"
}
}