{"capabilities":{"extendedAgentCard":false,"pushNotifications":false,"streaming":true},"defaultInputModes":["text/plain","application/json"],"defaultOutputModes":["text/plain","application/json"],"description":"AI assistant for requirements engineering on Codebeamer: answers questions about requirements, tests and traceability, analyzes requirement quality and derives test conditions and test cases. Every request runs with the signed-in user's own Codebeamer permissions.","name":"Raiqon","provider":{"organization":"Raiqon","url":"https://raiqon.ai"},"securityRequirements":[{"schemes":{"oauth":{"list":[]}}}],"securitySchemes":{"oauth":{"oauth2SecurityScheme":{"description":"Sign in with your Codebeamer account (OAuth 2.1 authorization code with PKCE).","flows":{"authorizationCode":{"authorizationUrl":"https://mcp.dsdev.raiqon.ai/authorize","pkceRequired":true,"refreshUrl":"https://mcp.dsdev.raiqon.ai/token","scopes":{},"tokenUrl":"https://mcp.dsdev.raiqon.ai/token"}},"oauth2MetadataUrl":"https://mcp.dsdev.raiqon.ai/.well-known/oauth-authorization-server"}}},"skills":[{"description":"Answers questions about the user's Codebeamer requirements, tests and traceability in plain language, searching and analyzing the data itself. Send the question as a text part; messages with the same contextId continue the conversation. An optional data part {\"skill\": \"chat\", \"input\": {\"itemRevision\": {\"id\", \"version\"}, \"targetScopeFilter\": {...}}} focuses it on one item or scope. Returns an `answer` artifact: the text, plus a data part {\"contextItems\": [...]} with the items it used and their Codebeamer links.","examples":["Which requirements in the brake system project use vague wording?","What tests cover requirement 1080?"],"id":"chat","inputModes":["text/plain","application/json"],"name":"Ask Raiqon","outputModes":["text/plain","application/json"],"tags":["requirements","codebeamer","search","traceability"]},{"description":"Runs Raiqon's quality analyses on one requirement (weak words, AI review, classification, summary/description consistency, cross-item and traceability analysis, ...). Send a data part {\"skill\": \"analysis\", \"input\": AnalysisRequest}, e.g. {\"itemRevision\": {\"id\": \"1080\", \"version\": 3}, \"taskTypes\": [\"weak_words\", \"ai_review\"]}. Long-running: the task completes with a `result` artifact holding the findings.","examples":["{\"skill\": \"analysis\", \"input\": {\"itemRevision\": {\"id\": \"1080\", \"version\": 3}, \"taskTypes\": [\"weak_words\"]}}"],"id":"analysis","inputModes":["application/json"],"name":"Analyze a requirement","outputModes":["application/json"],"tags":["requirements","quality","analysis"]},{"description":"Derives test conditions from one requirement. Send a data part {\"skill\": \"test_conditions\", \"input\": {\"itemRevision\": {\"id\", \"version\"}}}. Long-running: the `result` artifact holds the conditions and the `jobId` that test_cases needs.","examples":["{\"skill\": \"test_conditions\", \"input\": {\"itemRevision\": {\"id\": \"1080\", \"version\": 3}}}"],"id":"test_conditions","inputModes":["application/json"],"name":"Derive test conditions","outputModes":["application/json"],"tags":["testing","requirements"]},{"description":"Generates test cases from (reviewed) test conditions. Send a data part {\"skill\": \"test_cases\", \"input\": {\"itemRevision\": {...}, \"planJobId\": \"<jobId of the test_conditions result>\", \"plan\": {\"testConditions\": [...]}}}. Long-running: the `result` artifact holds the test cases.","examples":[],"id":"test_cases","inputModes":["application/json"],"name":"Generate test cases","outputModes":["application/json"],"tags":["testing"]}],"supportedInterfaces":[{"protocolBinding":"JSONRPC","protocolVersion":"1.0","url":"https://mcp.dsdev.raiqon.ai/a2a/v1"},{"protocolBinding":"JSONRPC","protocolVersion":"0.3","url":"https://mcp.dsdev.raiqon.ai/a2a/v0.3"}],"version":"0.1.0"}