{"id":24092,"date":"2026-08-20T11:53:58","date_gmt":"2026-08-20T06:23:58","guid":{"rendered":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/?post_type=article&#038;p=24092"},"modified":"2026-09-02T09:25:16","modified_gmt":"2026-09-02T03:55:16","slug":"mcp-client","status":"publish","type":"article","link":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/article\/mcp-client\/","title":{"rendered":"MCP Client"},"content":{"rendered":"<h2>Overview<\/h2>\n<p>An <strong>MCP Client<\/strong> lets you connect an external application \u2014 such as an AI agent, automation script, or backend service \u2014 to Nimble using the <strong>Model Context Protocol (MCP)<\/strong>. It uses OAuth 2.0 client credentials, so the application authenticates on its own, with no user login required at run time.<\/p>\n<p>When you register an MCP Client, Nimble generates a <strong>Client ID<\/strong> and a <strong>Client Secret<\/strong>. You add these credentials to your tool\u2019s MCP configuration to read and manage your workspace data programmatically.<\/p>\n<h2>What You Can Use It For<\/h2>\n<p>Register an MCP Client whenever you want a tool or service to work with Nimble automatically. Common examples include:<\/p>\n<ul>\n<li><strong>Custom AI agents<\/strong> \u2014 connect a LangChain, CrewAI, or local LLM agent to your Nimble workspaces.<\/li>\n<li><strong>Automation scripts<\/strong> \u2014 create a card from a webhook, or close overdue cards on a schedule.<\/li>\n<li><strong>Service integrations<\/strong> \u2014 turn a support ticket into a bug card, or a CRM deal into a delivery card.<\/li>\n<li><strong>Reporting bots<\/strong> \u2014 generate a weekly sprint summary, burndown, or overdue report.<\/li>\n<li><strong>Time logging<\/strong> \u2014 log hours from a time-tracking tool to the matching card.<\/li>\n<li><strong>CI\/CD pipelines<\/strong> \u2014 update card status on deployment, block on failure, or log build time.<\/li>\n<\/ul>\n<h2>Prerequisites<\/h2>\n<ul>\n<li>You need access to <strong>Account Space &gt; Administration<\/strong> (available to administrators).<\/li>\n<li>An MCP-compatible tool or client that you want to connect to Nimble.<\/li>\n<\/ul>\n<h2>Register an MCP Client<\/h2>\n<p>Go to <strong>Account Space &gt; Administration &gt; MCP Client<\/strong>. This screen lists your registered clients and lets you add new ones.<\/p>\n<p><a target=\"_blank\" href=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-empty.png\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-24102\" src=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-empty.png\" alt=\"MCP Client screen under Account Space Administration\" width=\"1920\" height=\"799\" srcset=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-empty.png 1920w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-empty-300x125.png 300w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-empty-1024x426.png 1024w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-empty-768x320.png 768w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-empty-1536x639.png 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/a><\/p>\n<p>To register a new client:<\/p>\n<ol>\n<li>Click <strong>REGISTER<\/strong>.<\/li>\n<li>Enter a <strong>Client Name<\/strong> to identify the client, and an optional <strong>Description<\/strong>.<\/li>\n<li>A <strong>Client ID<\/strong> is generated automatically. You can edit it before saving if needed.<\/li>\n<\/ol>\n<p><a target=\"_blank\" href=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-register-form.png\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-24103\" src=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-register-form.png\" alt=\"Register MCP Client form with Client Name, Description, and Client ID\" width=\"1920\" height=\"799\" srcset=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-register-form.png 1920w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-register-form-300x125.png 300w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-register-form-1024x426.png 1024w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-register-form-768x320.png 768w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-register-form-1536x639.png 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/a><\/p>\n<ol start=\"4\">\n<li>Expand <strong>Workspace Access Permissions<\/strong> and select the workspaces and operations \u2014 <strong>Read Card<\/strong>, <strong>Create Card<\/strong>, <strong>Update Card<\/strong>, <strong>Close Card<\/strong>, and <strong>Delete Card<\/strong> \u2014 that this client is allowed to perform. Grant only the permissions the client needs.<\/li>\n<\/ol>\n<p><a target=\"_blank\" href=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-workspace-permissions.png\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-24104\" src=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-workspace-permissions.png\" alt=\"Workspace Access Permissions matrix for an MCP Client\" width=\"1920\" height=\"799\" srcset=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-workspace-permissions.png 1920w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-workspace-permissions-300x125.png 300w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-workspace-permissions-1024x426.png 1024w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-workspace-permissions-768x320.png 768w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-workspace-permissions-1536x639.png 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/a><\/p>\n<ol start=\"5\">\n<li>Click <strong>REGISTER CLIENT<\/strong>.<\/li>\n<\/ol>\n<p>Nimble displays the <strong>Client ID<\/strong> and a one-time <strong>Client Secret<\/strong>. Copy the Client Secret and store it securely \u2014 it is shown only once and cannot be retrieved again (only regenerated).<\/p>\n<p><a target=\"_blank\" href=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-credentials.png\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-24105\" src=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-credentials.png\" alt=\"Client ID and one-time Client Secret shown after registration\" width=\"1920\" height=\"799\" srcset=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-credentials.png 1920w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-credentials-300x125.png 300w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-credentials-1024x426.png 1024w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-credentials-768x320.png 768w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-credentials-1536x639.png 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/a><\/p>\n<p>Click <strong>DONE<\/strong>. The new client now appears in the list, where you can edit or delete it later.<\/p>\n<p><a target=\"_blank\" href=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-listing.png\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-24106\" src=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-listing.png\" alt=\"MCP Client list showing a registered client\" width=\"1920\" height=\"799\" srcset=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-listing.png 1920w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-listing-300x125.png 300w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-listing-1024x426.png 1024w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-listing-768x320.png 768w, https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-content\/uploads\/2026\/08\/nimble-mcp-client-listing-1536x639.png 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/a><\/p>\n<h2>Get an Access Token<\/h2>\n<p>Your application exchanges its Client ID and Client Secret for an access token using the OAuth 2.0 client credentials grant:<\/p>\n<pre>POST https:\/\/auth.digite.com\/rest\/v1\/oauth\/token\r\nContent-Type: application\/x-www-form-urlencoded\r\n\r\ngrant_type=client_credentials\r\n&amp;client_id=nmb_cli_abc123...\r\n&amp;client_secret=&lt;your-secret&gt;\r\n&amp;resource=https:\/\/api.digite.com\/mcp\/v1<\/pre>\n<p>The response returns an access token that you use as a Bearer token:<\/p>\n<pre>{\r\n  \"access_token\": \"eyJhbGci...\",\r\n  \"token_type\": \"Bearer\",\r\n  \"expires_in\": 3600,\r\n  \"scope\": \"read:workspaces read:forms read:instances write:instances\"\r\n}<\/pre>\n<p>The <strong>resource<\/strong> parameter scopes the token to the MCP server. Cache and reuse the token until it expires \u2014 do not request a new token for every call.<\/p>\n<h2>Connect to the Nimble MCP Server<\/h2>\n<ul>\n<li><strong>Endpoint<\/strong>: <code>POST https:\/\/api.digite.com\/mcp\/v1<\/code><\/li>\n<li><strong>Transport<\/strong>: Streamable HTTP, with all calls made using JSON-RPC 2.0.<\/li>\n<li><strong>Authentication<\/strong>: include <code>Authorization: Bearer &lt;access_token&gt;<\/code> on every request, including <code>initialize<\/code>.<\/li>\n<\/ul>\n<p>Follow the standard MCP Streamable HTTP transport protocol to connect to and interact with the server.<\/p>\n<h2>Important Points<\/h2>\n<ul>\n<li>An MCP Client connects using its own credentials, with no user login required at run time. Actions performed through it are attributed to the client, not to the user who registered it.<\/li>\n<li>The <strong>Client Secret<\/strong> is displayed only once, at registration. If you lose it, regenerate it rather than creating a new client.<\/li>\n<li>Grant each client only the workspace permissions it needs.<\/li>\n<\/ul>\n<div class=\"helpful-block-content wth-theme-thumbs\" data-title=\"\" >\n<ul>\n<li><span class=\"wth-title\">Was this helpful?<\/span><\/li>\n<li><a data-post=\"24092\" data-post-url=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/article\/mcp-client\/\" data-post-title=\"MCP Client\" data-response=\"1\" href=\"#\" class=\"wth-green-btn icon-thumbsup\">Yes<\/a>&nbsp; &nbsp;<a data-response=\"0\" data-post=\"24092\" data-post-url=\"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/article\/mcp-client\/\" data-post-title=\"MCP Client\" href=\"#\" class=\"wth-red-btn icon-thumbsdown\">No<\/a><\/li>\n<\/ul>\n<\/div>","protected":false},"author":2,"featured_media":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","multi-rating":{"mr_rating_results":[]},"_links":{"self":[{"href":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-json\/wp\/v2\/article\/24092"}],"collection":[{"href":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-json\/wp\/v2\/types\/article"}],"author":[{"embeddable":true,"href":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-json\/wp\/v2\/comments?post=24092"}],"version-history":[{"count":4,"href":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-json\/wp\/v2\/article\/24092\/revisions"}],"predecessor-version":[{"id":24119,"href":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-json\/wp\/v2\/article\/24092\/revisions\/24119"}],"wp:attachment":[{"href":"https:\/\/www.nimblework.com\/knowledge-base\/nimble\/wp-json\/wp\/v2\/media?parent=24092"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}