Skip to main content

UserEvidence MCP Server

Connect your AI agents to search customer testimonials, case studies, and proof points

T
Written by Tom Aristone


What is MCP?

MCP (Model Context Protocol) is a standardized way for AI assistants to connect to external tools and data sources. Our MCP server lets AI agents search and retrieve your UserEvidence assets—testimonials, case studies, stats, and more—directly within your AI workflows.

Quick Overview Video

Prerequisites

  1. An active UserEvidence account

  2. An MCP client that supports remote servers with OAuth: dynamic client registration and PKCE (S256). Or, for org-wide use, a service connection (Option 4).

Quick Reference

MCP Endpoint

Transport

Streamable HTTP (stateless, JSON responses).

Authentication

OAuth 2.0 (automatic browser flow)


Option 1: Claude (claude.ai)

Recommended for most users. No configuration files needed. A connector added here also appears in the Claude Desktop app.

Team or Enterprise plan

Step A: An Owner adds the connector (once for the whole organization)

  1. Sign in to claude.ai as an Owner or Primary Owner. On Enterprise, a custom role with Manage access to Libraries also works.

  2. Go to Organization settings → Connectors.

  3. Click Add, hover over Custom, and select Web.

  4. For Name, enter UserEvidence.

  5. For Remote MCP server URL, enter https://app.userevidence.com/mcp/v1 and click Continue.

  6. Review the detected authentication settings and click Continue.

  7. Under OAuth client, select Register automatically.

  8. Leave Request headers empty and click Add.

Step B: Each member connects

  1. In Claude, go to Customize → Connectors.

  2. Find UserEvidence (it usually has a "Custom" label) and click Connect.

  3. A browser window opens. Sign in with your UserEvidence credentials and approve the connection.

  4. In a chat, click the + button at the lower left, choose Connectors, and make sure UserEvidence is toggled on.

Each member signs in with their own UserEvidence login. Members without one can't complete Step B.

Important: Under OAuth client, choose Register automatically, not Use Claude's published identity. UserEvidence doesn't support the published-identity option yet.
​

Tip: To check that the connector is working, start a new chat and ask Claude to search for testimonials. You should see UserEvidence tools being called.


Option 2: Claude Desktop App

There's nothing extra to set up. Connectors belong to your Claude account, so once UserEvidence is added through Option 1, it appears in Claude Desktop automatically.

To check, open Claude Desktop, go to Customize → Connectors, and confirm UserEvidence is listed and connected. If it isn't there, add it from the same screen using the steps in Option 1.

Note: Don't add UserEvidence to claude_desktop_config.json. That file is only for MCP servers running locally on your computer.


Option 3: Custom Agents, Frameworks, Other MCP Clients

The UserEvidence MCP server works with any MCP-compatible client or agent framework, not just Claude. If your AI tool supports remote MCP servers, you can connect it using the details below.

What you'll need

  • MCP Server URL — https://app.userevidence.com/mcp/v1

  • Transport — Streamable HTTP (JSON-RPC over HTTPS). Most clients detect this automatically; leave the transport on the default if your client offers one.

  • Authentication — OAuth 2.0. Authorization code + PKCE for a per-user connection, or client credentials for an org-wide service connection (see Option 4).

  • Scope — mcp:evidence:read (required — see Notes below)

  • An active UserEvidence login, if you're using the per-user flow.

Steps

The exact wording varies by client, but the flow is the same everywhere:

  1. Find where your client adds MCP servers or connectors. This is usually under a Settings, Integrations, Connectors, or Tools menu. Frameworks and CLI-based tools typically use a config file instead (often mcpServers in a JSON or YAML file).

  2. Add a new custom/remote MCP server and give it a name (e.g., UserEvidence).

  3. Enter the MCP Server URL above as the endpoint. If your client asks you to pick a transport, choose Streamable HTTP (or leave it on the default).

  4. Save, then authenticate. A browser window opens for OAuth — sign in with your UserEvidence credentials to authorize the connection. If your reps don't have UserEvidence logins, stop here and use a service connection instead (Option 4) — this is the most common reason a setup stalls.

  5. Confirm the tools loaded. Start a new session and check that the UserEvidence tools appear (many clients have a tools/connectors indicator, or a command like /mcp to list them). You should see six read-only tools: search_evidence, get_account_evidence, get_evidence, list_evidence_library, and list_customers.

