Developers
MCP server
SIGNL exposes a Model Context Protocol server so an AI client (Claude, an IDE, or your own agent) can read your workspace and act in it. Connect with OAuth, or paste an API key.
117 tools · 5 scopes
Endpoint
MCP endpoint
POST
/api/mcp: streamable HTTP, JSON-RPC. Send Authorization: Bearer <token>.Discovery
GET
/.well-known/oauth-protected-resource and /.well-known/oauth-authorization-server. An unauthenticated request to the endpoint returns 401 with a WWW-Authenticate header pointing at the first of these.Connecting with OAuth
Authorization code with PKCE (S256, required; there is no plain option). Clients are public: no client secret is issued, and PKCE is what authenticates the exchange.
1. Identify your client
two ways
https:// URL as your client_id. The document’s own client_id must equal the URL it was fetched from. Otherwise: POST /oauth/register (RFC 7591) with redirect_uris and get a client_id back.2. Authorize
GET /oauth/authorize
redirect_uri must match one you registered exactly, with no prefix matching and no normalisation.3. Exchange the code
POST /oauth/token
code_verifier and the same redirect_uri. Codes are single-use and short-lived; a replay is refused. Returns an access token and a refresh token.Redirect URIs
https://, any custom scheme (vscode://, cursor://), or http:// on localhost / 127.0.0.1 on any port. Plaintext http to any other host is refused, because the authorization code would cross the network in clear.
Scopes
A token only sees the tools its scopes allow: write tools are not registered on the server for a read-only token, so they do not appear in tools/list at all.
signl:read
scope
signl:write
scope
signl:write_sensitive
scope
signl:write_builder
scope
signl:write_ads
scope
Connecting with an API key
Create an AI Assistant key in Settings and send it as the bearer token. Simpler for a server-side integration you control; OAuth is the right choice for a client used by other people, because they authorise it themselves and can revoke it.
Workspace tools
86 tools that act inside one workspace. Each is registered only for a credential holding the scope beside it: the API key scope first, then the OAuth scope. Each tool's input fields are on the REST API page.
read · signl:read
63
get_client_snapshot
Get client snapshot
read, OAuth signl:read.list_leads
List leads
read, OAuth signl:read.get_lead
Get lead detail
read, OAuth signl:read.list_calls
List calls
read, OAuth signl:read.list_pipelines
List pipelines and stages
read, OAuth signl:read.list_deals
List deals
read, OAuth signl:read.list_tasks
List tasks
read, OAuth signl:read.get_commissions_summary
Get commissions summary
read, OAuth signl:read.get_affiliate_summary
Get affiliate summary
read, OAuth signl:read.get_leaderboard
Get leaderboard
read, OAuth signl:read.get_attribution_summary
Get attribution summary
read, OAuth signl:read.get_funnel_summary
Get funnel summary
read, OAuth signl:read.get_metric_figures
Get metric figures
read, OAuth signl:read.get_vsl_summary
Get VSL summary
read, OAuth signl:read.get_tracking_summary
Get tracking summary
read, OAuth signl:read.check_tracking_install
Check tracking install
read, OAuth signl:read.get_email_stats
Get email stats
read, OAuth signl:read.list_ad_campaigns
List ad campaigns
read, OAuth signl:read.list_talent
List talent
read, OAuth signl:read.list_automations
List automations
read, OAuth signl:read.list_cadences
List cadences
read, OAuth signl:read.list_tracked_links
List tracked links
read, OAuth signl:read.list_sources
List traffic sources
read, OAuth signl:read.get_content_performance
Get content performance
read, OAuth signl:read.list_forms
List forms
read, OAuth signl:read.list_form_submissions
List form submissions
read, OAuth signl:read.get_form
Get form
read, OAuth signl:read.list_booking_pages
List booking pages
read, OAuth signl:read.get_booking_page
Get booking page
read, OAuth signl:read.list_availability_schedules
List availability schedules
read, OAuth signl:read.get_call
Get call detail
read, OAuth signl:read.get_deal
Get deal detail
read, OAuth signl:read.get_call_transcript
Get call transcript
read, OAuth signl:read.get_ad_performance
Get ad performance
read, OAuth signl:read.list_offers
List offers
read, OAuth signl:read.list_contracts
List contracts
read, OAuth signl:read.get_contract
Get contract
read, OAuth signl:read.list_contract_templates
List contract templates
read, OAuth signl:read.get_contract_template
Get contract template
read, OAuth signl:read.list_webinars
List webinars
read, OAuth signl:read.list_webinar_registrations
List webinar registrations
read, OAuth signl:read.list_custom_fields
List custom fields
read, OAuth signl:read.list_dni_numbers
List tracking numbers
read, OAuth signl:read.list_data_tables
List data tables
read, OAuth signl:read.list_data_records
List data records
read, OAuth signl:read.list_dashboards
List dashboards
read, OAuth signl:read.list_import_runs
List import runs
read, OAuth signl:read.list_training_assignments
List training assignments
read, OAuth signl:read.get_task
Get task detail
read, OAuth signl:read.list_payments
List payments
read, OAuth signl:read.list_payment_plans
List payment plans
read, OAuth signl:read.list_eod_reports
List EOD reports
read, OAuth signl:read.list_commission_entries
List commission entries
read, OAuth signl:read.list_recordings
List recordings
read, OAuth signl:read.list_sops
List SOPs
read, OAuth signl:read.get_sop
Get SOP
read, OAuth signl:read.list_cadence_enrollments
List cadence enrolments
read, OAuth signl:read.list_messages
List a lead's messages
read, OAuth signl:read.get_usage
Get credit usage
read, OAuth signl:read.list_lead_history
List a lead's owner history
read, OAuth signl:read.list_deal_history
List a deal's stage history
read, OAuth signl:read.whoami
Who am I
read, OAuth signl:read.write · signl:write
13
create_lead
Create lead
write, OAuth signl:write.update_lead
Update lead
write, OAuth signl:write.add_lead_note
Add lead note
write, OAuth signl:write.create_call
Create call
write, OAuth signl:write.update_call
Update call
write, OAuth signl:write.create_deal
Create deal
write, OAuth signl:write.update_deal
Update deal
write, OAuth signl:write.create_task
Create task
write, OAuth signl:write.update_task
Update task
write, OAuth signl:write.create_tracked_link
Create tracked link
write, OAuth signl:write.create_source
Create traffic source
write, OAuth signl:write.create_sop
Create SOP
write, OAuth signl:write.update_sop
Update SOP
write, OAuth signl:write.write:sensitive · signl:write_sensitive
2
enroll_lead_in_cadence
Enrol a lead in a cadence
write:sensitive, OAuth signl:write_sensitive.set_automation_status
Activate or pause an automation
write:sensitive, OAuth signl:write_sensitive.write:ads · signl:write_ads
3
pause_ad_campaign
Pause ad campaign
write:ads, OAuth signl:write_ads.resume_ad_campaign
Resume ad campaign
write:ads, OAuth signl:write_ads.update_ad_campaign_budget
Change ad campaign daily budget
write:ads, OAuth signl:write_ads.write:builder · signl:write_builder
5
create_form
Create form (draft)
write:builder, OAuth signl:write_builder.update_form
Update draft form
write:builder, OAuth signl:write_builder.import_form
Import form from Typeform (draft)
write:builder, OAuth signl:write_builder.create_booking_page
Create booking page (draft)
write:builder, OAuth signl:write_builder.update_booking_page
Update draft booking page
write:builder, OAuth signl:write_builder.Agency read tools
10 tools that answer across every client in the organisation. Only an organisation-wide API key holding read sees them, beside list_workspaces, which names the workspace slugs the workspace tools take. An OAuth grant is pinned to one workspace, so it never sees these.
list_clients
List clients
read.get_portfolio_overview
Portfolio overview
read.compare_clients
Compare clients
read.get_client_health
Client health
read.list_packages
List packages
read.list_statements
List agency statements
read.list_event_templates
List event templates
read.list_agency_skills
List agency skills
read.list_org_members
List team members
read.list_agency_talent
List talent across clients
read.Agency write tools
21 tools that run the agency itself. Only an organisation-wide API key sees one, and only when it holds every scope listed beside it.
create_client
Create a client
write:agency.update_client
Edit a client
write:agency.archive_client
Archive a client
write:agency.restore_client
Restore an archived client
write:agency.create_package
Create a package
write:agency.update_package
Edit a package
write:agency.set_package_status
Activate, draft or archive a package
write:agency.duplicate_package
Duplicate a package
write:agency.delete_package
Delete a draft package
write:agency.assign_package
Put a client on a package
write:agency.switch_package
Switch a client to another package
write:agency.end_package_assignment
End a client’s package
write:agency.create_event_template
Create an event template
write:agency.update_event_template
Edit an event template
write:agency.push_event_template
Push an event template to clients
write:agency.detach_event_template_page
Unlink a booking page from its template
write:agency.delete_event_template
Delete an event template
write:agency.set_client_setup_brief
Set a client’s setup brief
write:agency.generate_statement_drafts
Generate the month’s statement drafts
write:finance.add_statement_adjustment
Add an adjustment to a draft statement
write:finance.invite_client_member
Invite someone to one client’s workspace
write:agency and write:sensitive.