{
  "markdown": "# NOC.McpServer\n\nAn MCP (Model Context Protocol) server that exposes [NiceOneCode](https://www.niceonecode.com)'s JSON → C# class converter as a tool AI assistants can call directly — no more pasting JSON into a web form.\n\nBuilt with the official [ModelContextProtocol C# SDK](https://github.com/modelcontextprotocol/csharp-sdk), running over stdio transport. Published on [NuGet.org](https://www.nuget.org/packages/NOC.McpServer) under the `McpServer` package type.\n\n## What it does\n\nExposes a single tool, `json_to_c_sharp`, which takes a JSON sample and returns the equivalent C# class definitions, generated by NiceOneCode's converter.\n\nAuthentication is handled transparently: the server logs in to your NiceOneCode account on first use, caches the JWT, and automatically re-authenticates if it expires.\n\n## Prerequisites\n\n- A NiceOneCode account (userid + password)\n- [.NET 9 SDK](https://dotnet.microsoft.com/download) or later, to install/run the tool\n- [.NET 10 SDK](https://dotnet.microsoft.com/download/dotnet/10.0) if you want to use `dnx` (VS Code, one-shot execution) instead of a persistent install\n- [.NET 9 SDK](https://dotnet.microsoft.com/download) specifically if building from source\n\n## Creating an Account\n\nIf you don't already have a NiceOneCode account, you can register one via API:\n\n```bash\ncurl -X POST \\\n  --header 'Content-Type: application/json' \\\n  --header 'Accept: application/json' \\\n  -d '{\n    \"UserName\": \"your-username\",\n    \"Password\": \"your-password\",\n    \"Email\": \"your-email@example.com\",\n    \"GenderID\": 1\n  }' \\\n  'https://www.niceonecode.com/api/nc-register'\n```\n\n| Field | Description |\n|---|---|\n| `UserName` | Desired username |\n| `Password` | Desired password — use this as `NOC_PASSWORD` |\n| `Email` | A valid email address |\n| `GenderID` | `1` = Male, `2` = Female |\n\n**Important:** the response body is a plain string, not a JSON object — for example:\n```json\n\"your-userid\"\n```\n\nUse this returned value as `NOC_USERID` (not necessarily assumed to always match the `UserName` you submitted — always use the value the API actually returns, rather than the value you sent).\n\n## Install\n\n```bash\ndotnet tool install -g NOC.McpServer\n```\n\nThis gives you the `noc-mcp` command, used in every client config below.\n\n## Configuration\n\nThe server reads two required environment variables:\n\n| Variable | Description |\n|---|---|\n| `NOC_USERID` | Your NiceOneCode userid |\n| `NOC_PASSWORD` | Your NiceOneCode password |\n\nNever commit real credentials. Set them via your MCP client's config (see below) or your local shell environment.\n\n## Connecting to an MCP client\n\n### Claude Desktop\n\nEdit `claude_desktop_config.json` (Windows: `%APPDATA%\\Claude\\claude_desktop_config.json`, macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"niceonecode\": {\n      \"command\": \"noc-mcp\",\n      \"env\": {\n        \"NOC_USERID\": \"your-userid\",\n        \"NOC_PASSWORD\": \"your-password\"\n      }\n    }\n  }\n}\n```\n\nFully quit and reopen Claude Desktop after editing.\n\n### Claude Code\n\n```bash\nclaude mcp add-json niceonecode '{\"command\":\"noc-mcp\",\"env\":{\"NOC_USERID\":\"your-userid\",\"NOC_PASSWORD\":\"your-password\"}}'\n```\n\nVerify with `claude mcp list`.\n\n### Codex\n\n```bash\ncodex mcp add niceonecode --env NOC_USERID=your-userid --env NOC_PASSWORD=your-password -- noc-mcp\n```\n\nVerify inside a session with `/mcp`.\n\n### VS Code\n\nAdd to `.vscode/mcp.json` in your workspace, or your global VS Code MCP settings:\n\n```json\n{\n  \"inputs\": [\n    {\n      \"type\": \"promptString\",\n      \"id\": \"NOC_USERID\",\n      \"description\": \"Your NiceOneCode account userid\"\n    },\n    {\n      \"type\": \"promptString\",\n      \"id\": \"NOC_PASSWORD\",\n      \"description\": \"Your NiceOneCode account password\",\n      \"password\": true\n    }\n  ],\n  \"servers\": {\n    \"NOC.McpServer\": {\n      \"type\": \"stdio\",\n      \"command\": \"dnx\",\n      \"args\": [\"NOC.McpServer\", \"--yes\"],\n      \"env\": {\n        \"NOC_USERID\": \"${input:NOC_USERID}\",\n        \"NOC_PASSWORD\": \"${input:NOC_PASSWORD}\"\n      }\n    }\n  }\n}\n```\n\nVS Code will prompt for your userid and password the first time the server starts. Requires the .NET 10 SDK for `dnx`, which downloads and runs the latest published version on demand — no separate install step needed. Pin a specific version with `\"NOC.McpServer@1.0.7\"` instead of `\"NOC.McpServer\"` if you want reproducible behavior rather than always-latest.\n\n**Note:** a `global.json` in your working directory pinning an SDK below .NET 10 will cause `dnx` to fail with a confusing \"unrecognized argument\" error rather than a clear version mismatch — check for one if this happens.\n\n### Gemini CLI\n\nEdit `~/.gemini/settings.json` (global) or `.gemini/settings.json` (project-specific):\n\n```json\n{\n  \"mcpServers\": {\n    \"niceonecode\": {\n      \"command\": \"noc-mcp\",\n      \"env\": {\n        \"NOC_USERID\": \"your-userid\",\n        \"NOC_PASSWORD\": \"your-password\"\n      }\n    }\n  }\n}\n```\n\nRestart Gemini CLI, then run `/mcp` to confirm it's connected.\n\n**Windows note:** if the server fails to start directly, wrap it through `cmd`:\n```json\n{\n  \"mcpServers\": {\n    \"niceonecode\": {\n      \"command\": \"cmd\",\n      \"args\": [\"/c\", \"noc-mcp\"],\n      \"env\": { \"NOC_USERID\": \"your-userid\", \"NOC_PASSWORD\": \"your-password\" }\n    }\n  }\n}\n```\n\n### Windsurf\n\nEdit `~/.codeium/windsurf/mcp_config.json` (macOS/Linux) or `%USERPROFILE%\\.codeium\\windsurf\\mcp_config.json` (Windows), or open it via the MCPs icon in the Cascade panel → **Configure**:\n\n```json\n{\n  \"mcpServers\": {\n    \"niceonecode\": {\n      \"command\": \"noc-mcp\",\n      \"env\": {\n        \"NOC_USERID\": \"your-userid\",\n        \"NOC_PASSWORD\": \"your-password\"\n      }\n    }\n  }\n}\n```\n\nFully quit and reopen Windsurf after saving.\n\n### Devin\n\n**Devin (cloud):** Settings → Connections → MCP servers → **Add a custom MCP**:\n\n```json\n{\n  \"transport\": \"STDIO\",\n  \"command\": \"noc-mcp\",\n  \"args\": [],\n  \"env_variables\": {\n    \"NOC_USERID\": \"your-userid\",\n    \"NOC_PASSWORD\": \"your-password\"\n  }\n}\n```\n\n**Devin for Terminal:** add to `.devin/config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"niceonecode\": {\n      \"command\": \"noc-mcp\",\n      \"env\": {\n        \"NOC_USERID\": \"your-userid\",\n        \"NOC_PASSWORD\": \"your-password\"\n      }\n    }\n  }\n}\n```\n\n**Devin Desktop** shares Windsurf's `mcp_config.json` — no separate setup needed if already configured above.\n\n## Building from source\n\nIf you'd rather build locally instead of installing from NuGet:\n\n```bash\ngit clone https://github.com/nice-one-code/NOC.McpServer.git\ncd NOC.McpServer\ndotnet build\n```\n\nThen point any client above at the compiled DLL instead of `noc-mcp`, e.g. for Claude Desktop:\n\n```json\n{\n  \"mcpServers\": {\n    \"niceonecode\": {\n      \"command\": \"dotnet\",\n      \"args\": [\"/absolute/path/to/NOC.McpServer/bin/Debug/net9.0/NOC.McpServer.dll\"],\n      \"env\": {\n        \"NOC_USERID\": \"your-userid\",\n        \"NOC_PASSWORD\": \"your-password\"\n      }\n    }\n  }\n}\n```\n\nUse forward slashes in the path even on Windows. The same substitution (`dotnet` + DLL path in place of `noc-mcp`) applies to any client config in this README.\n\n## Testing locally with the MCP Inspector\n\n```bash\nnpx @modelcontextprotocol/inspector dotnet bin/Debug/net9.0/NOC.McpServer.dll\n```\n\nThis opens a browser UI where you can invoke `json_to_c_sharp` manually and inspect the raw request/response. Set your credentials under the Inspector's Environment Variables panel before connecting.\n\n## Project structure",
  "bytes": 7428,
  "sha": "9c8c4ad3e69a0a87dba3636069f0c644c6a643aa2d4ce5473e13022a6033b08c",
  "repo_slug": "nice-one-code/noc.mcpserver",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_nice_one_code_noc_mcpserver_691d0842/readme"
}