mcp-app
GitHub MCP App Demo (json-render + LLM)
An MCP App that fetches public GitHub repositories and uses an LLM to generate a json-render UI spec.
Project layout
mcp-app/
├── server/ # MCP server (tools, GitHub API, LLM spec generation)
│ ├── main.ts # entry — HTTP / stdio transport
│ ├── server.ts # tool + resource registration
│ ├── github.ts # GitHub REST API
│ ├── llm-spec.ts # DeepSeek / OpenAI → json-render spec
│ ├── catalog.ts # json-render component catalog
│ └── types.ts
├── app/ # MCP App UI (iframe)
│ ├── index.html
│ ├── main.tsx
│ └── registry.tsx
├── dist/ # build output (index.html bundle)
└── .envFlow
GitHub API → repos data → LLM + catalog.prompt() → json-render Spec → RendererSetup
npm install
cp .env.example .env
# Set DEEPSEEK_API_KEY and DEEPSEEK_MODEL in .env
npm run build
npm startServer listens at http://localhost:3001/mcp.
Test with basic-host
cd /Users/CYKUO/Codes/ext-apps/examples/basic-host && npm startOpen http://localhost:8080 → http://localhost:3001/mcp → pick a tool → Call Tool.
Tools
All tools require DEEPSEEK_API_KEY and use the LLM to generate the UI spec. The layout parameter (table or cards) is passed as a hint to the LLM.
list-repos
Parameter | Description |
| GitHub user (default: |
| Max repos to fetch (default: 10) |
|
|
| Natural language UI instructions for the LLM |
get-user-profile
Parameter | Description |
| GitHub user (default: |
|
|
| Natural language UI instructions for the LLM |
Returns profile fields such as bio, followers, following, public repo count, location, and company.
list-repo-issues
Parameter | Description |
| Repo owner (default: |
| Repo name (default: |
|
|
| Max issues to fetch (default: 10) |
|
|
| Natural language UI instructions for the LLM |
Pull requests are filtered out; only issues are returned.
Environment Variables
Variable | Required | Description |
| Yes | DeepSeek API key |
| No | e.g. |
| No | Default |
| No | Higher GitHub rate limits |
| No | Default |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/drjkuo/mcp-app'
If you have feedback or need assistance with the MCP directory API, please join our Discord server