Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.
An argument rule limits the values one tool on one MCP Connection may be called with. Use it to keep a tool inside one team, project or channel.A rule has four parts:
The argument: one top-level argument of the tool.
only or never: the value must, or must not, match.
is or contains: match the whole value or part of the text.
Matching ignores case.
Oriant adds each rule to the tool’s description, so the AI client knows the limit before it calls. Before forwarding, Oriant checks the call. A call that breaks a rule is recorded as refused with reason argument_not_allowed and never sent.
Rules check what a call asks for, not what the server returns.
Last modified on November 9, 2026
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Oriant","description":"Oriant is the governance layer in front of the AI your company already uses: an MCP gateway that decides and records what AI does in company systems, and an endpoint agent that finds AI tools on machines, scans the Skills AI agents load, and measures AI adoption.","colors":{"primary":"#6f5fe8","light":"#6f5fe8","dark":"#6f5fe8"},"logo":{"light":"https://mintcdn.com/oriant/yJ_IwdeZVp6bhE7H/logo-light.svg?fit=max\u0026auto=format\u0026n=yJ_IwdeZVp6bhE7H\u0026q=85\u0026s=40d71e07209bb649df9a0e138079665e","dark":"https://mintcdn.com/oriant/yJ_IwdeZVp6bhE7H/logo-dark-cube.svg?fit=max\u0026auto=format\u0026n=yJ_IwdeZVp6bhE7H\u0026q=85\u0026s=003b465afc4b27fa0135924345f0f58b","href":"https://oriant.app"},"favicon":"https://mintcdn.com/oriant/yJ_IwdeZVp6bhE7H/favicon.svg?fit=max\u0026auto=format\u0026n=yJ_IwdeZVp6bhE7H\u0026q=85\u0026s=31958aef764731c6648bddb431a4ad63","appearance":{"default":"light"},"background":{"color":{"light":"#FCFCFC","dark":"#252321"}},"navbar":{"links":[{"href":"https://oriant.app/self-host","label":"Self-host"},{"href":"https://oriant.app","label":"Oriant"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.oriant.app"}},"footer":{"socials":{"website":"https://oriant.app"}},"search":{"prompt":"Search Oriant docs"},"seo":{"metatags":{"keywords":"MCP gateway, MCP governance, MCP access control, MCP audit log, Model Context Protocol security, Claude Code MCP, Cursor MCP, AI agent governance, agent skills security, Claude skills scanning","og:site_name":"Oriant","og:type":"website"}},"fonts":{"family":"Geist"},"icons":{"library":"lucide"},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"oriant","hasAudioNarration":false,"actualSubdomain":"oriant","customDomains":["docs.oriant.app"],"gitSource":{"type":"github","owner":"4ug-aug","repo":"oriant","deployBranch":"main","contentDirectory":"mintlify","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6af48c0992e66ae7e438dfce","clientVersion":"0.0.4128","searchFilterCounts":[{"language":"default","tag":"MCP gateway","count":5},{"language":"default","tag":"Endpoint agent","count":4},{"language":"default","tag":"Guides","count":3},{"language":"default","tag":"Get started","count":3},{"language":"default","tag":"Reference","count":2},{"language":"default","tag":"AI adoption","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"mcp-gateway/argument-rules","slug":"/mcp-gateway/argument-rules","pageMetadata":{"title":"Argument rules","description":"Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.","keywords":["MCP argument rules","restrict MCP tool","MCP allowlist"],"href":"/mcp-gateway/argument-rules"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Note}=_components;if(!Note)_missingMdxReference(`Note`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`An `,_jsx(_components.strong,{children:`argument rule`}),` limits the values one tool on one MCP Connection may be called with. Use it to keep a tool inside one team, project or channel.`]}),`\n`,_jsx(_components.p,{children:`A rule has four parts:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`The argument`}),`: one top-level argument of the tool.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`only`}),` or `,_jsx(_components.strong,{children:`never`}),`: the value must, or must not, match.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`is`}),` or `,_jsx(_components.strong,{children:`contains`}),`: match the whole value or part of the text.`]}),`\n`,_jsx(_components.li,{children:`Matching ignores case.`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Oriant adds each rule to the tool’s description, so the AI client knows the limit before it calls. Before forwarding, Oriant checks the call. A call that breaks a rule is recorded as refused with reason `,_jsx(_components.code,{children:`argument_not_allowed`}),` and never sent.`]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`Rules check what a call asks for, not what the server returns.`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Argument rules","description":"Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.","keywords":["MCP argument rules","restrict MCP tool","MCP allowlist"],"href":"/mcp-gateway/argument-rules"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"subdomain":"oriant","siteName":"Oriant","title":"Argument rules - Oriant","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-09T18:09:33.137Z","gitLastModified":"2026-11-09T18:09:25.000Z","originalFileLocation":"mcp-gateway/argument-rules.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.\">\u003cmeta data-mint-head name=\"keywords\" content=\"MCP gateway, MCP governance, MCP access control, MCP audit log, Model Context Protocol security, Claude Code MCP, Cursor MCP, AI agent governance, agent skills security, Claude skills scanning\">\u003cmeta data-mint-head name=\"application-name\" content=\"Oriant\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Argument rules - Oriant\">\u003cmeta data-mint-head property=\"og:description\" content=\"Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Oriant\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.oriant.app/mcp-gateway/argument-rules\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://oriant.mintlify.site/_mintlify/api/og/v2?division=MCP+gateway\u0026amp;title=Argument+rules\u0026amp;description=Limit+the+values+an+MCP+tool+may+be+called+with+on+one+connection%2C+such+as+one+Linear+team+or+one+Slack+channel.\u0026amp;theme=458be1b8e8fb8a0a01b75178\u0026amp;signature=0cc8d8801e7335027b9d739251a155912bba04bc27dd90c1ebc9c6044d0324a2\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Argument rules - Oriant\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://oriant.mintlify.site/_mintlify/api/og/v2?division=MCP+gateway\u0026amp;title=Argument+rules\u0026amp;description=Limit+the+values+an+MCP+tool+may+be+called+with+on+one+connection%2C+such+as+one+Linear+team+or+one+Slack+channel.\u0026amp;theme=458be1b8e8fb8a0a01b75178\u0026amp;signature=0cc8d8801e7335027b9d739251a155912bba04bc27dd90c1ebc9c6044d0324a2\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/oriant/v0m0WPWjpMvLGO0I/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Oriant\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6f5fe8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.oriant.app/mcp-gateway/argument-rules\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/mcp-gateway/argument-rules.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.oriant.app/#organization\",\"name\":\"Oriant\",\"url\":\"https://docs.oriant.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/oriant/yJ_IwdeZVp6bhE7H/logo-light.svg?fit=max\u0026auto=format\u0026n=yJ_IwdeZVp6bhE7H\u0026q=85\u0026s=40d71e07209bb649df9a0e138079665e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.oriant.app#website\",\"name\":\"Oriant\",\"url\":\"https://docs.oriant.app\",\"publisher\":{\"@id\":\"https://docs.oriant.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.oriant.app/mcp-gateway/argument-rules#webpage\",\"url\":\"https://docs.oriant.app/mcp-gateway/argument-rules\",\"name\":\"Argument rules\",\"description\":\"Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.\",\"dateModified\":\"2026-11-09T18:09:25.000Z\",\"isPartOf\":{\"@id\":\"https://docs.oriant.app#website\"},\"breadcrumb\":{\"@id\":\"https://docs.oriant.app/mcp-gateway/argument-rules#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.oriant.app/mcp-gateway/argument-rules#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"MCP gateway\",\"item\":\"https://docs.oriant.app/mcp-gateway/connections\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Argument rules\",\"item\":\"https://docs.oriant.app/mcp-gateway/argument-rules\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.oriant.app/mcp-gateway/argument-rules#article\",\"headline\":\"Argument rules\",\"name\":\"Argument rules\",\"description\":\"Limit the values an MCP tool may be called with on one connection, such as one Linear team or one Slack channel.\",\"url\":\"https://docs.oriant.app/mcp-gateway/argument-rules\",\"mainEntityOfPage\":{\"@id\":\"https://docs.oriant.app/mcp-gateway/argument-rules#webpage\"},\"dateModified\":\"2026-11-09T18:09:25.000Z\",\"keywords\":\"MCP argument rules, restrict MCP tool, MCP allowlist\",\"publisher\":{\"@id\":\"https://docs.oriant.app/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.oriant.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Oriant\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Oriant\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/mcp-gateway/argument-rules.md","siteName":"Oriant","nav":{"global":null,"groups":[{"group":"Get started","pages":[{"title":"What is Oriant","href":"/index"},{"title":"Quickstart","href":"/quickstart"},{"title":"Roadmap","href":"/roadmap"}]},{"group":"MCP gateway","pages":[{"title":"MCP Connections","href":"/mcp-gateway/connections"},{"title":"Connect AI clients","href":"/mcp-gateway/connect-ai-clients"},{"title":"MCP Policies","description":"Decide which MCP tools each person may use, by directory group, risk level and named tool.","href":"/mcp-gateway/policies"},{"title":"Argument rules","href":"/mcp-gateway/argument-rules"},{"title":"Call log","description":"Every MCP call made through Oriant: who made it, with which tool and arguments, and what happened.","href":"/mcp-gateway/call-log"}]},{"group":"Endpoint agent","pages":[{"title":"Endpoint agent","href":"/endpoint-agent/overview"},{"title":"Device scan","href":"/endpoint-agent/device-scan"},{"title":"Skills scanning","href":"/endpoint-agent/skills"},{"title":"AI Tools","href":"/endpoint-agent/ai-tools"}]},{"group":"AI adoption","pages":[{"title":"AI adoption","href":"/ai-adoption"}]},{"group":"Guides","pages":[{"title":"Audit what Claude Code does through MCP","sidebarTitle":"Audit Claude Code MCP calls","href":"/guides/audit-claude-code-mcp"},{"title":"Make Linear MCP read-only for a team","sidebarTitle":"Read-only Linear MCP","href":"/guides/read-only-linear-mcp"},{"title":"MCP gateway or direct connections","sidebarTitle":"Gateway or direct","href":"/guides/mcp-gateway-or-direct"}]},{"group":"Reference","pages":[{"title":"Oriant MCP","href":"/reference/oriant-mcp"},{"title":"Agent sign-in (OAuth)","href":"/reference/agent-sign-in"}]}]},"basePath":"","title":"Argument rules - Oriant","buildId":"dpl_5tKr6cUUeuVJdEZ9JAEY3h4soMJ8","deploymentId":"dpl_5tKr6cUUeuVJdEZ9JAEY3h4soMJ8","dynamics":[],"chunks":[]}