Config-file example:
​
For clients or frameworks that use a configuration file rather than a UI, the entry generally looks like this:
​
json

{
"mcpServers": {
"userevidence": {
"type": "http",
"url": "https://app.userevidence.com/mcp/v1"
}
}
}

Claude Code: Run this command, then type /mcp inside Claude Code to sign in:

claude mcp add --transport http userevidence https://app.userevidence.com/mcp/v1


The bare /.well-known/oauth-protected-resource path describes our older connector. A client that reads the bare document and then calls /mcp/v1 will complete the entire sign-in flow and only be refused at the last step, with a token that looks valid — because it asked for the wrong scope.

These documents render in a browser, so they're also the right thing to hand a reviewer who wants to inspect the server without an MCP client:

Document

URL

Protected resource metadata (RFC 9728)

https://app.userevidence.com/.well-known/oauth-protected-resource/mcp/v1

Authorization server metadata (RFC 8414)

https://app.userevidence.com/.well-known/oauth-authorization-server

Notes on tokens and parameters

Scope is required. Your token must carry mcp:evidence:read. Without it the token authenticates and is then refused with a 403 — re-authenticating won't help; the client has to request the scope.

Resource is optional, but send it anyway

Include resource=https://app.userevidence.com/mcp/v1 in the token request. Omitting it is fine by design; sending the wrong value returns a 401.

Token endpoint auth methods: client_secret_basic, client_secret_post, or none.

If your tool manages OAuth tokens manually, complete the authorization flow once, store the returned token, and pass it as a Bearer token on later connections — re-authenticating when it expires.


Option 4: Service Connection (org-wide)

Use this when your reps don't have individual UserEvidence logins, or when the caller is a system rather than a person — Slack AI, Copilot, Gong, an internal agent. One credential an administrator creates once. No rep sign-in, no consent screen.

Steps

  1. Go to Settings → MCP as an account administrator.

  2. Under Create an org-wide credential, enter a name and click Create. Name it after the integration, not the team (for example, "Gong Briefer"). The name is what you'll see in the connection list when you audit or disable it. Create one connection per integration.

  3. Copy all five values from the screen that appears: Client ID, Client secret, Scope, Token endpoint, and Resource. The secret is shown only once and can't be recovered, so put it straight into your secret manager. If you close the screen without copying it, click Rotate secret on the connection's row to get a new one.

  4. Find the new connection in the connections table. To limit which tools it can use, click the entry in its Tools column and select a subset. A connection can never have more tools than your account baseline allows.

  5. Leave Private evidence off unless everything this integration produces stays inside your company. When it's on, the integration can receive internal-only evidence. Those results are labelled internal-only and have no shareable link.

  6. Configure the integration with the five values from step 3, as shown under "Getting a token" below.

Getting a token

Request a token from the token endpoint with the values you copied in step 3:

curl -s https://app.userevidence.com/oauth/token \
-d grant_type=client_credentials \
-d client_id=$CLIENT_ID \
-d client_secret=$CLIENT_SECRET \
-d scope=mcp:evidence:read \
-d resource=https://app.userevidence.com/mcp/v1

Then call the server with the access_token from the response. This example lists the tools the connection can use, which is a quick way to confirm everything works:

curl -s https://app.userevidence.com/mcp/v1 \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

scope is required. Without mcp:evidence:read the token authenticates and is then refused with a 403. Re-authenticating won't fix it — the client has to ask for the scope.

Rotating a secret: In Settings → MCP, click Rotate secret on the connection. The client ID, name, tool selection and usage history stay the same, so the integration only needs the new secret. The old secret and every token issued with it stop working immediately. There’s no overlap window, so have the new secret ready to paste in before you rotate. If you lose the new secret, rotate again.


What admins can control

Account administrators manage all of this themselves in Settings → MCP, with no UserEvidence involvement.

Control

What it does

Connection list

Every connection with its name, type, owner, tools, private-evidence setting, when it was last used, and whether it's enabled.

Owner

