diff --git a/README.md b/README.md index f671d5c..6bc18da 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,6 @@ [](https://opensource.org/licenses/MIT)  - DoiT MCP Server provides access to the DoiT API. This server enables LLMs like Claude to access DoiT platform data for troubleshooting and analysis.  @@ -11,7 +10,6 @@ DoiT MCP Server provides access to the DoiT API. This server enables LLMs like C - Node.js v18 or higher - DoiT API key with appropriate permissions -- Customer context identifier (for customer-specific data) ## Installation @@ -19,6 +17,25 @@ To get your DoiT API key, visit the [API key section in your DoiT profile](https There are several ways to install and configure the MCP server: +### DoiT MCP URL + +The DoiT MCP server is available at: https://mcp.doit.com/sse + +### Claude Desktop App + +```json +{ + "mcpServers": { + "doit_mcp_server": { + "command": "npx", + "args": ["mcp-remote", "https://mcp.doit.com/sse"] + } + } +} +``` + +## STDIO - local server + ### Claude Desktop App To manually configure the MCP server for Claude Desktop App, add the following to your `claude_desktop_config.json` file or through "Settings" as described [here](https://modelcontextprotocol.io/quickstart/user#2-add-the-filesystem-mcp-server): diff --git a/doit-mcp-server/.gitignore b/doit-mcp-server/.gitignore new file mode 100644 index 0000000..5addd9a --- /dev/null +++ b/doit-mcp-server/.gitignore @@ -0,0 +1,178 @@ +node_modules + +.nx +.idea +.vscode +.zed +# Logs + +logs +_.log +npm-debug.log_ +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +.pnpm-debug.log* + +# Diagnostic reports (https://nodejs.org/api/report.html) + +report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json + +# Runtime data + +pids +_.pid +_.seed +\*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover + +lib-cov + +# Coverage directory used by tools like istanbul + +coverage +\*.lcov + +# nyc test coverage + +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) + +.grunt + +# Bower dependency directory (https://bower.io/) + +bower_components + +# node-waf configuration + +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) + +build/Release + +# Dependency directories + +node_modules/ +jspm_packages/ + +# Snowpack dependency directory (https://snowpack.dev/) + +web_modules/ + +# TypeScript cache + +\*.tsbuildinfo + +# Optional npm cache directory + +.npm + +# Optional eslint cache + +.eslintcache + +# Optional stylelint cache + +.stylelintcache + +# Microbundle cache + +.rpt2_cache/ +.rts2_cache_cjs/ +.rts2_cache_es/ +.rts2_cache_umd/ + +# Optional REPL history + +.node_repl_history + +# Output of 'npm pack' + +\*.tgz + +# Yarn Integrity file + +.yarn-integrity + +# dotenv environment variable files + +.env +.env.development.local +.env.test.local +.env.production.local +.env.local + +# parcel-bundler cache (https://parceljs.org/) + +.cache +.parcel-cache + +# Next.js build output + +.next +out + +# Nuxt.js build / generate output + +.nuxt +dist + +# Gatsby files + +.cache/ + +# Comment in the public line in if your project uses Gatsby and not Next.js + +# https://nextjs.org/blog/next-9-1#public-directory-support + +# public + +# vuepress build output + +.vuepress/dist + +# vuepress v2.x temp and cache directory + +.temp +.cache + +# Docusaurus cache and generated files + +.docusaurus + +# Serverless directories + +.serverless/ + +# FuseBox cache + +.fusebox/ + +# DynamoDB Local files + +.dynamodb/ + +# TernJS port file + +.tern-port + +# Stores VSCode versions used for testing VSCode extensions + +.vscode-test + +# yarn v2 + +.yarn/cache +.yarn/unplugged +.yarn/build-state.yml +.yarn/install-state.gz +.pnp.\* + +# wrangler project + +.dev.vars +.wrangler/ diff --git a/doit-mcp-server/README.md b/doit-mcp-server/README.md new file mode 100644 index 0000000..5ac9415 --- /dev/null +++ b/doit-mcp-server/README.md @@ -0,0 +1,120 @@ +# Remote MCP Server on Cloudflare + +Let's get a remote MCP server up-and-running on Cloudflare Workers complete with OAuth login! + +## Develop locally + +```bash +# clone the repository +git clone https://github.com/cloudflare/ai.git +# Or if using ssh: +# git clone git@github.com:cloudflare/ai.git + +# install dependencies +cd ai +# Note: using pnpm instead of just "npm" +pnpm install + +# run locally +npx nx dev remote-mcp-server +``` + +You should be able to open [`http://localhost:8787/`](http://localhost:8787/) in your browser + +## Connect the MCP inspector to your server + +To explore your new MCP api, you can use the [MCP Inspector](https://modelcontextprotocol.io/docs/tools/inspector). + +- Start it with `npx @modelcontextprotocol/inspector` +- [Within the inspector](http://localhost:5173), switch the Transport Type to `SSE` and enter `http://localhost:8787/sse` as the URL of the MCP server to connect to, and click "Connect" +- You will navigate to a (mock) user/password login screen. Input any email and pass to login. +- You should be redirected back to the MCP Inspector and you can now list and call any defined tools! + +
${scope.name}
+${scope.description}
++ You will be redirected back to the application shortly. +
+ + ${raw(` + + `)} ++ Enter your customer ID to access your DoiT resources and data. +
+