Docs
MCP
Same data, for agents. Do not paste an API key into a chat.
Remote MCP URL: https://dirigon.com/v1/mcp
Claude, ChatGPT, Cursor, and Claude Code use OAuth. Sign in with the mailbox on Trial, Tape, Matched, or a paid API plan. An invite terminal seat cannot Allow. Curl uses header X-API-KEY from an env var.
Human setup: https://dirigon.com/connect
Claude app (claude.ai / Desktop / iOS)
Leave OAuth Client ID and Secret empty. Click Add.
1. Customize → Connectors → Add custom connector. 2. Name: Dirigon 3. URL: https://dirigon.com/v1/mcp 4. Advanced settings: leave blank. 5. Add. Sign in with the mailbox on the API plan. Allow. 6. New chat → + → enable Dirigon.
Do not paste an API key into the conversation or into the OAuth boxes.
Claude Code
claude mcp add --transport http dirigon https://dirigon.com/v1/mcp
Then /mcp inside Claude Code. Sign in when it asks.
ChatGPT
Copy https://dirigon.com/v1/mcp. Settings → Developer mode → Plugins → +. Name Dirigon. Paste the URL. Authentication OAuth. Sign in. Allow. New chat, add Dirigon from the app picker.
Cursor
{
"mcpServers": {
"dirigon": {
"url": "https://dirigon.com/v1/mcp"
}
}
}
Sign in when Cursor asks. Do not put a key in mcp.json.
Codex CLI
codex mcp add dirigon --url https://dirigon.com/v1/mcp
Tools
lookup- Everyday query. q= a borrower, ticker, CIK, or phrase. Short card plus next. full=true is the deep card. Prefer this for a name.get_coverage- This compile's universe. funds = AG filers (BDCs + interval) plus CLO CEF tape. bdcs / interval / clo split. credits = peeled issuer_id count. total_fv_bn is $ billions; line fv_m is $ millions. meta.compile_id is the snapshot to cite. dictionary[] defines each field.get_issuer- issuer_id (or q= with one hit, or an exact name) opens the credit card: same-loan marks, family, history. q= matches whole tokens, not substrings. Many hits: thin list. No q: most-held names (thin). preset=disagreement = widest same-loan screen. Do not merge family ids. Do not crawl every issuer_id.get_filer- Exact ticker or cik= opens the fund card. q= with many hits is a thin list. sort=fv limit=4 is the Allocator starter. get_sector q=software view=funds ranks software books. Chips: BCRED, OCIC, HLEND, ADS, ASIF.get_positions- Line lookup on one fund SOI. Pass cik from get_filer and q= a borrower. No q: 15 sample lines (limit honors 1-15). Max 100 with q. n is the full tape. Do not sum fv_m.get_disagreement- The disagreement screen: widest same-loan issuer spreads on the latest common period (4+ holders, 15pt+, vintage hidden). n is issuers, not facilities. Stale interval marks do not rank. Pass issuer_id to get_issuer for the card. cursor pages.get_non_accrual- Lines the funds footnoted as non-accrual. Optional cik or q=credit name. Default 50. cursor pages.get_sector- Sectors page. No q: universe mix with denominator_fv_m. q=software|healthcare|industrials. view=credits|funds. Software fund ranking uses membership software_pct. Other sectors use printed mix. sort=fv|pct. cursor pages. cik= one fund's mix.get_software- Same as get_sector for software. Default q=software. view=funds ranks by membership software_pct.get_clo_tranche- CLO note holder graph. q= or tranche_key= opens one deal|class (holders, marks, vehicles). No q: cross-vehicle connections (BDC / interval / loan_cef sleeves that share a CEF tranche). view=books is per-CEF field fill vs the canonical standard. Off Find Credit. Not collateral, WAS, or OC/IC.
Example
curl https://dirigon.com/v1/mcp \
-H "X-API-KEY: YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Example prompts (after the connector is on)
- Who holds Coupa, and at what mark?
- Open BCRED. What is the book mark vs as-filed?
- Four largest funds, equal-weight: book mark, PIK, non-accrual. (Allocator starter. Blend the four cards.)
- Which BDC has the most software?
- Show the widest holder-mark disagreements in software.
- Show Ares Capital's Kellermeyer line.
- Which BDCs flagged Medallia as non-accrual?
The full book is on the terminal. Request access for a seat.