For a connection a rep approved, the rep who approved it most recently. Use it to find and switch off a departed rep's connection.

Account tool baseline

The tool ceiling for every connection on the account. Rep connections always use the baseline.

Per-connection tools

Org-wide credentials only. Narrows one connection further, never wider than the baseline. To limit reps, use the baseline or a role rule.

Role rules

Narrow tools or private-evidence access for reps with a given role, matched on their UserEvidence role (synced from your identity provider through SSO). Applies on every connection. A rule only narrows; it never grants more than the connection already has.

Private evidence

Off by default. Can be turned on per connection, including a rep's own. A role rule can turn it back off for that role, but never on.

Enabled (kill switch)

Turns a connection off. Takes effect on its next call.

Rotate secret

Org-wide credentials only. Issues a new secret under the same client ID. The old secret and its tokens stop working immediately.

Remove

Deletes the connection and its credential. Its tokens stop working and it can't be restored. A rep can reconnect to create a new connection; an integration needs a new org-wide credential.

Connect URL

Copyable, for handing to reps whose clients register themselves (Options 1–3).

A disallowed tool doesn't appear in the client's tool list at all, so there's nothing for the model to attempt.


What the tools do

Six tools, all read-only. There is no write path — nothing is written back to your Salesforce, Slack, or any other system.

Tool

What it does

search_evidence

Natural-language search across your published evidence

get_account_evidence

Proof points for a named account or deal

get_evidence

Re-reads one proof point by identifier

list_evidence_library

Inventory: counts per asset type

list_customers

Companies named on your published evidence, with a count each

get_prospect_evidence

Proof points for a prospect or deal record: industry, company size, and the role of the person being met. These rank the results; they don’t filter them.

Worth knowing when you're writing prompts:

Result limits. There's no pagination, so a single call can't walk the whole library:

Tool

Default

Max

search_evidence

10

30

get_account_evidence

3

10

get_prospect_evidence

8

20

list_customers

25

100

Search responses also include total_matching, an approximate count of how much in the library matches. Treat it as an estimate ("around 40"), not an exact number.


Example Prompts

Once connected, try asking:

  • "Find testimonials from enterprise customers about ROI"

  • "Show me case studies from healthcare companies"

  • "What proof points do we have about implementation speed?"

  • "Find a customer quote for a prospect in financial services"


Moving from the previous UserEvidence connector

If you connected UserEvidence to your AI assistant before this version, you're on the previous connector, which is being retired. Old sign-ins don't carry over, because the new server requires a different permission (mcp:evidence:read). Everyone needs to connect once more.

  1. Remove the existing UserEvidence connector from your AI client.

  2. Add it again with the URL https://app.userevidence.com/mcp/v1, following Option 1, 2, or 3 above.

  3. Sign in with your UserEvidence credentials and approve the connection.

The tool names have changed. If any saved prompts or workflows mention search_assets, change them to search_evidence.

Settings in Settings → MCP (tool selection, private evidence, the kill switch) only apply to connections on /mcp/v1. Until an assistant reconnects, those settings don't affect it.


Troubleshooting

Symptom

Fix

Rep gets bounced to a sign-in page

That rep has no UserEvidence login. Use a service connection (Option 4).

Page says "This connection needs PKCE"

The client isn't sending a PKCE code challenge (code_challenge with code_challenge_method=S256). Most clients do this automatically; update the client to its latest version.

Page says "This connection belongs to another account"

That client was already approved for a different UserEvidence account. Remove the connector from your client and add it again. It registers as a new connection.

invalid_grant, "This authorization predates the evidence server"

The client is holding a sign-in from the previous connector. Remove the connector and add it again (see "Moving from the previous UserEvidence connector").

401, "token was issued for a different resource"

Send resource=https://app.userevidence.com/mcp/v1 or leave it out, and point discovery at the /mcp/v1 well-known path.

401, "connection is not bound to an account"

The client registered, but nobody completed the approval screen. Connect again and approve.

403, token lacks scope

Request mcp:evidence:read at the token endpoint.

A tool is missing from the list

It was removed by the account baseline, the connection's tool selection, or a role rule. Check Settings → MCP.

Did this answer your question?