Connecting Usign to Claude in five minutes
One server URL, an OAuth tab, and a consent screen. No API key, no config file, no developer. Here is the whole flow, plus what to do when it misbehaves.
Usign runs a remote MCP server at a single URL. Point Claude at it, approve the connection in your browser, and Claude can read your templates and draft, send, and track contracts in your workspace — in a chat, in your own words.
There is no API key to generate. Authentication is OAuth 2.1 against your existing Usign login, which means the connector acts as you, inside the workspaces you already have access to.
Before you start
- A Usign account at
usign.upfluence.comwith membership in the workspace you want Claude to operate on. - A Claude plan that supports custom MCP connectors.
- About two minutes.
You do not need an API key. Workspace API keys still exist for backend integrators calling the REST API directly, but the MCP server does not use one.
Connect from claude.ai
- Sign in to
claude.ai. - Go to Settings → Connectors → Add connector and choose a custom MCP server.
- Name it Usign — this is what you will refer to in chat.
- Server URL:
https://usign.upfluence.com/api/mcp - Leave auth as OAuth. Claude detects this from our published metadata.
- Click Connect.
What happens next, in order:
- Claude discovers our OAuth metadata at
.well-known/oauth-protected-resourceand.well-known/oauth-authorization-server. - Claude registers itself as an OAuth client dynamically — nothing for you to paste.
- A browser tab opens on
usign.upfluence.com. - If you are not signed in to Usign, you sign in first (Google SSO, or email and password).
- A consent screen asks whether Claude may access your Usign workspace. Check the permissions and the redirect URI, then Allow access.
- The tab closes. Back in Claude, the connector reads Connected.
Claude Desktop and Claude Code
Claude Desktop
Same server URL, same OAuth flow, walked through in a built-in browser tab. The consent screen is identical.
Claude Code
Add the server to your MCP config:
{
"mcpServers": {
"usign": {
"type": "http",
"url": "https://usign.upfluence.com/api/mcp"
}
}
}
Claude Code triggers the OAuth flow on first use and opens the consent screen in a browser tab.
Your first prompts
Open a new chat with the connector enabled and start with something read-only:
List my Usign templates and tell me what fields they need.
Claude should call usign_list_templates, then usign_get_template on each, and hand back a clean summary. If that works, the connection is good.
Then the real thing:
Take these twelve emails and draft a contract for each on the Brand Collab — Standard template.
Claude resolves the template, reads its required merge fields, extracts values from your text, optionally previews to catch problems early, and creates twelve drafts. Then it stops and asks you to confirm. Only after your yes does it call usign_send_contract.
That pause is not politeness. There is no API-shaped way to combine create and send into one call, so even an overeager agent produces drafts rather than sent contracts.
If you belong to several workspaces
The first tool call comes back with a workspace_not_selected error listing your memberships. Tell Claude which one you mean:
Use my Upfluence workspace.
It calls usign_select_workspace, and the choice sticks across sessions. To move, just say switch to the Acme workspace. If you belong to exactly one workspace, none of this happens — it is picked for you.
Revoking access
usign.upfluence.com/settings/connected-apps lists every MCP client connected to your account, with last-used timestamps. Revoke invalidates its tokens immediately; the next request from that client gets a 401 and it has to redo the OAuth flow.
Revoking severs the credential and nothing else. Contracts and templates the client touched stay exactly as they are.
When it misbehaves
“Couldn't connect” on the add-connector screen
Open https://usign.upfluence.com/.well-known/oauth-protected-resource in a browser. It should return JSON. A 404 means the deploy is misconfigured — that one is on us.
The consent screen never appears
Pop-up blocker. Allow pop-ups for claude.ai and retry.
You land on /login and stay there after signing in
The auth redirect allow-list is missing the OAuth callback. A workspace admin needs to fix it on the Usign side.
<code>workspace_not_selected</code> on every call
Multi-workspace account, no workspace chosen yet. Name the workspace and Claude will select it.
<code>invalid_token</code> or 401 after it was working
Access tokens are short-lived (an hour by default) and the client should refresh them. If yours did not, disconnect and reconnect the connector. If a fresh token still fails, check /settings/connected-apps for stale or duplicate connections to clean up.
Fewer tools than expected in the list
Clients cache the tool list at connection time. Disconnect and reconnect to pick up anything new.
The tools, and what each one touches
Eleven tools. The annotations are part of the contract — they are how a well-behaved client decides what needs your confirmation.
| Tool | Annotation | What it does |
|---|---|---|
usign_list_templates | read-only | Resolves a spoken template name to an id |
usign_get_template | read-only | Signer roles and required merge fields — the schema to fill in |
usign_list_merge_fields | read-only | The workspace's merge-field registry |
usign_list_contracts | read-only | Filter by status, template, reference, client, or campaign |
usign_get_contract | read-only | Full detail for one contract, including per-signer state |
usign_select_workspace | idempotent | Chooses the workspace for the session |
usign_preview_contract | read-only | Renders and validates without writing anything |
usign_create_contract | not destructive | Creates one draft. Never sends |
usign_create_contracts_bulk | not destructive | Up to 300 drafts in one call. Never sends |
usign_send_contract | destructive | Dispatches a draft. Real email, real people |
usign_void_contract | destructive | Cancels with a required reason |
What Claude cannot do
Deliberately absent from the tool surface:
- Create, edit, or publish template versions — authoring stays in the editor
- Manage API keys, webhooks, members, or workspace settings
- Upload signature-on-file images
- Sign on behalf of a signer — the server is the sender, never the signer
- Delete a contract — void with a reason is the only cancellation path
A tool that does not exist cannot be called by mistake, which is a cheaper safety mechanism than any amount of prompting.
Send your first contract from a chat
First 100 contracts free for life. No card, no seats.