Skip to Content
APIsConnect to the Grepr MCP server

Connect to the Grepr MCP server

Grepr provides a remote Model Context Protocol server, or MCP server, that lets AI assistants work with your Grepr organization. The server provides tools to list pipelines, browse datasets and templates, query logs, validate SQL and Grok rules, and propose pipeline changes. Every tool call is authorized with the same role-based permissions as the Grepr UI and REST APIs.

The MCP server is available at the following endpoints:

RegionEndpoint
UShttps://app.grepr.ai/mcp
EUhttps://app.euc1.grepr.ai/mcp

The examples on this page use the US endpoint. If your organization is in the EU region, replace the endpoint and use the EU client ID.

You can authenticate in two ways:

  • OAuth sign-in: You sign in interactively with your Grepr user account. Use this for Claude and Claude Code.
  • Service account credentials: Your client authenticates as a Grepr service account. Use this for Claude Tag in Slack, for automation, and for MCP clients that do not support the OAuth sign-in flow.

Sign in with OAuth

Grepr registers a dedicated OAuth client for each supported MCP client. To connect, configure your MCP client with the Grepr endpoint and the matching client ID from the following table, then sign in with your Grepr user account. When the sign-in page prompts for an organization, enter your Grepr organization name.

MCP clientUS client IDEU client ID
Claudeus3sBOgZj6hERktG9yZEVwujaJe3j9L0HOnxCPNGnzdGlfXBM2sff0twoolRnDj9
Claude CodejlCTdLYzDkkTSc2I7MdI0SBw48AOdJM6GlEIcfSbge5gqN4o918fLXKVONP2twBh

Claude

These steps apply to Claude on the web, the Claude desktop apps, and the Claude mobile apps.

  1. In Claude, go to Settings > Connectors and click Add custom connector.
  2. Enter https://app.grepr.ai/mcp as the URL.
  3. Under Advanced settings, enter us3sBOgZj6hERktG9yZEVwujaJe3j9L0 as the OAuth Client ID. Leave the client secret empty.
  4. Complete the sign-in flow with your Grepr user account.

Claude Code

Add the server with the Grepr client ID and the fixed callback port:

claude mcp add --transport http --client-id jlCTdLYzDkkTSc2I7MdI0SBw48AOdJM6 --callback-port 6280 grepr https://app.grepr.ai/mcp

The --callback-port 6280 flag is required. Without it, Claude Code picks a random port and the sign-in fails with a callback URL mismatch.

Then open Claude Code, run /mcp, select grepr, and complete the sign-in flow in your browser with your Grepr user account.

Connect Claude Tag in Slack

Claude Tag is Claude in Slack channels. In a channel, Claude acts as a shared identity that an Owner of your Claude organization configures, not as the person who sends the message. Everyone in a channel that the configuration covers gets the same Grepr access, so connect a dedicated Grepr service account with the narrowest role that fits the channel. Direct messages with Claude in Slack run on your own Claude account and use the Claude connector described earlier on this page.

Before you start, you need:

  • The Owner role in your Claude organization. Claude Tag is available on the Claude Team and Enterprise plans.
  • A Grepr service account and its client ID and client secret. See Manage Grepr service accounts.
  • The Grepr plugin for Claude Tag: grepr-claude-tag-plugin.zip. Claude Tag reaches an MCP server only through a plugin. The plugin contains two files: a manifest, and an .mcp.json file that names the US and EU Grepr MCP endpoints.

Upload the plugin

  1. In Claude, go to Admin settings > Plugins and click Add plugins.
  2. Select Upload a file and upload grepr-claude-tag-plugin.zip.

The plugin is now in your organization’s catalog. It does nothing until you turn it on in an access bundle.

Turn on the plugin and add the credential

An access bundle is the set of credentials and plugins that Claude uses in the channels the bundle covers. The Default Slack scope covers every channel in your Slack workspace. To limit Grepr access to one channel, select that channel’s scope instead.

  1. Go to Admin settings > Claude Tag and, under Claude Tag’s access, select the Slack tab.

  2. Select the Default Slack scope, or the channel to connect.

  3. Next to Access bundles, click the + button and select Create new bundle, or open the existing bundle.

  4. On the Plugins tab, turn on grepr-mcp.

  5. On the Credentials tab, click Connect next to Custom tool and enter the following values:

    FieldValue
    NameGrepr
    Credential typeOAuth 2.0 client credentials
    Token URLhttps://auth.grepr.ai/oauth/token, or https://auth.eu.grepr.ai/oauth/token for the EU region
    Client IDThe service account client ID
    Client secretThe service account client secret
    Audienceservice
    Allowed websitesapp.grepr.ai, or app.euc1.grepr.ai for the EU region
  6. Save the connection and confirm that its status is Active on the Access bundles page.

A bundle on a public channel gives its access to anyone who joins the channel. Keep a service account with edit permissions in a bundle on a private channel.

Test the connection

In a channel the bundle covers, start a new thread and send:

@Claude list the Grepr pipelines

Threads that started before you turned on the plugin do not pick it up. If Claude reports that a host was blocked by the network egress proxy, add the host it names to the Allowed websites of the Grepr connection.

Authenticate with a service account token

For automation, and for MCP clients that are not in the table and do not support OAuth 2.0 client credentials, authenticate with a service account access token. The MCP endpoint accepts the same access tokens as the Grepr REST APIs.

  1. Create a service account. See Manage Grepr service accounts.

  2. Obtain an access token. See Authenticate to Grepr REST APIs.

  3. Configure your MCP client to send the token in the Authorization header. Most clients accept a headers object in their MCP server configuration:

    { "headers": { "Authorization": "Bearer <access-token>" } }

The access token expires after 24 hours and has no refresh token, so your client cannot renew it automatically. When the token expires, obtain a new token and update your client configuration. For scheduled automation, obtain a new token at the start of each run.

Last updated on