feat: support MCP elicitation and rebuild release

This commit is contained in:
shiyue
2026-08-24 17:39:41 +08:00
parent dd233a40e8
commit bd20a79d4b
69 changed files with 8978 additions and 13 deletions

View File

@@ -0,0 +1,28 @@
'use strict';
// 仅用于离线回归:模拟官方 gitea-mcp 的 JSONL initialize 行为。
const readline = require('readline');
const mode = String(process.env.GITEA_MCP_FIXTURE_MODE || 'success');
const reader = readline.createInterface({ input: process.stdin });
reader.on('line', (line) => {
let request;
try { request = JSON.parse(line); } catch { return; }
if (request.method !== 'initialize') return;
if (mode === 'timeout') return;
if (mode === 'exit') process.exit(17);
if (mode === 'error') {
process.stdout.write(`${JSON.stringify({
jsonrpc: '2.0', id: request.id, error: { code: -32000, message: 'fixture handshake failed' },
})}\n`);
return;
}
process.stdout.write(`${JSON.stringify({
jsonrpc: '2.0', id: request.id,
result: {
protocolVersion: '2024-11-05',
capabilities: { tools: {} },
serverInfo: { name: 'fixture-gitea-mcp', version: '0.0.0' },
},
})}\n`);
});